Visual Tools
Calculators
Tables
Mathematical Keyboard
Converters
Other Tools


Complex Eigenvalues in 2D


Linear Algebra·Complex eigenvaluesNo real eigenvector, so x₀ is never just scaled: it is rotated by θ and scaled by r = |λ| each step, in the skewed basis of P. A = P C P⁻¹, C = r·R(θ).
Re vIm v12345678A⁸x₀x₀
x₀=(2, 0.5)
A⁸x₀=(−0.13, 1.05)
Orbit xₖ = Aᵏ x₀k = 8.00 of 8
k = 8.00
steps8

A rotation in a skewed basis

r = 1 · θ = 60°

Not a rotation matrix, but det = 1 and trace = 1 = 2 cos 60°: the eigenvalues are e^{±i·60°}. The orbit runs round an ellipse, six steps to a lap, because A = P R(60°) P⁻¹ with a non-orthogonal P: a rotation of a circle, seen through P.
Learn more about rotations and ellipses · what complex eigenvalues mean

Insight

The ellipse is the image under P of a circle. The dashed axes are the columns of P, Re v and Im v; in those coordinates A is exactly the 60° rotation.

AMatrixedit the entries

A=
A = P · C · P⁻¹,   C = r·R(θ)
P
1.7300.870.87
C
0.5−0.870.870.5

04Livedrag x₀

λ0.5 ± 0.87ir = |λ| = √det1θ = arg λ60°steps per turn6det A1trace A1|x₀|2.06|Ax₀| / |x₀|1.176angle x₀ → Ax₀25.7°|Ax₀| / |x₀|0.513
r = 1: the orbit stays on its ellipse








Key Terms

Complex eigenvalues &mdash; for a real 2×22 \times 2 matrix, a conjugate pair λ=a±bi\lambda = a \pm bi with b0b \neq 0, occurring when tr2A<4detA\operatorname{tr}^2 A < 4\det A.

Modulus &mdash; r=λ=a2+b2=detAr = |\lambda| = \sqrt{a^2 + b^2} = \sqrt{\det A}, the scale factor per step.

Argument &mdash; θ=argλ\theta = \arg\lambda, the angle of rotation per step, with trA=2rcosθ\operatorname{tr} A = 2r\cos\theta.

Rotation-scaling matrix &mdash; C=(abba)=r(cosθsinθsinθcosθ)C = \begin{pmatrix} a & -b \\ b & a \end{pmatrix} = r\begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix}.

Rotation-scaling form &mdash; A=PCP1A = PCP^{-1} with P=(RevImv)P = \begin{pmatrix} \operatorname{Re}\mathbf{v} & \operatorname{Im}\mathbf{v} \end{pmatrix}, where v\mathbf{v} is a complex eigenvector for λ=abi\lambda = a - bi.

Orbit &mdash; the sequence x0,Ax0,A2x0,\mathbf{x}_0, A\mathbf{x}_0, A^2\mathbf{x}_0, \ldots; it spirals in for r<1r < 1, out for r>1r > 1, and runs round an ellipse for r=1r = 1.

Invariant ellipse &mdash; the image under PP of a circle; AA maps each such ellipse to the one rr times as large.

Spiral point &mdash; the origin, called a stable spiral for r<1r < 1, an unstable spiral for r>1r > 1, and a centre for r=1r = 1.

Getting Started

The canvas shows a draggable start vector x0\mathbf{x}_0 in orange, the orbit Akx0A^k\mathbf{x}_0 as blue dots numbered by step, a grey spiral tracing the continuous path between them, the purple invariant ellipse through x0\mathbf{x}_0, and two green dashed lines along the columns of PP, the real and imaginary parts of a complex eigenvector. The cyan arrow is the current point Akx0A^k\mathbf{x}_0 of the animation.

Try this sequence to build intuition:

• Start with Rotate 90°: four dots on a circle, one lap, P=IP = I
• Switch to Skewed rotation: the same 60° turn per step, but the circle has become an ellipse and the green axes are no longer perpendicular
• Press Play and watch the cyan arrow sweep the spiral continuously; the dots are where it lands at whole steps
• Choose Spiral in and Spiral out, then drag x0\mathbf{x}_0 around: the shape of the spiral never depends on where you start
• Edit an entry of AA in the matrix card until the determinant drops below tr2/4\operatorname{tr}^2/4; the eigenvalues turn real and the rotation disappears
• Move the steps slider to see more or fewer laps

