Ejercicio

Sea A=[[3,1,0],[1,3,0],[0,0,1]], y P la matriz formada por los autovectores(en columna) de la matriz A. ¿Cuánto vale la traza de la matriz \(P.P^t\)?

Calculemos los autovalores y sus autovectores correspondientes, sin utilizar las funciones de maxima. Primero necesitamos resolver la ecuación característica:

(%i1) load ( "eigen") $
(%i4) A : matrix([ 3, 1, 0],[ 1, 3, 0],[ 0, 0, 1]) $
ecu_caract : expand( determinant( A - x * ident( 3))) = 0 ;
solve( ecu_caract,[ x]) ;
(ecu_caract) x 3 + 7 x 2 14 x + 8 = 0 (%o4) [ x = 2 , x = 4 , x = 1 ]

Así pues, los valores propios son 1, 2 y 4.
Para determinar el autovector asociado al autovalor 1, resolvemos el sistema

(%i5) print(( A - 1 * ident( 3)), covect([ x, y, z]) = covect([ 0, 0, 0])) $
( 2 1 0 1 2 0 0 0 0 ) ( x y z ) = ( 0 0 0 )
(%i7) ecu :( A - 1 * ident( 3)). covect([ x, y, z]) ;
solucion : linsolve([ ecu[ 1][ 1] = 0, ecu[ 2][ 1] = 0],[ x, y, z]) ;
(ecu) ( y + 2 x 2 y + x 0 ) (solucion) [ x = 0 , y = 0 , z = %r1 ]

Damos al parámetro el valor necesario para que sea una autovector. Por ejemplo, con el valor de 1, tenemos

(%i9) autovector1 : ev([ x, y, z], ev( solucion, %r1 = 1)) ;
A. transpose( autovector1) ;
(autovector1) [ 0 , 0 , 1 ] (%o9) ( 0 0 1 )

Repetimos el proceso para el autovalor 2

(%i11) ecu :( A - 2 * ident( 3)). covect([ x, y, z]) ;
solucion : linsolve([ ecu[ 1][ 1] = 0, ecu[ 2][ 1] = 0, ecu[ 3][ 1] = 0],[ x, y, z]) ;
(ecu) ( y + x y + x z ) solve: dependent equations eliminated: (1) (solucion) [ x = %r2 , y = %r2 , z = 0 ]
(%i12) autovector2 : ev([ x, y, z], ev( solucion, %r2 = 1)) ;
(autovector2) [ 1 , 1 , 0 ]

Repetimos el proceso para el autovalor 4

(%i14) ecu :( A - 4 * ident( 3)). covect([ x, y, z]) ;
solucion : linsolve([ ecu[ 1][ 1] = 0, ecu[ 2][ 1] = 0, ecu[ 3][ 1] = 0],[ x, y, z]) ;
(ecu) ( y x x y 3 z ) solve: dependent equations eliminated: (1) (solucion) [ x = %r3 , y = %r3 , z = 0 ]
(%i15) autovector3 : ev([ x, y, z], ev( solucion, %r3 = 1)) ;
(autovector3) [ 1 , 1 , 0 ]

Ahora formamos la matriz P con los autovectores obtenidos, siguiendo el orden de los autovalores de menor a mayor:

(%i16) P : transpose( matrix( autovector1, autovector2, autovector3)) ;
(P) ( 0 1 1 0 1 1 1 0 0 )

Ejercicio nos pide la traza de \(P.P^t\):

(%i17) mat_trace( P. transpose( P)) ;
0 errores, 0 advertencias (%o17) 5

Esto mismo lo podíamos obtener utilizando las funciones de maxima:

(%i18) autov : eigenvectors( A) ;
(autov) [ [ [ 2 , 4 , 1 ] , [ 1 , 1 , 1 ] ] , [ [ [ 1 , 1 , 0 ] ] , [ [ 1 , 1 , 0 ] ] , [ [ 0 , 0 , 1 ] ] ] ]

El primer vector nos da los valores propios distintos sus multiplicidades algebraicas, y el segundo, los vectores propios asociados a cada valor propio. Así:

(%i19) P : transpose( matrix( autov[ 2][ 3][ 1], autov[ 2][ 1][ 1], autov[ 2][ 2][ 1])) ;
(P) ( 0 1 1 0 1 1 1 0 0 )

Created with wxMaxima.