Subsection 10.5.1 Additional homework
ΒΆHomework 10.5.1.1.
You may want to do a new "git pull" to update directory  Assignments .
In  Assignments/Week10/matlab you will find the files
- Givens_rotation.m: A function that computes a Givens' rotation from a \(2 \times 1 \) vector- x.
- Francis_Step.m: A function that performs a Francis Implicit QR Step with a tridiagonal matrix \(T \) (stored as the diagonal and subdiagonal of- T).
- Test_Francis_Step.m: A very rudimentary script that performs a few calls to the function- Francis_Step. Notice that our criteria for the routine being correct is that the matrix retains the correct eigenvalues.
With this,
- Investigate the convergence of the \((m,m-1) \) element of matrix - T1.
- Write a function - function T = Spectral_Decomposition_Lambda( T ) That returns \(\Lambda \) such that \(T = Q \Lambda Q^T \) is the Spectral Decomposition of \(T \text{.}\) The input matrix \(T\) is a tridiagonal matrix where only the lower triangular part of the matrix is stored in the diagonal and first subdiagonal of array- T. The diagonal matrix \(\Lambda \) is returned in- T. The upper triangular part of the array should not change values. You are encouraged to call the function- Francis_Stepfrom the function- Spectral_Decomposition_Lambda. Obviously, you need to incorporate deflation in your implementation. How to handle the final \(2 \times 2 \) matrix is an interesting question... (You may use the matlab function- eigfor this.)
