%%%------------------------------- item (3) ---------------------------------%%% function [lmax] = potencia(A) n = size(A,1); % determina o tamanho de A x = ones(n,1); % vetor de entrada x (chute inicial) tol = 1e-8; % tolerancia para o residuo (criterio de parada) kmax = 1000; % quantidade maxima de iteracoes (criterio de parada) k = 0; % inicializa a variavel para contagem das iteracoes err = 10; % inicializa o erro para entrar no loop l_v = 0; % inicializa o variavel auxiliar do autovalor na iteracao anterior while abs(err) > tol && k < kmax y = x/norm(x); % normaliza x x = A*y; % atualiza x fazendo x = A*y lambda = dot(y,A*y); % Aproxima o autovalor pelo processo iterativo err = abs(lambda - l_v); % calcula o erro em modulo l_v = lambda; % atualiza o valor de l_v para a proxima iteracao k = k + 1; % atualiza a iteracao end lmax = lambda; % maior autovalor de A end %%%--------------------------------------------------------------------------%%%