
clear all
%*** 1. Berechne Eigenwerte
for k = 2:9 
  N(k) = 2^k;
  e = ones(N(k)-1,1);
  A = ((N(k)/pi)^2)*spdiags([-e,2*e,-e], [-1,0,1],N(k)-1,N(k)-1);

  e = eig(A); 
  % Hier geht eig, da wir nur die Eigenwerte brauchen
  % Eigenwerte sind aufsteigend sortiert
  e1(k) = e(1);
  e2(k) = e(2);
  if k>1
  e3(k) = e(3);
  end
end

%*** Zeichne Eigenwerte
figure(1)
loglog(N,e1-1, '-o' ,N,e2-4, '-dr',N,e3-9,'-sc')


%*** Berechne Eigenvektoren
style = {'-k','-r', '-g', '-c'};
for k = 1:4
  N(k) = 2^(k+2); % N = 8,16,32,64
  % Wir stellen hier die volle Matrix auf, damit wir auch eig verwenden
  % koennen.
  A = ((N(k)/pi)^2)*(diag(2*ones(N(k)-1,1)) - diag(ones(N(k)-2,1),1) ...
                           - diag(ones(N(k)-2,1),-1));

  [v,e] = eig(A);
  %*** Zeichne den 5. Eigenvektor
  figure(2)
  hold on
  plot(linspace(1/N(k),pi-1/N(k),N(k)-1),v(:,5), style{k})
end