Sei sulla pagina 1di 2

Archivo norma2.

m implementa la función norma2() que calcula por definición la norma-2 de una


matriz 2 dada

%sintaxis: n2=norma2(A). Calcula por definición la norma-2 de una matriz


%A: 2x2, cuyo valor retorna en n2.
%Maestria en Modelaje Matemático 1ra version 2015-2016 Carrera Matemática
%Autor: Dr. Porfirio Su~nagua S. Módulo: Análisis Numérico
function n2=norma2(A)
t=[0 0:0.1:2*pi 2*pi]; %angulos en radianes
x=[cos(t)’ sin(t)’]; %puntos sobre el cı́rculo unitario
x=x’; %secuencia de coordenadas de x como fila tq |x|_2=1
if nargin<1
A=[2 3; -1 4];
end
y=A*x; nt=length(t); norm2=zeros(nt,1);
for j=1:nt
v=y(:,j);
%norma-2, para norma-1: norm(v,1), para norma infinita: norm(v,inf)
norm2(j)=norm(v,2);
end
%calcula el máximo de todas las normas de Ax sobre |x|=1
[n2,imax]=max(norm2);

figure(1)%para circulo unitario y su imagen (elipse)


plot(x(1,:),x(2,:)); %circulo unitario segun norma-2
hold on %activa para sobregraficar
plot(y(1,:),y(2,:)); axis equal; %para que el circulo no sea achatado
v1=[0 y(1,imax)]; v2=[0 y(2,imax)]; %vertices mas alejados
i=round(0.1*nt); %indice 10% para ilustrar un vector unitario y su imagen
x1=[0 x(1,i)]; x2 = [0 x(2,i)]; %vector sobre el circulo unitario
y1=[0 y(1,i)]; y2 = [0 y(2,i)]; %vector imagen del punto anterior
plot(x1,x2,’mo-’,y1,y2,’mo-’); %color magenta o----o
plot(v1,v2,’r.-’,-v1,-v2,’g.-’); %vectores red y green
hold off %desactiva sobregraficación
figure(2)%para la curva de |Ax| vs. t
plot(t,norm2); hold on; %habilita para sobregraficar
horiz1=[0 2*pi]; horiz2=[n2 n2]; %coordenadas para linea horizontal rojo
plot(horiz1,horiz2,’r’); %linea horizontal que representa al max
hold off; %desactiva sobregraficar

Archivo norma2run.m ejecuta la función norma2()

A=[2 3; -1 4];%A=1 + 2*rand(2);


n2=norma2(A);
%Resultados de las normas
fprintf(’Max de |Ax|: %0.5f\n’,n2);
fprintf(’Norma-2 MATLAB de A: %0.5f\n’,norm(A));
fprintf(’Max autovalor de AtA: %0.5f\n’,sqrt(max(eig(A’*A))));

En seguida tenemos la salida de ejecución y las gráficas generadas en la Figura 1.

>> norma2run
Max de |Ax|: 5.01938
Norma-2 MATLAB de A: 5.01976
Max autovalor de AtA: 5.01976

Figura 1: y = Ax sobre kxk2 = 1 y kAxk2 vs. ángulo del vector x

Problema Realizar una implementación computacional similar al anterior para la norma-1 e otro para
norma infinita. De forma alternativa puede demostrar teóricamente el siguiente Teorema

Teorema Dada la matriz A : m × n, se tiene:


Xm n
X
p
T
kAk2 = λmáx (A A), kAk1 = máx |aij |, kAk∞ = máx |aij |
1≤j≤n 1≤i≤m
i=1 j=1

Potrebbero piacerti anche