Dragging the Start Vector

Every orbit is x0\mathbf{x}_0 followed by its images under AA, so dragging x0\mathbf{x}_0 redraws the whole orbit, the spiral and the ellipse at once.

Things to notice while dragging:

• The ellipse through x0\mathbf{x}_0 always has the same shape and tilt, only its size changes; it is the same circle seen through the same PP
• The number of steps per lap does not change: θ\theta belongs to AA, not to x0\mathbf{x}_0
• For r=1r = 1 every dot stays on the ellipse; for r1r \neq 1 the dots step from one ellipse to the next, each rr times the last
• Dragging x0\mathbf{x}_0 onto a green axis does nothing special: those are not eigenvectors, only the real and imaginary parts of one
• The live card's ratio Ax0/x0|A\mathbf{x}_0| / |\mathbf{x}_0| changes with position, because AA is not a pure scaling, but Akx0|A^k\mathbf{x}_0| still grows like rkr^k on average

The Orbit Animation

The animation moves the cyan arrow along the continuous curve x(k)=Akx0\mathbf{x}(k) = A^k\mathbf{x}_0 for real kk from 00 to the chosen number of steps.

The fractional powers are meaningful because of the rotation-scaling form: Ak=PrkR(kθ)P1A^k = P\,r^k R(k\theta)\,P^{-1} makes sense for any real kk, and the curve it traces is a logarithmic spiral seen through PP. The whole-number points on it are the orbit.

Play sweeps from k=0k = 0 to the end; Pause freezes it
• The step buttons jump one whole step at a time, landing exactly on the dots
• The scrubber sets any kk; the readout shows the current point
• The steps slider sets how many steps the orbit and spiral run, from 22 to 2424

Selecting a preset replays the animation from the start.

Preset Scenarios

Seven matrices in three groups.

On an ellipse (r=1r = 1) &mdash; Rotate 90° and Rotate 45° are plain rotations, four and eight steps to a lap; Skewed rotation is a 60° rotation in a sheared basis, whose orbit is an ellipse.

Spiral in (r<1r < 1) &mdash; Spiral in is 0.90.9 times a rotation by 36.9°36.9°; Skewed spiral in has r=0.866r = 0.866 and a tilted ellipse.

Spiral out (r>1r > 1) &mdash; Spiral out is λ=1.1±0.5i\lambda = 1.1 \pm 0.5i, modulus 1.211.21; Skewed spiral out is 1.151.15 times a 40°40° rotation in a sheared basis.

Selecting a preset loads its matrix, keeps your x0\mathbf{x}_0, and replays the animation.

A Plain Rotation

The simplest matrix with complex eigenvalues is a rotation. The frozen picture below is the 45° rotation applied to x0=(2,0.5)\mathbf{x}_0 = (2, 0.5) eight times: eight dots equally spaced round a circle, back to the start.

The eigenvalues are cos45°±isin45°\cos 45° \pm i\sin 45°, of modulus 11, and PP is the identity, so the invariant ellipse is a genuine circle.
Re vIm v12345678A⁸x₀x₀
45° rotation, frozen

Eight steps of x₀ = (2, 0.5) under the 45° rotation: eight dots equally spaced on a circle, back to the start. r = 1, θ = 45°, P = I, so the ellipse is a circle.

A rotation matrix R(θ)R(\theta) has trace 2cosθ2\cos\theta and determinant 11, so its eigenvalues are e±iθe^{\pm i\theta}: the angle of the eigenvalue is the angle of the rotation, and the modulus 11 says lengths are preserved. That is the case every other matrix with complex eigenvalues is secretly a copy of.

The picture also shows what an eigenvector would have to be and why none exists: a direction the rotation sends to itself. For θ\theta not a multiple of 180°180° there is no such direction in the real plane, and the complex eigenvectors (1,i)(1, \mp i) are the algebra's way of recording the missing ones.

A Rotation in a Skewed Basis

The frozen picture below is the skewed rotation preset, six steps of x0=(2,0.5)\mathbf{x}_0 = (2, 0.5): six dots on an ellipse, back to the start, exactly as for a 60° rotation, but the circle has been sheared.

