Skip to content

Pedagogy: create 60_linear_algebra_2/230_QR_Method_Eigenvalues.ipynb with detailed explanations #378

@kwlee2025cpp

Description

@kwlee2025cpp

Add a new notebook 60_linear_algebra_2/230_QR_Method_Eigenvalues.ipynb between Power Method (200) and Jacobi (240), covering the QR algorithm for general (possibly non-symmetric, possibly complex-eigenvalued) matrices.

Code scope (Scope B from IMPROVEMENTS.md)

  • Basic QR iteration: Aₖ₊₁ = Rₖ Qₖ with shift-free demonstration.
  • Real Schur form with 2×2 diagonal blocks for complex conjugate eigenpairs.
  • Slider over iteration step + Hinton diagram of Aₖ showing the upper-triangularization.

Explanation scope (the deliverable that gates the merge)

The advanced-topic-policy gating criterion is teachability. Author the following:

  • Why QR works — informal: each iteration is a similarity transformation that systematically pushes mass into the upper triangle. Connection to Power Method — QR is "subspace iteration" applied to all columns at once.
  • Why complex eigenvalues become 2×2 real blocks — a real matrix cannot have a single real diagonal entry equal to a complex eigenvalue; the conjugate pair lives as the eigenvalues of a 2×2 sub-block.
  • What "real Schur form" means vs the complex Schur form, and why textbooks usually show the real version.
  • Convergence behavior — geometric rate driven by eigenvalue ratio; why a shift accelerates it (mention without implementing if Scope B).
  • Where this sits in the curriculum — reading Power Method (200) as "find one eigenvector" and Jacobi (240) as "diagonalize a symmetric matrix"; QR fills the gap of "find all eigenvalues of a general matrix".

Note on policy

This is a brand-new notebook on an advanced topic. Per feedback_nmisp_teach_what_you_know.md, brand-new advanced material is mergeable only if the explanatory scaffolding is part of the same PR — not deferred to "we'll write the prose later."

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions