Write a matlab code implementing the power method to


Problem - We consider the approximations to the eigenvalues and eigenfunctions of the one-dimensional Laplace Operator L[u] = -(d2u/dx2) on the unit interval [0, 1] with boundary u(0) = u(1) = 0. A scalar λ is an eigenvalue of L if there exists a twice -differentiable function u s. t. -u''(x) = λu(x) on [0, 1] with u(0) = u(1) = 0. In this case u is said to be an eigenfunction of L corresponding to the eigenvalue λ. This continuous problem can be approximated by the discrete eigenvalue problem

h-2TNu = λu

where we have set-

518_Figure.png

with ui = u(xi). It can be shown that the N x N matrix TN has eigenvalues vj = 2(1 - cosxj/N+1) for j = 1 : N, corresponding to the eigenvectors uj(k) = √(2/N+1)sin(jkπ/N+1) is the kth entry in uj. Notice that the eigenvectors are normalized w.r.t. the 2-norm. Also notice that eigenvalues of Tn lie in the interval (0, 4). Hence, the eigenvalues of h-2TN lie in the interval (0, 4(N + 1)2).

(a) Express the spectral condition number κ = λN1 of TN (which is the same as the condition number of h-2TN) as a simple function of N for N → ∞.

(b) Use Matlab to plot the eigenvalues of TN for N = 21 (from smallest to largest).

(c) Again using N = 21, use Matlab to plot the eigenvectors uj of TN for j = 1, 2, 3, 5, 11, 21. The plot should be of the form (k, uj(k)) where k = 1 : 21. Note that as j increases, the behavior of the eigenvectors (approximate eigenfunctions) becomes increasingly oscillatory; these eigenfunctions are often called "high energy modes".

(d) Write a Matlab code implementing the power method to compute approximations of the largest eigenvalue λN of L and corresponding eigenfunctions. Use N = 500 and apply the algorithm to h-2TN. Start with a random initial guess, use normalization in the 2-norm, and stope when the difference of two subsequent approximate eigenvectors has 2-norm less than some prescribed tolerance r. (e. g. τ = 10-6).

(i) Report the number of iterations performed

(ii) Compared approximations with exact eigenvalue/eigenvector pair.

(iii) Use matalb to plot the computed eigenvector.

Solution Preview :

Prepared by a verified Expert
MATLAB Programming: Write a matlab code implementing the power method to
Reference No:- TGS01413953

Now Priced at $50 (50% Discount)

Recommended (91%)

Rated (4.3/5)