The matrix (1.3661.7320.8660.366)\begin{pmatrix} 1.366 & -1.732 \\ 0.866 & -0.366 \end{pmatrix} does not look like a rotation. Its determinant is 11 and its trace is 1=2cos60°1 = 2\cos 60°, and that is enough.
Re vIm v123456A⁶x₀x₀
Skewed 60° rotation, frozen

Six steps of the skewed rotation: six dots on an ellipse and back to the start. det = 1 and trace = 1 give r = 1 and θ = 60° - a 60° rotation seen through P.

This is the general picture. The matrix is PR(60°)P1PR(60°)P^{-1} with P=(1.73200.8660.866)P = \begin{pmatrix} 1.732 & 0 \\ 0.866 & 0.866 \end{pmatrix}, so in the coordinates given by the columns of PP each step is a plain 60° turn. Standard coordinates see that turn through the lens of PP, which stretches the circle into an ellipse and tilts it.

The two dashed green lines are the columns of PP: the real and imaginary parts of a complex eigenvector. They are not eigenvectors themselves, and dragging x0\mathbf{x}_0 onto one does nothing special; they are the axes of the coordinate system in which AA is honest about being a rotation.

The Columns of P

The frozen picture below is the same skewed matrix with the orbit hidden: only x0\mathbf{x}_0, the ellipse through it, and the two columns of PP as green arrows with their lines.

The ellipse is the image under PP of the circle of radius P1x0|P^{-1}\mathbf{x}_0|, and the green arrows are where PP sends the standard basis vectors.
Re vIm vx₀
The columns of P, frozen

The same matrix with the orbit hidden: x₀, the invariant ellipse through it, and the two columns of P as green arrows - the real and imaginary parts of a complex eigenvector, (1.73, 0.87) and (0, 0.87).

The columns of PP come from a complex eigenvector v\mathbf{v} of λ=abi\lambda = a - bi, split as Rev\operatorname{Re}\mathbf{v} and Imv\operatorname{Im}\mathbf{v}. For the skewed rotation, v=(1.732,0.8660.866i)\mathbf{v} = (-1.732, -0.866 - 0.866i), and after flipping the sign so the real part points right, the columns are (1.732,0.866)(1.732, 0.866) and (0,0.866)(0, 0.866).

Any complex multiple of v\mathbf{v} is also an eigenvector, and each gives a different PP with a differently sized and rotated pair of columns, but the same family of ellipses. What is intrinsic is the ellipse shape, not the particular axes drawn.

Spiralling In

The frozen picture below is the spiral-in preset, 0.90.9 times a rotation by 36.9°36.9°, run for twelve steps from x0=(2,0.5)\mathbf{x}_0 = (2, 0.5). The dots turn by 36.9°36.9° each step and lose a tenth of their length, so the orbit winds into the origin along a logarithmic spiral.

With r=0.9r = 0.9 the length halves every 6.66.6 steps.
Re vIm v123456789A¹²x₀x₀
Spiral in, frozen

Twelve steps at r = 0.9, θ = 36.9°: each dot turned by 36.9° and a tenth shorter, winding into the origin. The length halves every 6.6 steps.

The eigenvalues 0.72±0.54i0.72 \pm 0.54i have modulus 0.90.9, inside the unit circle, and that alone decides the fate of every orbit: Akx0|A^k\mathbf{x}_0| is roughly 0.9kx00.9^k|\mathbf{x}_0|, so every start decays to zero while circling. In the language of dynamical systems the origin is a stable spiral point, and the system xk+1=Axk\mathbf{x}_{k+1} = A\mathbf{x}_k is a damped oscillation.

This is the discrete version of a spring with friction. The rotation is the oscillation, the modulus is the damping, and the same picture, with eigenvalues of negative real part instead of modulus below one, describes the continuous-time system x˙=Ax\dot{\mathbf{x}} = A\mathbf{x}.

Spiralling Out

The frozen picture below is the spiral-out preset, eigenvalues 1.1±0.5i1.1 \pm 0.5i of modulus 1.2081.208, run for eight steps from a shorter start x0=(1,0.25)\mathbf{x}_0 = (1, 0.25). The dots turn by 24.4°24.4° a step and grow by 21%, doubling in length every 3.73.7 steps.

The spiral leaves the picture; that is the point.
Re vIm v12345678A⁸x₀x₀
Spiral out, frozen

Eight steps from x₀ = (1, 0.25) at r = 1.208, θ = 24.4°: the orbit turns and grows by 21% a step, doubling every 3.7 steps, and leaves the picture.

