You are on page 1of 13

Calculo de valores y vectores propios

Catalina Domnguez,
Universidad del Norte

Maestra en matematicas
Semestre II de 2015
Semana 13

Pgina 1

Semana 13

29 de Octubre de 2015

Domnguez

Matrices simtricas: calculo de valores propios


Matriz de Rotacin
Dado un par j < k y R la matriz
columna j

fila j
U=
fila k

columna k

1
..

.
cos()

sin()
..

sin()

.
cos()
..

.
1

U describe la rotacin en el plano xj xk , y adems es unitaria U T U =


I coincide con la identidad excepto en ujj , ukk .
Pgina 2

Semana 13

29 de Octubre de 2015

Domnguez

Teorema
Si A es simtrica y real, entonces B = U T AU es real y simtrica y
bjj = ajj cos2 + ajk sin(2) + akk sin2 ,
bkk = ajj sin2 ajk sin(2) + akk cos2 ,
1
bjk = bkj = ajk cos 2 + (akk ajj ) sin(2),
2
bij = bji = aij cos + aik sin ,
i 6= j, k
bik = bki = aij sin + aik cos ,
bil = ail ,

i 6= j, k

i, l 6= j, k

B y A no coinciden en la filas y columnas j y k y son similares. U es


unitaria (U U = U U = I)


Pgina 3

cos() sin()
sin() cos()
Semana 13



ajj ajk
akj akk



 

cos() sin()
b
b
= jj jk
sin() cos()
bkj bkk

29 de Octubre de 2015

Domnguez

Ejemplo

a11
a12
AU =
a13
a14

a11
a12
=
a13
a14

Pgina 4

a12
a22
a23
a24

a13
a23
a33
a34


a14
1
0
0

a24 0 cos() sin()

a34 0 sin() cos()


a44
0
0
0

a12 cos() + a13 sin()


a22 cos() + a23 sin()
a32 cos() + a33 sin()
a42 cos() + a43 sin()

Semana 13

a12 sin() a13 cos()


a22 sin() a23 cos()
a32 sin() a33 cos()
a42 sin() a43 cos()

29 de Octubre de 2015

Domnguez

0
0

0
1

a14
a24

a34
a44

Ejemplo

Pgina 5

a11
a12 cos() a13 sin()

B = U T AU =
a12 sin() + a13 cos()
a14
col=1

a12 cos() a13 sin()


a22 cos2 () + a33 sin2 () 2a23 sin() cos()

a32 cos2 () a32 sin2 () + (a22 a33 ) cos() sin()


a42 cos() a43 sin()

col=2
a12 sin() + a13 cos()
a23 cos2 () a32 sin2 () + (a22 a33 ) sin() cos()

a33 cos2 () + a22 sin2 () + (a22 + a33 ) cos() sin()


