Cauchy-Riemann Equations & Harmonic Conjugates
Statement
If a complex function \( f(z) = u(x,y) + i\,v(x,y) \) is differentiable at a point \( z_0 = x_0 + i y_0 \) of an open set — meaning the single limit \( f'(z_0) = \lim_{\Delta z \to 0} \left[ f(z_0 + \Delta z) - f(z_0) \right] / \Delta z \) exists independently of the path of approach in the complex plane — then the real functions \( u \) and \( v \) must satisfy the Cauchy–Riemann equations \( \partial u/\partial x = \partial v/\partial y \) and \( \partial u/\partial y = -\,\partial v/\partial x \). If \( f \) is analytic (differentiable throughout an open region), then \( u \) and \( v \) are each harmonic, \( \nabla^2 u = \nabla^2 v = 0 \), and each is the harmonic conjugate of the other, with mutually orthogonal level curves wherever \( f'(z) \neq 0 \).
Why it matters
This is the hinge on which all of complex analysis turns for physics. A single innocuous-looking requirement — that one limit not depend on direction — forces a rigid coupling between two real functions, and that coupling in turn forces both to obey Laplace's equation. Every two-dimensional electrostatic potential, steady temperature field, and irrotational incompressible flow is the real part of some analytic function; the imaginary part is delivered free of charge as field lines, heat-flux lines, or streamlines. The entire machinery of conformal mapping — solving boundary-value problems by geometrically deforming the domain — rests on this result.
Conceptually, the Cauchy–Riemann equations are a symmetry statement: they say that \( f \) depends on the combination \( z = x + iy \) alone and not on \( \bar{z} = x - iy \). Restricting a function of two real variables to one complex variable is what buys the miraculous rigidity of analytic functions — infinite differentiability, power-series representation, and values in a region dictated by values on its boundary.
Assumptions
Derivation
Result
Reading. Complex differentiability is not a mild smoothness condition — it is a system of coupled first-order partial differential equations. The real and imaginary parts of an analytic function cannot be chosen independently: each determines the other up to an additive constant (on a simply connected domain), each solves Laplace's equation, and their level sets form two mutually orthogonal families of curves. The derivative itself can be read off either family: \( f'(z) = u_x + i v_x = v_y - i u_y \).
Units check. The result is a structural identity, so it must be dimensionally homogeneous whatever units \( u \) and \( v \) carry. If \( u \) is a potential in volts and \( x, y \) are in metres, every term in each Cauchy–Riemann equation has units \( \mathrm{V\,m^{-1}} \) — consistent only if \( v \) also carries volts, which is exactly why the conjugate stream function of an electrostatic potential is itself measured in volts. In \( \nabla^2 u = 0 \) every term carries \( \mathrm{V\,m^{-2}} \). Consistent.
Limiting cases
- Constant function. \( f = c \): all four partials vanish, Cauchy–Riemann holds trivially, both level-set families degenerate — the orthogonality statement is empty, consistent with \( f' = 0 \) everywhere.
- Real-valued analytic \( f \). If \( v \equiv 0 \) then Cauchy–Riemann forces \( u_x = u_y = 0 \), so \( f \) is constant on each connected component: an analytic function cannot take purely real values on an open set without freezing. Rigidity in its purest form.
- Linear map \( f(z) = (a + ib) z \). Here \( u = ax - by \), \( v = bx + ay \); Cauchy–Riemann reduces to the statement that the Jacobian is a rotation–scaling matrix \( \begin{pmatrix} a & -b \\ b & a \end{pmatrix} \) — the local model of every analytic map near a point with \( f' \neq 0 \).
- Polar coordinates. With \( z = r e^{i\theta} \) the chain rule converts the system to \( \partial u/\partial r = (1/r)\, \partial v/\partial \theta \), \( \partial v/\partial r = -(1/r)\, \partial u/\partial \theta \), the natural form for wedges, annuli and point sources.
- One dimension. Collapse \( y \)-dependence entirely: the system reduces to ordinary differentiability on the real line, where path independence is a two-sided limit and buys no rigidity at all.
Breaks when
- Cauchy–Riemann at a single point, partials not continuous. The equations at one isolated point do not imply differentiability there: \( f(z) = e^{-1/z^4} \) (with \( f(0) = 0 \)) satisfies Cauchy–Riemann at the origin yet blows up along the ray \( z = r e^{i\pi/4} \), where \( -1/z^4 = +1/r^4 \). Likewise \( f(z) = |z|^2 = x^2 + y^2 \) satisfies Cauchy–Riemann only at \( z = 0 \), is differentiable there, but is analytic nowhere — differentiability at a point and analyticity on a neighbourhood are different animals.
- Multiply connected domains. The conjugate of a harmonic function need not exist as a single-valued function: on the annulus \( 1 < |z| < 2 \), \( u = \ln |z| \) is harmonic but any conjugate must be \( \theta + \text{const} \), which jumps by \( 2\pi \) per circuit. The local construction survives; the global function does not. Physically this is circulation: a vortex flow has a well-defined velocity field but no single-valued stream-potential pair.
- Boundary points and non-open sets. On the boundary of a region there is no full neighbourhood of directions for \( \Delta z \); the derivation's very first move fails, and "analytic on the closed disc" must be parsed as analytic on an open set containing it.
- Genuinely two-real-variable functions. Anything with explicit \( \bar{z} \)-dependence — \( \bar{z} \), \( |z| \), \( \mathrm{Re}\, z \) — violates Cauchy–Riemann on every open set; no amount of real-variable smoothness rescues complex differentiability.
Failure modes
- The dropped minus sign. Writing \( u_y = v_x \) instead of \( u_y = -v_x \). The sign is what encodes the \( 90^\circ \) rotation \( i \); with the wrong sign the "conjugate" of \( x^2 - y^2 \) comes out as \( -2xy \), and the check \( f = u + iv \stackrel{?}{=} z^2 \) fails.
- Believing Cauchy–Riemann alone implies differentiability. The converse needs continuity of the partials (Step 5). Checking the two equations at a point and declaring \( f \) analytic there is the single most common logical error in exam solutions.
- Verifying the equations at one point and claiming analyticity. \( f(z) = |z|^2 \) passes Cauchy–Riemann at the origin; it is differentiable at that one point and analytic nowhere. Analyticity requires the equations on an open set.
- Integrating for the conjugate and adding a constant instead of a function. After \( v = \int u_x \, dy \), the "constant" of integration is an arbitrary function \( g(x) \), pinned down by the second Cauchy–Riemann equation. Writing \( +C \) prematurely loses terms.
- Forgetting the \( 1/r \) factors in polar form. Copying the Cartesian equations verbatim into \( (r, \theta) \) makes \( \ln z \) fail the test it should pass.
- Treating \( f'(z) \) as \( \partial f/\partial x \) plus \( \partial f/\partial y \). The derivative is \( f' = u_x + i v_x \) (or equivalently \( v_y - i u_y \)) — mixing the two evaluations produces expressions that are not even well defined.
Discussion
The physical reading of the conjugate pair is best seen through the complex potential of two-dimensional field theory. For an irrotational, incompressible flow with velocity \( \vec{V} = (V_x, V_y) \), irrotationality gives \( \vec{V} = \nabla \phi \) and incompressibility gives \( \nabla \cdot \vec{V} = 0 \), i.e. \( \nabla^2 \phi = 0 \); the stream function \( \psi \) defined by \( V_x = \partial \psi/\partial y \), \( V_y = -\partial \psi/\partial x \) automatically satisfies exactly the Cauchy–Riemann equations with \( \phi \). So \( W(z) = \phi + i\psi \) is analytic, and \( dW/dz = V_x - i V_y \) is the (conjugated) velocity. In electrostatics the same structure holds with \( \phi \to \) potential and \( \psi \to \) flux function: equipotentials and field lines are the orthogonal families of Step 9. The two homogeneous conditions of the physics — curl-free and divergence-free — are the two Cauchy–Riemann equations in different clothes.
The result also explains why conformal mapping solves boundary-value problems. An analytic map \( w = g(z) \) with \( g' \neq 0 \) acts locally as a rotation and uniform scaling (the Jacobian structure in the limiting cases above), so it preserves angles — and, crucially, it maps harmonic functions to harmonic functions: if \( \nabla^2 U = 0 \) in the \( w \)-plane, then \( U(g(z)) \) is the real part of an analytic composition and hence harmonic in the \( z \)-plane. One hard geometry (an aerofoil, a wedge, a capacitor edge) is traded for an easy one (a disc, a half-plane) without touching the field equation. This is the working link to the separation-of-variables solutions of Laplace's equation: separation supplies solutions in symmetric domains; conformal maps export them everywhere else.
On the symmetry thread: the deepest reading is that analyticity is a chirality condition. Two real functions on the plane carry a priori four first-derivative degrees of freedom; Cauchy–Riemann kills exactly two, the two that would let \( f \) sense the orientation-reversing combination \( \bar{z} \). Rotational symmetry of the plane splits derivatives into pieces that transform with charge \( +1 \) and \( -1 \) under \( z \to e^{i\alpha} z \); analytic functions are the ones built purely from the \( +1 \) sector. This is why analytic functions compose, why their zeros have integer winding numbers, and why they are the natural kinematics of two-dimensional conformal field theory, where fields split into holomorphic and antiholomorphic sectors.
In Wirtinger form, define \( \dfrac{\partial}{\partial \bar{z}} = \dfrac{1}{2}\left( \dfrac{\partial}{\partial x} + i \dfrac{\partial}{\partial y} \right) \) and \( \dfrac{\partial}{\partial z} = \dfrac{1}{2}\left( \dfrac{\partial}{\partial x} - i \dfrac{\partial}{\partial y} \right) \). A direct expansion shows \( \partial f/\partial \bar{z} = \frac{1}{2}\left[ (u_x - v_y) + i (v_x + u_y) \right] \), so the Cauchy–Riemann system is the single complex equation \( \partial f / \partial \bar{z} = 0 \), and the Laplacian factorises as \( \nabla^2 = 4\, \partial_z \partial_{\bar z} \) — harmonicity of \( u \) and \( v \) drops out in one line. The factorisation of a second-order elliptic operator into two first-order operators is the two-dimensional shadow of a pattern that recurs throughout field theory: Dirac operators squaring to Laplacians, self-duality equations implying the full Yang–Mills equations, holomorphicity as a BPS-type first-order condition whose solutions automatically solve the second-order equations of motion.
Common misconceptions. (i) "Cauchy–Riemann is a smoothness condition" — it is an algebraic constraint among derivatives; \( f \) can be real-analytically smooth in \( (x,y) \) and satisfy it nowhere (\( \bar{z} \)). (ii) "Any two harmonic functions form an analytic \( f = u + iv \)" — false: \( u \) and \( v = u \) are both harmonic for harmonic \( u \), but \( u + iu \) is analytic only if \( u \) is constant; conjugacy is an ordered, paired relation, and the conjugate of \( u \) is unique only up to an additive constant. (iii) "If \( v \) is the conjugate of \( u \), then \( u \) is the conjugate of \( v \)" — the pairing is antisymmetric: the conjugate of \( v \) is \( -u \), since \( i f = -v + i u \) is the analytic function with real part \( -v \).
Worked examples
Example 1 — electrostatic quadrupole-like potential near a right-angle corner. A two-dimensional potential in a charge-free region is \( \Phi(x,y) = A\left( x^2 - y^2 \right) \) with \( A = 5.0 \times 10^{2}\ \mathrm{V\,m^{-2}} \). Verify it is harmonic, construct its conjugate flux function \( \Psi \), identify the complex potential, and find the field at \( P = (0.10\ \mathrm{m},\ 0.050\ \mathrm{m}) \).
Reading. The harmonic potential and its conjugate assemble into the single analytic object \( A z^2 \); the field strength grows linearly with distance from the corner, and equipotential hyperbolae \( x^2 - y^2 = \text{const} \) cross flux hyperbolae \( xy = \text{const} \) at right angles everywhere except the stagnation point \( z = 0 \), where \( \Omega'(0) = 0 \).
Units check. \( [A z^2] = \mathrm{V\,m^{-2}} \cdot \mathrm{m^2} = \mathrm{V} \); the gradient delivers \( \mathrm{V\,m^{-1}} \). Consistent.
Example 2 — stagnation-point flow. A steady, incompressible, irrotational flow has complex potential \( W(z) = \tfrac{1}{2} k z^2 \) with strain rate \( k = 2.0\ \mathrm{s^{-1}} \). Extract \( \phi \) and \( \psi \), verify the Cauchy–Riemann equations, and find the velocity at \( Q = (0.30\ \mathrm{m},\ 0.20\ \mathrm{m}) \).
Reading. The fluid at \( Q \) slides along the hyperbolic streamline toward the \( x \)-axis and away from the \( y \)-axis; \( \phi \) and \( \psi \) are conjugate harmonics, so equipotential lines and streamlines tile the quadrant as an orthogonal curvilinear grid.
Units check. \( [W] = \mathrm{s^{-1}} \cdot \mathrm{m^2} = \mathrm{m^2\,s^{-1}} \), the correct units for both velocity potential and stream function; \( dW/dz \) carries \( \mathrm{m^2\,s^{-1}} / \mathrm{m} = \mathrm{m\,s^{-1}} \). Consistent.
Problems
- Verify by explicit computation that \( f(z) = z^3 \) satisfies the Cauchy–Riemann equations everywhere, and evaluate \( f'(z) \) from \( u_x + i v_x \) at \( z = 2 + i \).
Solution
Expand: \( z^3 = (x+iy)^3 = x^3 - 3xy^2 + i\left( 3x^2 y - y^3 \right) \), so \( u = x^3 - 3xy^2 \), \( v = 3x^2 y - y^3 \). Partials: \( u_x = 3x^2 - 3y^2 \), \( v_y = 3x^2 - 3y^2 \) — equal. \( u_y = -6xy \), \( -v_x = -6xy \) — equal. Cauchy–Riemann holds for all \( (x,y) \), and all partials are polynomials, hence continuous, so \( f \) is entire. Derivative: \( f' = u_x + i v_x = 3x^2 - 3y^2 + 6ixy = 3(x + iy)^2 = 3z^2 \). At \( z = 2 + i \): \( 3(2+i)^2 = 3(4 + 4i - 1) = 9 + 12i \). Check against the direct rule \( f' = 3z^2 \): identical. - Show that \( f(z) = \bar{z} = x - iy \) is differentiable nowhere, even though \( u \) and \( v \) are smooth everywhere. Then compute the path-dependent "derivative" along the real and imaginary axes at \( z = 0 \) to see the failure concretely.
Solution
Here \( u = x \), \( v = -y \), so \( u_x = 1 \), \( v_y = -1 \): the first Cauchy–Riemann equation reads \( 1 = -1 \), false at every point, so \( f \) is differentiable nowhere despite \( u, v \in C^\infty \). Concretely at \( z = 0 \): along the real axis, \( \Delta z = h \) gives \( \bar{h}/h = h/h = 1 \); along the imaginary axis, \( \Delta z = ik \) gives \( \overline{ik}/(ik) = (-ik)/(ik) = -1 \). The directional limits are \( +1 \) and \( -1 \), so no single limit exists. (In Wirtinger language, \( \partial \bar{z}/\partial \bar{z} = 1 \neq 0 \): the function lives entirely in the anti-holomorphic sector.) - Given the harmonic function \( u(x,y) = x^3 - 3xy^2 \), construct its harmonic conjugate \( v \) with \( v(0,0) = 0 \), identify \( f = u + iv \) as a function of \( z \), and evaluate \( f \) at \( z = 1 + i \).
Solution
Harmonicity: \( u_{xx} = 6x \), \( u_{yy} = -6x \), sum zero. Conjugate: \( v_y = u_x = 3x^2 - 3y^2 \Rightarrow v = 3x^2 y - y^3 + g(x) \). Then \( v_x = 6xy + g'(x) \stackrel{!}{=} -u_y = 6xy \Rightarrow g'(x) = 0 \), and \( v(0,0) = 0 \) fixes \( g = 0 \). So \( v = 3x^2 y - y^3 \) and \( f = x^3 - 3xy^2 + i(3x^2 y - y^3) = z^3 \). At \( z = 1 + i \): \( (1+i)^2 = 2i \), so \( (1+i)^3 = (1+i)(2i) = 2i + 2i^2 = -2 + 2i \). Hence \( f(1+i) = -2 + 2i \); as a check, \( x = y = 1 \) gives \( u = 1 - 3 = -2 \), \( v = 3 - 1 = 2 \). Consistent. - A steady two-dimensional temperature field in a copper plate (thermal conductivity \( \kappa = 400\ \mathrm{W\,m^{-1}\,K^{-1}} \)) is \( T(x,y) = T_0 + \beta \left( x^2 - y^2 \right) \) with \( T_0 = 300\ \mathrm{K} \) and \( \beta = 25\ \mathrm{K\,m^{-2}} \). (a) Verify \( T \) is a legitimate steady-state field (harmonic). (b) Find its conjugate \( H(x,y) \) and explain what its level curves are. (c) Compute the heat-flux density \( \vec{q} = -\kappa \nabla T \) at \( (0.20\ \mathrm{m},\ 0.10\ \mathrm{m}) \), giving magnitude and direction.
Solution
(a) \( T_{xx} = 2\beta \), \( T_{yy} = -2\beta \), so \( \nabla^2 T = 0 \): steady conduction with no sources. (b) \( H_y = T_x = 2\beta x \Rightarrow H = 2\beta x y + g(x) \); \( H_x = 2\beta y + g' \stackrel{!}{=} -T_y = 2\beta y \Rightarrow g' = 0 \), so \( H = 2\beta x y \) (take \( g = 0 \)). Since \( \nabla T \cdot \nabla H = 0 \), the level curves of \( H \) are everywhere parallel to \( \vec{q} \): they are the heat-flow lines, and equal increments of \( H \) between adjacent flux lines carry equal heat currents. (c) \( \nabla T = (2\beta x, -2\beta y) = \left( 2 \cdot 25 \cdot 0.20,\ -2 \cdot 25 \cdot 0.10 \right) = (10,\ -5)\ \mathrm{K\,m^{-1}} \). Then \( \vec{q} = -\kappa \nabla T = ( -400 \cdot 10,\ 400 \cdot 5 ) = (-4000,\ +2000)\ \mathrm{W\,m^{-2}} \). Magnitude \( |\vec{q}| = \sqrt{4000^2 + 2000^2} = 2000\sqrt{5} \approx 4.5 \times 10^{3}\ \mathrm{W\,m^{-2}} \), directed at \( \arctan(2000 / 4000) \approx 26.6^\circ \) above the negative \( x \)-axis, i.e. \( 153.4^\circ \) from \( +x \). It lies along the flux line \( H = 2 \cdot 25 \cdot 0.20 \cdot 0.10 = 1.0\ \mathrm{K} \) through the point. - (a) Starting from the Cartesian Cauchy–Riemann equations and the chain rule with \( x = r\cos\theta \), \( y = r\sin\theta \), derive the polar form \( \dfrac{\partial u}{\partial r} = \dfrac{1}{r} \dfrac{\partial v}{\partial \theta} \), \( \dfrac{\partial v}{\partial r} = -\dfrac{1}{r} \dfrac{\partial u}{\partial \theta} \). (b) Apply them to \( f(z) = \mathrm{Log}\, z = \ln r + i\theta \) on \( r > 0 \), \( -\pi < \theta < \pi \), and use \( f'(z) = e^{-i\theta} \left( u_r + i v_r \right) \) to evaluate \( f' \) numerically at \( z = 2 e^{i\pi/4} \).
Solution
(a) Chain rule: \( u_r = u_x \cos\theta + u_y \sin\theta \) and \( v_\theta = -v_x\, r \sin\theta + v_y\, r\cos\theta \). Substitute Cauchy–Riemann (\( v_y = u_x \), \( v_x = -u_y \)): \( v_\theta = r\left( u_y \sin\theta + u_x \cos\theta \right) = r\, u_r \), giving \( u_r = (1/r) v_\theta \). Similarly \( v_r = v_x \cos\theta + v_y \sin\theta = -u_y \cos\theta + u_x \sin\theta \) while \( u_\theta = -u_x\, r\sin\theta + u_y\, r\cos\theta = -r\, v_r \), giving \( v_r = -(1/r) u_\theta \). (b) For \( u = \ln r \), \( v = \theta \): \( u_r = 1/r \), \( v_\theta = 1 \), so \( u_r = (1/r)v_\theta \) holds; \( v_r = 0 \), \( u_\theta = 0 \), so the second holds too — \( \mathrm{Log}\, z \) is analytic on the cut plane. Derivative: \( f' = e^{-i\theta}\left( u_r + i v_r \right) = e^{-i\theta}/r = 1/z \). At \( z = 2 e^{i\pi/4} \): \( f' = \tfrac{1}{2} e^{-i\pi/4} = \tfrac{1}{2}\left( \cos\tfrac{\pi}{4} - i \sin\tfrac{\pi}{4} \right) = \tfrac{\sqrt{2}}{4}(1 - i) \approx 0.354 - 0.354\, i \). Note the conjugate \( v = \theta \) is single-valued only because the domain excludes a branch cut — on the full punctured plane \( \ln r \) has no single-valued conjugate, the canonical failure of global conjugacy on a multiply connected domain.