Modulus above 11 makes the origin an unstable spiral. Every non-zero start, however small, is flung outward while rotating, and the growth is exponential in the step count. Between this preset and the previous one the only difference is rr; the pictures are the same spiral run in opposite directions.

The boundary case r=1r = 1 is neither stable nor unstable: orbits stay on their ellipses forever. In applications it is the case of sustained oscillation, and it is delicate, since the smallest change to the matrix tips it one way or the other.

A Skewed Spiral

The frozen picture below is the skewed spiral-in preset, λ=0.5±0.707i\lambda = 0.5 \pm 0.707i with r=0.866r = 0.866 and θ=54.7°\theta = 54.7°, run for ten steps. The orbit spirals in as before, but along tilted ellipses, because PP is not orthogonal.

Each dot lies on an ellipse 0.8660.866 times the size of the previous one, all of the same shape.
Re vIm v123456789A¹⁰x₀x₀
Skewed spiral in, frozen

Ten steps at r = 0.866, θ = 54.7° along tilted ellipses: the shape from P, the angle from θ, the shrinking from r - three independent facts in one picture.

Three separate things are visible here and worth separating. The shape and tilt of the ellipses come from PP, which comes from the eigenvector. The angle per step comes from θ\theta, which comes from the trace and determinant. The rate of shrinking comes from rr, which comes from the determinant alone. Change the basis and only the first changes; change the matrix's scale and only the last does.

That separation is what the rotation-scaling form buys. A matrix that looks like an arbitrary jumble of four numbers is a rotation by a known angle, a scaling by a known factor, and a fixed change of coordinates, and each of the three can be read off independently.

The Matrix Card

The four entries of AA are editable. Below them the card shows the rotation-scaling form: PP with the real and imaginary parts of a complex eigenvector as its columns, and CC with aa and ±b\pm b in the rotation pattern.

CC is the matrix of AA in the basis of the columns of PP: in those coordinates every step is a plain rotation by θ\theta and scaling by rr
PP is not unique; any complex multiple of the eigenvector gives another PP, and the tool picks the one with the real column pointing to the right
• When the edited matrix has real eigenvalues the card says so instead; there is then no CC, and the eigenvector tool is the right one to use

The presets are all matrices with complex eigenvalues. Shuffling entries by hand is the quickest way to see the boundary: the eigenvalues are complex exactly when tr2A<4detA\operatorname{tr}^2 A < 4\det A.

The Live Card

The live card reads the invariants off AA and the current x0\mathbf{x}_0.

λ=a±bi\lambda = a \pm bi, the eigenvalue pair
r=λ=detAr = |\lambda| = \sqrt{\det A} and θ=argλ\theta = \arg\lambda, with 360/θ360/\theta as the number of steps per full turn
detA\det A and trA\operatorname{tr} A, which determine rr and θ\theta between them
x0|\mathbf{x}_0|, the ratio Ax0/x0|A\mathbf{x}_0| / |\mathbf{x}_0| and the angle from x0\mathbf{x}_0 to Ax0A\mathbf{x}_0, which vary with position because the rotation is skewed
ANx0/x0|A^N\mathbf{x}_0| / |\mathbf{x}_0| after all NN steps, close to rNr^N
• A verdict line: on its ellipse, spiralling in with the number of steps to halve, or spiralling out with the number of steps to double

What Complex Eigenvalues Mean

A real 2×22 \times 2 matrix has complex eigenvalues when its characteristic polynomial λ2(trA)λ+detA\lambda^2 - (\operatorname{tr} A)\lambda + \det A has negative discriminant, that is when tr2A<4detA\operatorname{tr}^2 A < 4\det A. The roots are then a conjugate pair a±bia \pm bi, and there is no real vector that AA merely scales: every direction is turned.

What AA does instead is rotate and scale in a skewed coordinate system. Take a complex eigenvector v\mathbf{v} for λ=abi\lambda = a - bi and split it into real and imaginary parts, v=Rev+iImv\mathbf{v} = \operatorname{Re}\mathbf{v} + i\operatorname{Im}\mathbf{v}. Expanding Av=λvA\mathbf{v} = \lambda\mathbf{v} into real and imaginary parts gives