a42 sin( + a43 cos()
col=3

a14
a24 cos() a34 sin()

a24 sin() + a34 cos()


a44
col=4
Semana 13

29 de Octubre de 2015

Domnguez

Ejemplo
Si

Pgina 6

1
2
A=
3
4

4
5

6
7

1
0
0
0
0 cos() sin() 0

U =
0 sin() cos() 0
0
0
0
1

1
3.535 0.707
4
3.535
8
1
7.778

B=
0.707
1
0
0.707
4
7.778 0.707
7

Semana 13

2
3
4
5

3
4
5
6

29 de Octubre de 2015

Domnguez

Teorema
Si A es simtrica y real, entonces B = U T AU es real y simtrica y
bjj = ajj cos2 + ajk sin(2) + akk sin2 ,
bkk = ajj sin2 ajk sin(2) + akk cos2 ,
1
bjk = bkj = ajk cos 2 + (akk ajj ) sin(2),
2
bij = bji = aij cos + aik sin ,
i 6= j, k
bik = bki = aij sin + aik cos ,
bil = ail ,

i 6= j, k

i, l 6= j, k

B y A no coinciden en la filas y columnas j y k y son similares. U es


unitaria (U U = U U = I)

Pgina 7

Semana 13

29 de Octubre de 2015

Domnguez

Teorema
Para
tan(2) =

2ajk
,
ajj akk

= ,
4

N (M ) :=

las componentes
bjk = bkj = 0
N (B)2 = N (A)2 2a2jk

|mij |2

j,k=1
j6=k

ajj 6= akk
ajj = akk

n
 X

1/2

es una medida de la desviacin de


una matriz M con respecto a su
matriz diagonal.
Para matrices normales (A A = AA )
n
X

|j |2 =

j=1

n
X

|ajj | + (N (A))2

j=1

Idea principal: metodo de Jacobi


Genera una sucesin (Ak )kN de manera que N (Ak ) se reduce sucesivamente mediante matrices de rotacin, de tal manera que su limite sea una matriz
diagonal, cuyas entradas son valores propios de A.
Pgina 8

Semana 13

29 de Octubre de 2015

Domnguez

Dado A0 = A, Q = I,
mientras N (A) >
1

Calcular U

Calcular A1 = U T A0 U

Calcular Q = Q U

Calcular N (A1 )

Si N (A1 ) > continuar


tem 1,
de lo contrario
valores propios = diag(A1 )
vectores propios = Q

Pgina 9

Semana 13

tan(2) =

2ajk
,
ajj akk

= ,
4

ajj 6= akk
ajj = akk

tenemos
cos(2) = p

1
1 + tan2 (2)

1
(1 + cos(2))
2
r
1
sin() = sign(tan(2))
(1 cos(2))
2

cos() =

29 de Octubre de 2015

Domnguez

Mtodo de Jacobi: Idea principal


Genera una sucesin (Ak )kN tal que
lim Ak = D = diag(1 , 2 , . . . , n )

En cada iteracion m

Observe
A0 = A
A1 = U0 A0 U0
..
.

Am Um
Am+1 = Um

= Um Um1 Am1 Um1 Um

Am y A tienen los mismos valores


propios,

Cuando m , Am D donde D
es una matriz diagonal, cuyas
entradas son los valores propios de A.

El par j, k corresponden a la posicin


donde se encuentra la mayor
componente (en modulo) de la matriz
Am1 .

Las columnas Qm son una


aproximacin de los vectores propios.


Um1 U0 AU0 Um1 Um
= Um
= Qm AQm

Pgina 10

Semana 13

29 de Octubre de 2015

Domnguez

Ejemplo: sucesion de matrices en el metodo de Jacobi

2 1 0
A = 1 2 1
0 1 2

1
0
0.707
A1 = 0
3
0.707 ,
0.707 0.707
2

0.634 0.3251
0.0
A2 = 0.325
3
0.628
0
0.628
2.366

Pgina 11

Semana 13

29 de Octubre de 2015

Domnguez

function [EI,NA,A,iterT] = JacobiEig(A,tol,nmax)


NA = norm(A-diag(diag(A)),fro);
iter = 0;
while NA>=tol && iter <= nmax
AD = abs(A-diag(diag(A)));
[VMax,IndF] = max(AD);
[VMax,IndC] = max(VMax);
j = IndF(IndC);
k = IndC;
if j>k
k0=k; k = j;j = k0;
end
if A(j,j)==A(k,k) %phi=pi/4
cosphi = sqrt(2)/2;
sinphi = sqrt(2)/2;
else
tan2phi = 2*A(j,k)/(A(j,j) - A(k,k));
cos2phi = 1/(sqrt(1+tan2phi^2));
cosphi = sqrt(0.5*(1 + cos2phi));
sinphi = sign(tan2phi)*abs(sqrt(0.5*(1 - cos2phi)));
end
U =[cosphi -sinphi; sinphi cosphi];
B = A;
B(:,j)
B(j,:)
B(:,k)
B(k,:)

=
=
=
=

A(:,j)*cosphi + A(:,k)*sinphi;
B(:,j);
-A(:,j)*sinphi + A(:,k)*cosphi;
B(:,k);

I = [j,k];
AU = A(I,I)*U;
B(I,I) = U*AU;
A = B;
EI = diag(A); AD = abs(A-diag(diag(A)));
NA = norm(AD,fro);
iter = iter +1;
if NA <= tol
return
end
end

Pgina 12

Semana 13

29 de Octubre de 2015

Domnguez

Convergencia
1

N (Am ) q m N (A0 ),

1/2
2
< 1,
n(n 1)


q := 1

por tanto,
N (Am ) 0 cuando m
2

Cuando n es grande q 1, en decir la convergencia del mtodo


de Jacobi es baja, sin embargo,
(m)

|j ajj | N (Am ),
3

Mtodo de Jacobi cclico: las componentes no-diagonales son


anuladas siguiendo el orden
(1, 2), . . . , (1, n),

Pgina 13

j = 1, . . . , n

Semana 13

(2, 3), . . . , (2, n),

29 de Octubre de 2015

(3, 4) . . . , (n 1, n)

Domnguez

You might also like