Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2 SECCION
Figura 7-40
la computadora habr a almacenado el valor 3 con la etiqueta (nombre) ans; que es el nombre que por defecto asigna M ATLAB a ese objeto. Esto signica que si en lugar de ello se hace
a Uso de tecnolog
EDU a=5 a = 5 EDU en la memoria de la calculadora habr a quedado almacenado el valor 5 con el nombre a. Este valor quedar a todo el tiempo con esa etiqueta asignada hasta que el usuario le reasigne un nuevo valor a dicha etiqueta. Pero, si se desactiva M ATLAB (escribiendo en la ventana la palabra exit y oprimiendo despu es la tecla ENTER, o simplemente cerrando la ventana de comandos de M ATLAB), entonces todos los objetos almacenados quedar an borrados de la memoria y, cuando nuevamente el usuario utilice M ATLAB, ya no podr a hacer uso de ellos. Sin embargo, con la instrucci on save, se pueden almacenar permanentemente los objetos en la memoria de la computadora y, con la instrucci on load, podr a cargarlos otra vez para utilizarlos. La sintaxis para cada uno de estos comandos es:
save nombre del objeto load nombre del objeto
Supongamos, por ejemplo, que vamos a cerrar M ATLAB y deseamos almacenar el objeto a; escribimos en la ventana de M ATLAB y despu es oprimimos la tecla ENTER de la computadora: EDU save a EDU Si salimos del paquete y despu es escribimos las instrucciones EDU load a EDU la variable a volver a a cargarse para utilizarla nuevamente. on s olo si despu es de escribirla en su ventana se opri Nota 7.5 1. M ATLAB ejecuta una instrucci me la tecla ENTER. Ya no haremos expl cito este detalle de aqu en adelante. 2. Est a permitido usar cualquier car acter alfanum erico, incluso el gui on bajo, para nombrar objetos en M ATLAB (sin dejar espacios en blanco). usculas y min usculas; por ejemplo, las etiquetas meNor 3. La sintaxis de M ATLAB es sensible a may y menor son distintas en este programa. Podemos saber las variables (objetos) que tenemos almacenadas en cada sesi on utilizando el comando who: EDU who Your variables are: a EDU y ver las variables que tenemos permanentemente almacenadas con el comando what:
7.2 SECCION
EDU what MAT-files in the current directory C:\MATLAB\BIN\libro a EDU El paquete indica el directorio donde est a almacenada la variable a directorio en curso donde se debe estar trabajando para poder tener acceso a esa variable, en nuestro caso C:\MATLAB\BIN\libro . De no ser as , se debe cambiar de directorio desde la ventana de M ATLAB (consulte la gu a del usuario). nicamente se pueLas instrucciones que se den a M ATLAB en una sesi on no se pueden almacenar, u den guardar objetos num ericos y algebraicos. Para ver las variables que se encuentran en el directorio en curso se escribe el comando dir. Para borrar una variable se utiliza la instrucci on delete seguida (con un espacio) del nombre del archivo; as , delete a.mat borrar a de la memoria el objeto a. nicamente para registrar por escrito, o en forma Existen formas de almacenar ya sea en forma de texto, u de gui on, para ejecutar y modicar cuantas veces sea necesario un conjunto de instrucciones. La primera es la instrucci on con sintaxis diary nombre de archivo con extensi on txt y la segunda es utilizando un archivo m que veremos m as adelante.
a Uso de tecnolog
a.
EDU -3+5 ans = 2 EDU 4*sqrt(2) ans = 5.6569 EDU 4/2 ans = 2 EDU 4\2 ans = 0.5000 EDU 2 (1.8) ans = 3.4822 EDU A=[1 -1 2; -2 1 3]; B=[0 1 -1; 1 2 1]; EDU C=[-1 1 3; 2 2 1; -3 2 1]; EDU 3*A-2*B ans = 3 -5 8 -8 -1 7 EDU A*C ans = -9 3 4 -5 6 -2 EDU C 2 ans = -6 7 1 -1 8 9 4 3 -6 EDU D=3*C 3;E=(A-2*B)*D E = 381 -291 -48 -54 -423 21 EDU Una caracter stica muy importante de M ATLAB es que no se requiere declarar el tipo de variables con las que se trabaja; as , se puede hacer c alculos con n umeros reales y complejos en el mismo ambiente sin hacer ning un cambio o declaraci on inicial.
7.2 SECCION
format o format short: el formato que por defecto tiene M ATLAB y que es con el que se hicieron los c alculos del apartado precedente.
EDU 1/3 ans = 0.3333 EDU format short e EDU 1/3 ans = 3.3333e-001 EDU format rat EDU 4/128 ans = 1/32 EDU format long EDU 1/3 ans = 0.33333333333333 EDU format EDU 4/128 ans = 0.0312 EDU Las versiones para estudiantes de M ATLAB contienen el toolbox de matem atica simb olica. Para hacer operaciones en modo simb olico, requerimos declarar las literales que se van a utilizar con el comando syms, separando cada literal con un espacio en blanco: EDU syms x EDU J=[x x 2 -x 2*x]
a Uso de tecnolog
J = [ x, x2] [ -x, 2*x] EDU J2 ans = [ x2-x3, 3*x3] [ -3*x2, -x3+4*x2] EDU El comando sym transforma una expresi on al modo simb olico y todo lo que se opere con ella estar a en modo simb olico. Para ilustrarlo, emplearemos la matriz A que tenemos almacenada en la memoria. EDU S=sym(A) S = [ 1, -1, 2] [ -2, 1, 3] EDU sqrt(2)*S ans = [ 2(1/2), [ -2*2(1/2), EDU
-2(1/2), 2(1/2),
2*2(1/2)] 3*2(1/2)]
En ocasiones es dif cil leer las expresiones en este modo, se puede utilizar un comando que ayuda un poco a visualizar mejor la informaci on desplegada; el comando pretty: EDU pretty(ans) [ 1/2 [ 2 [ [ 1/2 [-2 2 EDU 1/2 -2 1/2 2 1/2] 2 2 ] ] 1/2] 3 2 ]
7.2 SECCION
EDU zeros(2,3) ans = 0 0 0 0 EDU eyes(3) ans = 1 0 0 1 0 0 EDU ones(3,2) ans = 1 1 1 EDU 1 1 1 0 0
0 0 1
a Uso de tecnolog
EDU M=[-1 2 3 4 -1 1 2 3 0 1 1 1] M = -1 2 -1 1 0 1 EDU M(2,3) ans = 2 EDU M(3,:) ans = 0 1 EDU M(:,4) ans = 4 3 1 EDU Por supuesto, se puede editar una entrada o una columna o una la de la matriz M con estas instrucciones. EDU M(1,2)=-5 M = -1 -5 -1 1 0 1 EDU M(2,:)=[-1 M = -1 -1 0 EDU -5 0 1 3 1 1 4 1 1 3 4 2 3 1 1 0 1 1] 1 1 3 2 1 4 3 1
til en la edici Un detalle que puede resultar u on de matrices, es que en M ATLAB es muy simple adjuntar una matriz a otra para ampliar la primera. Utilizando la matriz M que ya tenemos escrita, vamos a ampliarla con la matriz M2 que tenemos que escribir en la ventana de M ATLAB. EDU M2=[ -3 1 2 2 0 1] M2 = -3 2 0 1 2 1
7.2 SECCION
a Uso de tecnolog
M as adelante veremos c omo es posible hacer las operaciones de rengl on en forma m as simple programando una funci on en M ATLAB. Nota 7.6 Con las teclas direccionales de la computadora es posible volver a colocar informaci on en on hacia arriba se obtiene la informaci on la pantalla de M ATLAB sin tener que teclearla; con la de direcci precedente en forma sucesiva y, con la tecla de direcci on hacia abajo, la informaci on posterior. Este til para repetir y editar instrucciones sin tener que escribirlas por completo. detalle resulta muy u
(a)
Figura 7-41
(b)
En la gura 7-42 est a escrito un programa para calcular el polinomio caracter stico de una matriz de tamano 2 2 en el editor de texto que acompana a M ATLAB. A continuaci on explicamos a grandes rasgos las partes de las que est a formado este programa. 1. La palabra reservada function, instrucci on que se utiliza para indicar a M ATLAB que el programa es para denir una funci on. 2. Una etiqueta de salida, en este caso utilizamos la letra p, que sigue de la palabra reservada function. 3. Despu es del signo igual, que sigue de la etiqueta de salida (para este ejemplo p), viene el nombre de la funci on. Hemos llamado a esta funci on policarac. 4. Inmediatamente despu es del nombre que se usa para denir la funci on, entre par entesis se escriben nica las variables de las cuales va a depender la funci on, separadas por comas; en este ejemplo la u variable es A.
7.2 SECCION
Figura 7-42
on l ogica if y partes que lo conforman: else y end. 5. El comando de decisi 6. El comando de comparaci on l ogica ==. El comando if indica al programa que ejecute las ins l y antes de else si los miembros izquierdo y derecho de == son trucciones que est an debajo de e iguales; en caso contrario, el comando if indica al programa que ejecute las instrucciones que est an por debajo de else; en este caso desplegar el texto entre comillas. 7. La instrucci on q(1)=1 dene la primera componente del vector q igual a 1. 8. La instrucci on q(2)=-trace(A) dene la segunda componente del vector q igual a la evaluaci on de la funci on trace en la variable A. trace es una funci on de M ATLAB que calcula la traza de la matriz en la que se eval ua. 9. La instrucci on q(3)=det(A), dene la tercera componente del vector q igual a la funci on det evaluada en la variable A. det es una funci on de M ATLAB que calcula el determinante de la matriz en la que se eval ua. 10. La asignaci on del valor q a la variable p mediante la instrucci on p=q. 11. Todos los textos despu es del signo % son comentarios que no ejecuta el programa. Sin embargo, todo lo que se escriba despu es de ellos, al inicio del programa, se desplegar a en la ventana de M ATLAB si se ejecuta la instrucci on help policarac; por tanto, estos comentarios sirven para ayudar al programador a describir la funci on y su uso. ltimo, el archivo debe guardarse con el mismo nombre que tiene la funci Por u on con la extensi on, asignada por defecto en este editor, m ; en este caso policarac.m. Veamos c omo trabaja la funci on policarac.m : EDU help policarac La funci on policarac(A) calcula los coeficientes [a b c] del polinomio caracter stico a 2*r+b*r+c de la matriz A si esta es de tama! no 2x2.
a Uso de tecnolog
EDU C=[-1 3 1 2] C = -1 3 1 2 EDU policarac(C) ans = 1 -1 -5 EDU D=[1 1;-1 2; 3 1]; EDU policarac(D) ans = la matriz no es de tamano 2x2. EDU En el apartado 7.2.5 vimos c omo con M ATLAB es posible realizar manualmente las operaciones de rengl on Ri R j , Ri R j y Ri aRi + bR j ; lo que resulta muy laborioso hacer cada vez que se necesite. Los siguientes listados contienen la programaci on de tres funciones para este n; con ellas ser a m as sencillo ejecutar operaciones de rengl on; sin embargo, m as adelante vamos a construir un programa en M ATLAB que usar a estas funciones y que har a este proceso mucho m as amigable.
intercambiofilas Funcion
function m=intercambiofilas(A,i,j) %intercambiofilas(A,i,j) %intercambia la fila Ri con la fila Rj %de la matriz A. I=A(i,:); J=A(j,:); A(i,:)=J; A(j,:)=I; m=A;
cambio_de_escala Funcion
function m=cambio_de_escala(A,alpha,i) %cambio_de_escala(A,alpha,i) %multiplica la fila i de A %por el escalar alpha A(i,:)=alpha*A(i,:); m=A;
sumafilas Funcion
%sumafilas(matriz,filai,filaj,alpha,beta) %realiza la operacion de rengl on %R_i<--->alpha*R_i+beta*R_j} a la matriz A es decir, cambia la filai por alpha veces filai m as
7.2 SECCION
beta veces filaj matriz(filai,:)=alpha*matriz(filai,:)+beta*matriz(filaj,:); M=matriz; Recuerde que una vez que se hayan escrito cada una de estas funciones en el editor de texto de M ATLAB, se deben guardar con su respectivo nombre y con extensi on m. Veamos ahora c omo trabajan en M ATLAB: EDU M=[3 1 -1 2; 1 3 -1 1; -1 1 1 1] M = 3 1 -1 1 3 -1 -1 1 1 EDU M1=intercambiofilas(M1,1,2) M1 = 1 3 -1 3 1 -1 -1 1 1 EDU M1=sumafilas(M1,2,1,1,-3) M1 = 1 3 -1 0 -8 2 -1 1 1 EDU M1=sumafilas(M1,3,1,1,1) M1 = 1 3 -1 0 -8 2 0 4 0 EDU M1=sumafilas(M1,3,2,2,1) M1 = 1 3 -1 0 -8 2 0 0 2 EDU M1=cambio_de_escala(M1,1/2,3) M1 = 1 3 -1 0 -8 2 0 0 1
2 1 1
1 2 1
1 -1 1
1 -1 2
1 -1 3
1 -1 3/2
Note que a un se est an haciendo los c alculos en el formato rat de M ATLAB. Aunque lo precedente ya es de bastante ayuda para facilitar los c alculos, todav a resulta muy tedioso tener que teclear tanta informaci on. En el siguiente apartado disenaremos un programa que har a mucho m as amigable este proceso.
a Uso de tecnolog
lector tiene que reproducir el texto del programa, salvar el archivo con extensi on m, ejecutarlo en M ATLAB tecleando el nombre con el que lo guard o y oprimiendo la tecla ENTER. Sobra decir que el lector es libre de usarlo y modicarlo como le convenga. La gura 7-43 contiene el gui on del programa l se utilizar Gauss_Jordan; en e an las funciones intercambiofilas, cambio_de_escala y sumafilas que vimos en el apartado precedente; as que el lector interesado en usar este programa tiene tambi en que teclear esas funciones y guardarlas en el mismo directorio que el programa Gauss_Jordan. A continuaci on se describe grosso modo este programa:
%Programa Gauss_Jordan. %Este programa ejecuta las operaciones de rengl on %que el usuario desee aplicar para llevar una matriz %a una forma escalonada o a la forma escalonada reducida. %Las operaciones intercambio de filas: R_i<--->R_j, %cambio de escala: R_i<--->kR_i %y suma de filas: R_i<--->aR_i+bR_j, %se llevan a cabo pidiendo al usuario que introduzca %la informaci on necesaria en forma interactiva. %Para iniciar este programa basta teclear su nombre %en la ventana de matlab, oprimir la tecla enter %y seguir las indicaciones. clc;clear; fprintf( \n Autor: Juan Carlos Del Valle Sotelo ); fprintf( \n ***M etodo de Gauss-Jordan con operaciones de rengl on ); fprintf( \n definidas por el usuario***\n\n ); format rat; M=input( Escriba la matriz con la que desea trabajar: ) H=M; f=1; while f==1 respuesta1=input... ( \nElija: 1 intercambio de filas, 2 cambio de escala, 3 suma if respuesta1==1 respaldo=H; x=input( \nR_i<--->R_j: escriba la matriz [i j] : ); H=intercambiofilas(H,x(1),x(2)) elseif respuesta1==2 respaldo=H; v=input( \n R_i<--->kR_i: escriba la matriz [k i]: H=cambio_de_escala(H,v(1),v(2)) elseif respuesta1==3 respaldo=H; w=input( \nR_i<-->aR_i+bR_j: escriba la matriz [i j H=sumafilas(H,w(1),w(2),w(3),w(4)) end d=input( CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR if d==0 H=respaldo elseif d==1 f=1; elseif d==2 f=0; end end
de filas:
);
);
a b]:
);
oprimir 2:
);
Figura 7-43 Programa en M ATLAB para aplicar el m etodo de Gauss-Jordan paso a paso con operaciones de rengl on denidas por el usuario.
7.2 SECCION
1. El programa establece en el inicio el formato rat para trabajar con n umeros racionales. 2. La instrucci on input escribe un mensaje de texto en la pantalla de M ATLAB y asigna a la variable que est a a la izquierda del signo = el valor que el usuario teclee despu es de los dos puntos. 3. El ciclo while repite todas las instrucciones que est an por debajo de esta palabra en tanto que la armaci on l ogica f==1 sea verdadera. 4. El comando de decisi on if ya se explic o antes. 5. El comando elseif es similar al comando de decisi on else, que se describi o antes, pero ejecuta l si la condici las instrucciones que est an por debajo de e on que est a a su derecha es verdadera. 6. En el programa se utilizan las funciones ya programadas intercambiofilas , sumafilas y cambio_de_escala. 7. La opci on CANCELAR tiene el efecto de deshacer una operaci on de rengl on que el usuario haya realizado y considere no adecuada, regresando el programa a la matriz del paso inmediato anterior. 8. El programa debe guardarse con alg un nombre y con extensi on m en el mismo directorio donde se encuentran las funciones mencionadas antes. El nombre con el que se guard o en este caso fue Gauss_Jordan.m . es de la instrucci on input que est an por debajo del co Nota 7.7 Los tres puntos suspensivos despu nicamente para que el texto no se saliera de la caja que es visible para mando while, se escribieron as u este libro; sin embargo, los tres puntos suspensivos se utilizan para indicar, en la sintaxis de programaci on en M ATLAB, que la instrucci on contin ua en la siguiente l nea. Escribir as evita que en M ATLAB se genere un error si la instrucci on se corta para continuar en la siguiente l nea.Sin embargo, esto debe hacerse con cuidado porque una instrucci on no se puede interrumpir de esta manera en cualquier parte de la misma. Ilustremos c omo corre este programa:
EDU Gauss_Jordan Autor: Juan Carlos Del Valle Sotelo etodo de Gauss-Jordan con operaciones de rengl on ***M definidas por el usuario*** Escriba la matriz con la que desea trabajar: [3 -1 2 1; 1 2 -1 1; 2 -1 1 3] M = 3 -1 2 1 1 2 -1 1 2 -1 1 3 Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de filas: R_i<--->R_j: escriba la matriz [i j] : [2 3] H = 3 -1 2 1 2 -1 1 3 1 2 -1 1 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: 0 H = 3 1 2 -1 2 -1 2 -1 1 1 1 3 1
Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de filas: R_i<--->R_j: escriba la matriz [i j] : [1 2] H = 1 2 -1 1 3 -1 2 1 2 -1 1 3 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: 1
a Uso de tecnolog
Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<-->aR_i+bR_j: escriba la matriz [i j a b]: [2 1 1 -3] H = 1 2 -1 1 0 -7 5 -2 2 -1 1 3 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<-->aR_i+bR_j: escriba la matriz [i j a b]: [3 1 1 -2] H = 1 2 -1 1 0 -7 5 -2 0 -5 3 1 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<-->aR_i+bR_j: escriba la matriz [i j a b]: [3 2 -7 5] H = 1 2 -1 1 0 -7 5 -2 0 0 4 -17 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<--->kR_i: escriba la matriz [k i]: [1/4 3] H = 1 2 -1 1 0 -7 5 -2 0 0 1 -17/4 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<-->aR_i+bR_j: escriba la matriz [i j a b]: [2 3 1 -5] H = 1 2 -1 1 0 -7 0 77/4 0 0 1 -17/4 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<-->aR_i+bR_j: escriba la matriz [i j a b]: [1 3 1 1] H = 1 2 0 -13/4 0 -7 0 77/4 0 0 1 -17/4 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<--->kR_i: escriba la matriz [k i]: [-1/7 2] H = 1 2 0 -13/4 0 1 0 -11/4 0 0 1 -17/4 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: Elija: 1 intercambio de filas, 2 cambio de escala, 3 suma de R_i<-->aR_i+bR_j: escriba la matriz [i j a b]: [1 2 1 -2] H = 1 0 0 9/4 0 1 0 -11/4 0 0 1 -17/4 CANCELAR oprimir 0. CONTINUAR oprimir 1. TERMINAR oprimir 2: EDU
filas:
1 filas:
1 filas:
1 filas:
1 filas:
1 filas:
1 filas:
1 filas:
7.2 SECCION
lgebra lineal y matrices; a su M ATLAB tiene una serie de funciones especialmente dise nadas para a descripci on nos abocamos en lo que sigue.
a Uso de tecnolog
EDU M=[1 2 3; 4 5 6] M = 1 4 2 5 3 6
Como se mencion o antes, en M ATLAB no es necesario hacer ninguna declaraci on especial de variables para trabajar con n umeros complejos:
EDU F=[1+i 2+3i 1; -1 -2i 1+3i; 1 -1 5i] F = 1 + -1 1 EDU det(F) ans = -13 EDU inv(F) ans = -19/697 267/1394 57/1394 EDU 212/697i 139/1394i 61/1394i -266/697 253/1394 101/1394 + 180/697i 145/1394i 157/1394i 14/41 -9/82 -1/82 + + 3/41i 1/82i 9/82i + 1i 2 0 -1 + 3i 2i 1 1 0 + + 3i 5i
35i
7.2 SECCION
Entonces, para resolver un sistema de ecuaciones Ax = b con M ATLAB, se escribe la matriz ampliada [A b], se lleva a forma escalonada reducida con el comando rref y se hace sustituci on regresiva en forma manual. Resolvamos con M ATLAB el sistema x1 x1 2x1 4x1
+
+ + +
EDU A=[1 -2 3 -4; -1 3 -5 1; 2 -1 2 -3; 4 -5 8 -11] A = 1 -2 3 -4 -1 3 -5 1 2 -1 2 -3 4 -5 8 -11 b = -1 2 3 1 EDU AuG=[A b] AuG = 1 -1 2 4 EDU rref(AuG) ans = 1 0 0 0
-2 3 -1 -5
3 -5 2 8
-4 1 -3 -11
-1 2 3 1
0 1 0 0
0 0 1 0
-3 11 7 0
2 3 1 0
Al hacer sustituci on regresiva se obtiene: x3 = 1 7x4 ; x2 = 1 + 2x3 + 3x4 = 3 11x4 ; x1 = 1 + 2x2 3x3 + 4x4 = 2 + 3x4 . Esto es,
2 + 3r x1 x2 3 11r x3 = 1 7r ; r R, r x4
a Uso de tecnolog
Ilustremos el uso de estos comandos. Con el formato rat : EDU A=[2 1 0;-1 0 1; 1 3 1]; EDU eig(A) ans = -1 2 2 EDU [V D]=eig(A) V = -1020/5201 919/1562 -1121/1429 D = -1 0 0 EDU poly(A) ans = 1 -3 0 4 -985/1393 0 -985/1393 0 2 0 -985/1393 0 -985/1393 0 0 2
Con el formato por defecto de M ATLAB (format) : EDU format EDU eig(A) ans = -1.0000 2.0000 2.0000 EDU [V D]=eig(A)
2 1 p() = det(In A).
7.2 SECCION
V = -0.1961 -0.7071 0.5883 0.0000 -0.7845 -0.7071 D = -1.0000 0 0 2.0000 0 0 EDU M=[1 1;-1 2] M = 1 1 -1 2 EDU eig(M) ans = 1.5000+ 0.8660i 1.5000- 0.8660i Podemos utilizar el modo simb olico de M ATLAB para calcular valores y vectores propios de la siguiente manera: EDU eig(sym(M)) ans = [ 3/2+1/2*i*3 (1/2)] [ 3/2-1/2*i*3 (1/2)] Y para visualizar un poco mejor el resultado, utilizamos el comando pretty que se describi o antes. EDU pretty(ans) ans= [ 1/2] [3/2 + 1/2 i 3 ] [ ] [ 1/2] [3/2 - 1/2 i 3 ] EDU [V D]=eig(sym(M)) V = [ 1/2-1/2*i*3 (1/2), 1/2+1/2*i*3 (1/2)] [ 1, 1] D = [ 3/2+1/2*i*3 (1/2), 0] [ 0, 3/2-1/2*i*3 (1/2)] EDU pretty(V) [ 1/2 [1/2 - 1/2 i 3 [ [ 1 1/2 + 1/2 i 3 1 1/2] ] ] ] -0.7071 0.0000 -0.7071 0 0 2.0000
a Uso de tecnolog
(Cfr. ejemplo 4.33) La instrucci on [L U P]=lu(X) produce una matriz triangular inferior L, una matriz triangular superior U y una matriz de permutaci on P tal que P*X=L*U:
EDU X=[1 3 -1; 2 8 4; -1 3 4] X = 1 3 -1 2 8 4 -1 3 4 EDU [L U P]=lu(X) L = 1.0000 -0.5000 0.5000 U = 2.0000 0 0 P = 0 0 1 EDU P*X ans = 2 -1 1 EDU L*U ans = 2 -1 1 EDU 0 1.0000 -0.1429 8.0000 7.0000 0 1 0 0 0 1 0 0 0 1.0000 4.0000 6.0000 -2.1429
8 3 3
4 4 -1
8 3 3
4 4 -1