% hatvanymodszer A = [2 4 ; -1 -3] % iteracio kezdovektora v = [1 1]' % v = [1;1] % iteracios lepes: for i = 1:10 z = A*v L = norm(z,Inf) La(i) = L v = z / L V(:,i) = v endfor % 10 iteracio volt % itt mar ugy nez ki, mintha konvergalna, % elotte 3-ra, 5-re nem ugy nezett ki % precizebb konvergencia feltetel: % abs(La(end) - La(end-1)) < eps % La 2 korul allapodik meg % V-bol: valtakozo elojel % la = -2 % szinten V-bol: v = [-1; 1] kb. % inverz hatvanymodszer: legkisebb absz. erteku sajatertek % + hozza sajatvektor megtalalasa % A inverzevel hasonlo, de az ugye 1/la-t becsul v = [1 ;1] clear('V') for i = 1:8 z = inv(A)*v mu = 1 / norm(z,Inf) Mu(i) = mu v = z * mu V(:,i) = v endfor % ez mar ugy nez ki mintha konvergalna % nem valtakozo elojel, Mu 1-hez konvergal >> +1 se % hozza sv, V utolso oszlopa: [1 ; -2.5] kb. % ellenorzeshez: [sv, se] = eig(A) sv1 = sv(:,1) sv2 = sv(:,2) se1 = se(1,1) se2 = se(2,2) A * sv1 - se1 * sv1 %% 0 vektor A * sv2 - se2 * sv2 %% 0 vektor % elvileg: Mu(end), es La(end), valamilyen sorrendben % se1, se2