ARev=aRev+bImv,AImv=bRev+aImvA\operatorname{Re}\mathbf{v} = a\operatorname{Re}\mathbf{v} + b\operatorname{Im}\mathbf{v}, \qquad A\operatorname{Im}\mathbf{v} = -b\operatorname{Re}\mathbf{v} + a\operatorname{Im}\mathbf{v}


which is exactly AP=PCAP = PC for P=(Rev    Imv)P = (\operatorname{Re}\mathbf{v} \;\; \operatorname{Im}\mathbf{v}) and C=(abba)C = \begin{pmatrix} a & -b \\ b & a \end{pmatrix}. Since Rev\operatorname{Re}\mathbf{v} and Imv\operatorname{Im}\mathbf{v} are independent, PP is invertible and

A=PCP1,C=r(cosθsinθsinθcosθ)A = PCP^{-1}, \qquad C = r\begin{pmatrix} \cos\theta & -\sin\theta \\ \sin\theta & \cos\theta \end{pmatrix}


with r=a2+b2r = \sqrt{a^2 + b^2} and θ=arg(a+bi)\theta = \arg(a + bi). In the coordinates given by the columns of PP, one application of AA is a rotation by θ\theta followed by a scaling by rr. In standard coordinates the circles of that rotation become ellipses, the images of circles under PP, and the orbit of any x0\mathbf{x}_0 walks round its ellipse by θ\theta per step while the ellipse itself grows or shrinks by rr.

This is the real counterpart of diagonalization. Over C\mathbb{C} the matrix diagonalizes with λ\lambda and λˉ\bar\lambda on the diagonal; over R\mathbb{R} the best available form is the 2×22 \times 2 block CC, and the geometry is a spiral rather than a pair of stretch directions. For the general theory, see the complex eigenvalues theory page and the eigenvalues overview.

Reading r and θ from the Matrix

Two numbers determine the whole behaviour, and both come straight from the matrix.

detA=λλˉ=a2+b2=r2,trA=λ+λˉ=2a=2rcosθ\det A = \lambda\bar\lambda = a^2 + b^2 = r^2, \qquad \operatorname{tr} A = \lambda + \bar\lambda = 2a = 2r\cos\theta


So r=detAr = \sqrt{\det A} and cosθ=trA/(2detA)\cos\theta = \operatorname{tr} A / (2\sqrt{\det A}). A determinant of 11 means the orbit stays on its ellipse; larger means spiralling out, smaller means spiralling in. The trace then fixes the angle: trace 00 is a quarter turn per step, trace 2r\sqrt{2}\,r an eighth, trace rr a sixth, and a negative trace means more than a quarter turn.

Because trace and determinant are unchanged by a change of basis, so are rr and θ\theta: the skewed presets have exactly the same rotation angle and growth rate as their unskewed counterparts. Only the shape of the ellipse, carried by PP, is different.

The dynamical reading is the important one. For xk+1=Axk\mathbf{x}_{k+1} = A\mathbf{x}_k, complex eigenvalues mean oscillation, and rr decides whether the oscillation is damped (r<1r < 1), sustained (r=1r = 1) or growing (r>1r > 1). The same criterion, with λ|\lambda| in place of rr, governs every eigenvalue of every linear system.

Key Properties

Facts that hold for every real 2×22 \times 2 matrix with complex eigenvalues.

Conjugate pair: the eigenvalues are a±bia \pm bi, never a lone complex number
No real eigenvector: no line through the origin is mapped to itself
A=PCP1A = PCP^{-1} with CC a rotation-scaling and PP real and invertible
r=detAr = \sqrt{\det A}, always positive; detA>0\det A > 0 is necessary for complex eigenvalues
θ\theta satisfies cosθ=trA/2r\cos\theta = \operatorname{tr} A / 2r; the sign of θ\theta, the sense of rotation, comes from the choice of λ=abi\lambda = a - bi
Orbits lie on ellipses for r=1r = 1 and on spirals otherwise; the origin is a centre, a stable spiral or an unstable spiral
Powers: Ak=PrkR(kθ)P1A^k = P\,r^kR(k\theta)\,P^{-1}, so Ak=rkIA^k = r^kI when kθk\theta is a multiple of 360°360°
Rotation matrices are the case P=IP = I; every other case is a rotation in a skewed basis
Over C\mathbb{C} the matrix is diagonalizable with D=diag(λ,λˉ)D = \operatorname{diag}(\lambda, \bar\lambda); CC is the real form of that