INTRODUCCION BASES, ECUACIONES IMPLÍCITAS Y

Anuncio
Práctica 4
INTRODUCCION
Este capítulo describe las herramientas que posee Mathematica para los
espacios vectoriales: ecuaciones paramétricas e implícitas de un subespacio vectorial, matrices cambio de
base y metodo de ortogonalización de Gram-Schmidt.
BASES, ECUACIONES IMPLÍCITAS Y PARAMÉTRICAS
Veamos ahora como lo aprendido en la práctica 2 nos puede ayudar para comprobar si un determinado
conjunto de vectores en un espacio euclídeo es una base. Supongamos que tenemos los subconjuntos
In[1]:=
Out[1]=
Out[2]=
b = 881, -1, -1<, 8-1, 1, -1<, 8-1, -1, 1<<
b£ = 881, 0, 0<, 82, 1, 0<, 8-1, -1, 0<<
881, -1, -1<, 8-1, 1, -1<, 8-1, -1, 1<<
881, 0, 0<, 82, 1, 0<, 8-1, -1, 0<<
Para comprobar si son base del espacio euclídeo tridimensional basta ver si son linealmente independientes. Para ello debemos calcular el rango de
la matriz formada por dichos vectores. Pordemos calcular dicho rango bien con el comando
In[3]:=
Out[3]=
In[4]:=
Out[4]=
RowReduce@bD
881, 0, 0<, 80, 1, 0<, 80, 0, 1<<
RowReduce@b 'D
881, 0, 0<, 80, 1, 0<, 80, 0, 0<<
O bien con
In[5]:=
Out[5]=
In[6]:=
Out[6]=
Det@bD
-4
Det@b 'D
0
De ambas maneras observamos que el primer subconjunto de vectores es una base mientras que el segundo
no.
Sea ahora S el subespacio del espacio euclídeo tridimensional generado por los vectores:
In[7]:=
Out[7]=
c = 881, 0, -1<, 84, 3, 2<, 83, 3, 3<<
881, 0, -1<, 84, 3, 2<, 83, 3, 3<<
Obtengamos en primer lugar una base de S comprobando cuántos vectores linealmente independientes hay
en el sistema generador anterior. Como antes calculamos el rango de la matriz formada por los mismos:
2
Pract4.nb
In[8]:=
Out[8]=
RowReduce@cD
881, 0, -1<, 80, 1, 2<, 80, 0, 0<<
Por tanto sólo hay dos vectores linealmente independientes y una base del subespacio está formada por:
In[9]:=
Out[9]=
v = 8%P1T, %P2T<
881, 0, -1<, 80, 1, 2<<
Claramente unas ecuaciones paramétricas de S son:
In[10]:=
Out[10]=
LogicalExpand@88x, y, z<< ã 88lambda, alpha<<. vD
x ã lambda && y ã alpha && z ã 2 alpha - lambda
Si queremos calcular las ecuaciones implícitas de este subespacio vectorial podemos
In[11]:=
Out[11]=
Eliminate@%, 8lambda, alpha<D
2y-zãx
MATRICES Y CAMBIO DE BASE
Veamos ahora un procedimiento usando sólo propiedades elementales de las matrices que nos permite
encontrar la matriz de cambio de base entre dos bases de un espacio vectorial. Lo veremos mediante un
ejemplo. Sean B y B' dos bases del espacio vectorial real usual de dimensión 3 dadas por
In[12]:=
Out[12]=
Out[13]=
B = 881, -1, -1<, 8-1, 1, -1<, 8-1, -1, 1<<
B£ = 881, 0, 0<, 82, 1, 0<, 80, 1, -1<<
881, -1, -1<, 8-1, 1, -1<, 8-1, -1, 1<<
881, 0, 0<, 82, 1, 0<, 80, 1, -1<<
Podemos calcular la matriz de cambio de base de B a B' mediante la siguiente expresión:
In[14]:=
Out[14]=
Inverse@Transpose@B£ DD.Transpose@BD
885, -1, -1<, 8-2, 0, 0<, 81, 1, -1<<
Veamos como actua esta matriz de cambio de base sobre un vector. Consideremos el vector cuyas coordenadas en la base canónica son {2,1,3}. Podemos calcular las coordenadas de este vector en la base B
mediante:
In[15]:=
Out[15]=
Inverse@[email protected], 1, 3<
:-2, -
5
2
,-
3
2
>
De forma análoga, las coordenadas de este vector en la base B' se pueden obtener por:
In[16]:=
Out[16]=
Inverse@Transpose@B£ DD.82, 1, 3<
8-6, 4, -3<
Podemos comprobar que nuestro cálcula de la matriz de cambio de base es correcta calculando:
Pract4.nb
In[17]:=
Out[17]=
3
%%%.%% - %
80, 0, 0<
DIAGONALIZACION DE MATRICES: VALORES Y VECTORES PROPIOS.
Mathematica está dotado de comandos para el cálculo de valores y vectores
propios de matrices cuadradas, tanto en forma simbólica como numérica. Los comandos que se utilizan
para ello son "Eigenvalues[matriz]" (para calcular los valores propios) y "Eigenvectors[matriz]" (para
calcular los vectores propios). Veamos algunos ejemplos:
In[18]:=
Out[18]=
In[19]:=
M = 88A, C, 0<, 81, 0, -1<, 80, C, A<<
88A, C, 0<, 81, 0, -1<, 80, C, A<<
MatrixForm@%D
Out[19]//MatrixForm=
A C 0
1 0 -1
0 C A
In[20]:=
Out[20]=
In[21]:=
Out[21]=
Eigenvalues@MD
80, A, A<
Eigenvectors@MD
::1, -
A
C
, 1>, 81, 0, 1<, 80, 0, 0<>
De lo anterior se deduce que M no es diagonalizable. Consideremos ahora la matriz:
In[22]:=
Out[22]=
L = ::::-
1
4
,-
1
4
5
4
,-
,-
1
4
5
4
,
,-
1
4
1
4
>, :-
1
,
5
4
4
,-
>, :1
4
,-
1
4
5
4
,
,-
1
4
1
4
>, :-
,1
4
,-
1
4
1
4
,
,-
1
4
1
4
>, :,
Out[23]=
vp = Eigenvalues@LD
8-2, -1, 1, 1<
Y sus vectores propios vendrán dados por
In[24]:=
Out[24]=
mp = Eigenvectors@LD
88-1, -1, -1, 1<, 81, 1, -1, 1<, 80, 0, 1, 1<, 8-1, 1, 0, 0<<
Claramente es diagonalizable y su matriz diagonal es
In[25]:=
Out[25]=
md = DiagonalMatrix@vpD
88-2, 0, 0, 0<, 80, -1, 0, 0<, 80, 0, 1, 0<, 80, 0, 0, 1<<
Podemos comprobar lo anterior mediante el cálculo siguiente
4
,-
1
4
,-
1
4
,
1 1 5
1
>, : , , , - >>
4
4 4 4
4
5
Calculemos sus valores propios mediante el comando
In[23]:=
1
1 1 5
>, : , , ,
4
4 4 4
5
>
4
Pract4.nb
In[26]:=
Out[26]=
L - [email protected]@Transpose@mpDD
880, 0, 0, 0<, 80, 0, 0, 0<, 80, 0, 0, 0<, 80, 0, 0, 0<<
Señalemos que también podemos dar un cálculo aproximado de los valores propios y vectores propios de
una matriz combinando los comandos anteriores con el comando "N[]". Como ejemplo
In[27]:=
Out[27]=
In[28]:=
Out[28]=
In[29]:=
Out[29]=
ma = 882, 1<, 83, 2<<
882, 1<, 83, 2<<
Eigenvalues@N@ma, 3DD
83.73, 0.268<
Eigenvectors@N@ma, 3DD
880.500, 0.866<, 8-0.500, 0.866<<
ORTONORMALIZACION DE GRAM-SCHMIDT.
El Mathematica tiene implementado el algoritmo de ortonormalización de Gram- Schmidt en el comando
"GramSchmidt[{v1,v2,...,vn}]". Esta función se encuentra definida en uno de los paquetes externos y por
tanto vamos a cargalo antes de continuar.
In[30]:=
<< "LinearAlgebra`Orthogonalization`";
General::obspkg :
LinearAlgebra`Orthogonalization` is now obsolete. The legacy version being loaded may conflict with
current Mathematica functionality. See the Compatibility Guide for updating information. à
Vamos ahora a ortonormalizar la siguiente base:
In[31]:=
Out[31]=
In[32]:=
Out[32]=
Base = 881, 0, -1<, 82, 0, 1<, 8-1, 1, 0<<
881, 0, -1<, 82, 0, 1<, 8-1, 1, 0<<
GramSchmidt@BaseD
::
1
2
, 0, -
1
2
>, :
1
2
, 0,
1
2
>, 80, 1, 0<>
Descargar