Download - Separata L4

Transcript
Page 1: Separata L4

PROBLEMA 1

%Conceptos importantesclcdisp('Norma infinito')A=[ 3 -24 5 -12 -13 10 -14 1 -4] max(sum(abs(A'))')norm(A,inf) A=[2 4 12 4]disp('Autovalores de A')lambda=eig(A) disp('Radio espectral')ro=max(abs(eig(A))) disp('norma cuadrada A')max(abs(eig(A*A')))^0.5norm(A,2)disp('Verificando si A es estrictamente diagonalmente dominante');n=4;A=round(rand(n)*20-10)+5*diag(diag(round(rand(n)*20-10)))fil=sum(abs(A'))-diag(abs(A))'dia=diag(abs(A))'if sum(dia>fil)==length(A) fprintf('Es estrictamente diagonal dominante\n');else fprintf('No es estrictamente diagonal dominante\n');end

Page 2: Separata L4

PROBLEMA 2

clcclearA=[ 0.09 3 -0.15 4 0.24 -0.08 0.04 -0.08 4]b=[8 9 20]'xx=inv(A)*bD=diag(diag(A));L=-tril(A,-1);U=-triu(A,1);%Usando metodo de JacobiT=inv(D)*(L+U);c=inv(D)*b;format longx=[0 0 0]';xa=xTOL=1e-2;NMAX=10000;for i=1:NMAX x=T*x+c; er=norm(x-xa,inf); xa=x if er<TOL break endendi[x xx]radio_espectral=max(abs(eig(T)))

Page 3: Separata L4

PROBLEMA GAUSS SEIDEL

function [x,i,ro]=gauss_seidel(A,b,x,TOL,NMAX)D=diag(diag(A));L=-tril(A,-1);U=-triu(A,1);T=inv(D-L)*U;c=inv(D-L)*b;ro=max(abs(eig(T)));x=ones(length(b),1);xa=x;for i=1:NMAX x=T*x+c; er=norm(x-xa,inf); xa=x; if er<TOL break endend

Page 4: Separata L4

PRBLEMA JACOBI

function [x,i,ro]=jacobi(A,b,x,TOL,NMAX)D=diag(diag(A));L=-tril(A,-1);U=-triu(A,1);T=inv(D)*(L+U);c=inv(D)*b;ro=max(abs(eig(T)));xa=x;for i=1:NMAX x=T*x+c; er=norm(x-xa,inf); xa=x; if er<TOL break endend

Page 5: Separata L4

PROBLEMA 3

clcformat short roj=2;rog=2;while roj>0.9 || rog>0.9 n=4;A=round(rand(n)*100-50); b=round(rand(n,1)*100-50); D=diag(diag(A)); L=-tril(A,-1); U=-triu(A,1); if det(D)>0.1 Tj=inv(D)*(L+U);Tg=inv(D-L)*U; roj=max(abs(eig(Tj))); rog=max(abs(eig(Tg))); endendAb'xx=inv(A)*b;TOL=1e-6;x0=b*0+1;disp('Jacobi')[xj,iterj,roj]=jacobi(A,b,x0,TOL,10000);disp(iterj);disp(roj);disp(xj');disp('Gauss-Seidel')[xg,iterg,rog]=gauss_seidel(A,b,x0,TOL,10000);disp(iterg);disp(rog);disp(xg');disp('Respuesta correcta')disp(xx')