Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2006
Resumen
Introducción. Operaciones básicas con matrices con Matlab. Solución de sistemas de ecua-
ciones lineales. Descomposición LU. Polinomios, valores y vectores caracterı́sticos.
1. Introducción
1
Análisis numérico 2
2. Operaciones básicas. Suponiendo que se han ingresado dos matrices compatibles en las vari-
ables A y B. Las operaciones suma, resta, multiplicación y potencia se realizan simplemente
indicándolas:
>>C=A+B
>>D=A-B
>>E=A*B
>>F=A^2
3. Librerı́as con operaciones adicionales. MATLAB posee principalmente dos librerı́as: elmat.m
y matfun.m, mismas que contienen operaciones propias del álgebra matricial. Invocando el
comando de ayuda para cada una de ellas podrán conocerse los comandos que las conforman:
>>help elmat
>>help matfun
Los comandos que se mencionan a continuación se incluyen en estas librerı́as.
C =
1.0000 -0.0000 0
0 1.0000 0
0 -0.0000 1.0000
Sea el sistema de ecuaciones lineales AX̄ = b̄, donde la matriz A y el vector b̄ se introducen en
MATLAB como:
>>A=[2 0 5; 3 5 9; 1 -5 7]
A =
2 0 5
3 5 9
1 -5 7
>>b=[100 251 301]’
b =
100
251
301
1. Método de Gauss
Análisis numérico 4
>>x=A\b
Resultando:
x =
-96.6667
2.6000
58.6667
2. Método de Gauss-Jordan
>>rref([A b])
Resultando:
ans =
1.0000 0 0 -96.6667
0 1.0000 0 2.6000
0 0 1.0000 58.6667
Este esquema corresponde a la matriz ampliada con la matriz identidad producto de la elim-
inación gaussiana y el vector resultante que corresponde a la solución del sistema.
3. Método de la inversa
>>x=inv(A)*b
Resultando:
x =
-96.6667
2.6000
58.6667
4. Descomposición LU
MATLAB incluye un comando que proporciona las matrices LU con la salvedad que la diagonal
principal de ’1’ está en la matriz L y no sobre U de acuerdo al tema desarrollado.
Sea la matriz:
S=[2 0 0 -1 0; 3 3 1 -4 -2; 0 1 2 -3 0; 0 1 0 0 -1;0 1 0 0 0]
S =
2 0 0 -1 0
3 3 1 -4 -2
0 1 2 -3 0
0 1 0 0 -1
0 1 0 0 0
Análisis numérico 5
>> [L,U]=lu(S)verb
L =
1.0000 0 0 0 0
0.6667 1.0000 0 0 0
0 -0.5000 1.0000 0 0
0 -0.5000 -0.2000 1.0000 0
0 -0.5000 -0.2000 1.0000 1.0000
U =
Si se desea obtener las versiones Crout de LU deben programarse las fórmulas matriciales ya desar-
rolladas. Este desarrollo se incluye en el material anexo respectivo.
5. Polinomio caracterı́stico
Sea la matriz A:
>>A=[1 -1 0; 2 0 1; -2 3 -1]
A =
1 -1 0
2 0 1
-2 3 -1
Para obtener el polinomio caracterı́stico se utiliza el comando poly, que es el mismo que se utiliza
para construir un polinomio a partir de sus raı́ces. En este caso, cuando se aplica a una matriz,
proporciona el respectivo polinomio caracterı́stico.
>>poly(A)
Resultando:
ans =
1.0000 0.0000 -2.0000 3.0000
6. Valores caracterı́sticos
Sea la matriz B:
>>B=[2 2 1; 1 3 1; 1 2 2]
B =
2 2 1
1 3 1
1 2 2
Existen dos formas de obtener los valores caracterı́sticos de esta matriz. La primera consiste en
obtener primeramente el polinomio caracterı́stico y posteriormente sus raı́ces:
>>c=poly(A)
c =
1.0000 -7.0000 11.0000 -5.0000
>>d=roots(c)
Resultando:
d =
5.0000
1.0000
1.0000
La alternativa es utilizar el comando eig de la siguiente forma:
>>e=eig(A)
Resultando:
e =
5.0000
1.0000
1.0000
7. Conclusiones
El debate sobre si los alumnos deben conocer los métodos numéricos y sus algoritmos o si es mejor
que conozcan el comando o la utilerı́a que realiza el cálculo no se ha agotado. Desde el punto de
vista de los autores, los alumnos deben conocer ambos aspectos, ya que de esa forma serán capaces
de reconocer posibles resultados no apropiados que en ocasiones pudieran obtener del uso de las
utilerı́as, o bien, desarrollar sus propias soluciones adaptadas a casos particulares.
Referencias
[1] Matlab version 6.5 release 13.