GraphMath

Givens rotations

QR factorization by coordinate-plane rotations

How can rotations eliminate below-diagonal entries without destroying previous zeros?

Givens QR factorization transforms A into an upper-triangular matrix R by repeated left multiplication with rotation matrices. Each rotation acts only in one coordinate plane, eliminates one below-diagonal entry and preserves completed columns. The accumulated rotation product gives R = GcumA and Q = Gcum⁻¹ = Gcumᵀ.

Key ideas

A Givens rotation changes only two coordinate directions, so it can target one matrix entry while leaving most of the matrix unchanged.

  • A Givens matrix is the identity except for a 2×2 rotation block in a chosen coordinate plane
  • The rotation plane Pₖᵢ = span{eₖ, eᵢ} is changed, while its orthogonal complement is fixed
  • Left multiplication by G modifies only the pivot row and the target row of A
  • The target entry is eliminated by choosing c = u/ρ and s = t/ρ, where ρ = √(u² + t²)
  • Previously created zeros are preserved because earlier completed columns have no component in the current rotation plane
  • Different elimination orders within one column can give different intermediate matrices, but the completed column of R is unique up to sign

The chapter then compares the rotation-based path to Gram-Schmidt, using the same numerical matrix.

Why does a Givens rotation preserve earlier zeros?

After earlier columns are completed, their entries in the current pivot and target rows are already zero. Therefore those column vectors have no component in the current rotation plane, so the new rotation leaves them unchanged.

Related chapters

Examples with visualizations

Givens rotations as solid transformed cubes

Stepwise rotations transforming A into R

Animated Givens rotation algorithm showing stepwise coordinate-plane rotations that transform A into R

Givens rotations as transparent transformed cubes

Same matrix, with overlapping faces visible during the rotations

Animated transparent-cube Givens rotation algorithm showing the same QR factorization with overlapping faces visible

Chapter contents

The PDF is a single document. The page links below are best-effort: most browsers support them, but some viewers may ignore the page hint.

Topic Pages
Givens rotation matrix 1–3
Algorithm description 3–7
Elimination order 7–9
Elimination order within column: geometric comparison 9–12
Comparison with Gram-Schmidt algorithm 12–13
Numerical example 13–15
Rotation matrices visualized 16–17
Visual comparison between GS orthogonalization & Givens rotation 17–18

Why use Givens rotations instead of Gram-Schmidt?

Givens rotations eliminate entries through orthogonal transformations, so they preserve lengths and tend to be numerically stable. They are especially useful when the matrix has structure or sparsity, because each rotation changes only two rows.

Was this chapter helpful?

Quick feedback helps us improve the site.