The convergence of the various Power Method variants.

Part A
Investigate the convergence of the various Power Method variants.
Use the following files:

  • http://www.cs.utexas.edu/users/flame/laff/alaff/Assignments/Week09/matlab/test_Power_Methods.m
  • http://www.cs.utexas.edu/users/flame/laff/alaff/Assignments/Week09/matlab/PowerMethod.m
  • http://www.cs.utexas.edu/users/flame/laff/alaff/Assignments/Week09/matlab/ReportConvergence.m
    Put them in a directory (e.g., linearalgebra/matlab/) and execute test_Power_Methods in the command window
    after examining that file. It will report the current approximation as the Power Method iterates and creates two
    graphs (make sure you look at both of them). Figure 1 reports how quickly the method approximates the
    desired eigenvalue and Figure 2 reports the eigenvalue to which it converges.
    Next, write InversePowerMethod, ShiftedInversePowerMethod, and RayleighQuotientIteration. Look at
    test_Power_Methods to see what the calling sequence should be. How should you compute with the inverse of
    a matrix? Investigate the matlab routine "[ L, U, P ] = lu( A )"! To solve with a matrix in matlab, investigate
    the "\" operator. "help lu" and "help \" will tell you all you need to know. Experiment with different shifts for
    the ShiftedInversePowerMethod.
    Upload the three functions you implement as well as a brief description of what you observe.
    Part B
    Use the following files:
  • Givens_rotation.m: A function that computes a Givens' rotation from a 2×12×1 vector x.
  • Francis_Step.m: A function that performs a Francis Implicit QR Step with a tridiagonal
    matrix TT (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.