Skip to the tool

🌈 Complex Function Landscape 3D

🌈 Complex Function Landscape 3D

Type any complex function f(z) and see it as a 3D landscape: height is |f(z)| or Re/Im, colour is the phase (domain colouring). Zeros become valleys, poles become towers. Evaluate f at any point, locate zeros numerically and measure the winding number around a contour (argument principle).

drag to orbit · scroll / pinch to zoom · double-click resets

🔍 Evaluate & argument principle

f(z₀)—
|f(z₀)| and arg f(z₀)—
f′(z₀)—
Winding number of f around circle—
Zeros found in view (Newton)—
How this works — domain colouring and the argument principle

A complex function maps a 2D plane to a 2D plane, so we cannot draw its graph directly. This landscape uses height for one real number and colour for another: the hue is the argument (phase) of f(z) — red at 0, yellow at 60°, green 120°, cyan 180°, blue 240°, magenta 300° — and the height is log(1 + |f|) by default, so zeros sink to the floor and poles shoot up (clipped).

  • Around a simple zero the colours cycle once red → yellow → green → blue anticlockwise; around a pole they cycle the opposite way. A zero or pole of order n cycles n times.
  • Argument principle: for a closed curve, the number of times f(z) winds around 0 equals (zeros − poles) inside, counted with multiplicity: N − P = (1/2πi) ∮ f′/f dz. The tool walks 2,000 points round the circle and sums the phase changes of f.
  • Zeros are found by Newton's method zₙ₊₁ = zₙ − f(zₙ)/f′(zₙ) from a 12×12 grid of starting points, keeping distinct converged roots.

Supported: + − * / ^, i, pi, e, and sin cos tan sinh cosh tanh exp log sqrt conj abs re im. z^n uses the principal branch, and so do log and sqrt — their branch cut along the negative real axis shows as a sudden colour seam. Worked example: f(z) = (z² − 1)/(z² + 1) has zeros at ±1 and poles at ±i. The default circle (radius 1.2 about 0.5 + 0.5i) encloses the zero at 1 and the pole at i, so the winding number is 1 − 1 = 0; shrink the radius to 0.6 and move z₀ to 1 to enclose only the zero and get 1.

More in Mathematics

All 84 tools in Mathematics →