Mathematica makes it very easy to to plot the contour lines for a function of two real variables using ContourPlot
. It also makes it very easy to plot the streamlines of vector fields using Stream Plot
. However, I need to plot "contour lines" which can not come from either method.
Simply put, a "ridge system" is like a vector field, but instead of associating a vector based at every point on the plane, we associate a "line," or "direction," or "unoriented vector." Ridge lines kind of look like stream line plots, but where the stream lines are not "directed." In fact, there is in general no way to "direct" the ridge lines in a consistent manner, so they can't come from the stream lines of any vector field. Three examples are below.
Now let me describe what I would like to do:
- I would like to start with a complex function $f(z)$ (where $z, f(z) \in \mathbb{C}$). Say that $f(z) = r e^{i \theta}$.
- Then I would like to draw the ridge line at $z$ corresponding to the directions $\pm e^{- i \theta/2}$.
Bill Thurston seems to have done this in his answer here, picture below (but he doesn't say how). Ignore the red lines and just look at the blue lines:
My goal is to be able to take a complex function $f(z)$ and make an image similar to the one above. What functions in Mathematica can I use to do this?