%%
clear
close all
clc

A = [2 -1  0;
      -1  2 -1;
       0 -1  2];


%% largest eval
v1 = [1;2;3];
v1 = v1/norm(v1);
for kk=1:1000;
    v1 = A*v1;
    v1 = v1/norm(v1);
end
lambda1 = v1'*A*v1


%% smallest eval
v3 = randn(3,1);
v3 = v3/norm(v3);
for kk=1:1000;
    v3 = A\v3;
    v3 = v3/norm(v3);
end
lambda3 = v3'*A*v3


%% middle eval
mu = 2.3;
v2 = randn(3,1);
v2 = v2/norm(v2);
for kk=1:1000
    v2 = (A-mu*eye(3))\v2;
    v2 = v2/norm(v2);
end
lambda2 = v2'*A*v2 


