Manual Practicas Algebra Lineal 2012
Manual Practicas Algebra Lineal 2012
Manual de Prácticas de
Enero 2012
Álgebra Lineal con MATLAB
PRESENTACIÓN
Este documento con que cuenta el alumno será la base para que el estudiante de Álgebra
Lineal para que pueda acreditar la parte práctica del curso.
Es muy importante resaltar que este manual está especialmente diseñado para los
estudiantes de Ingenierías del Instituto Tecnológico Superior de Santiago Papasquiaro.
Este manual contiene todo lo que el alumno de matemáticas necesita saber para poder
comenzar a realizar las prácticas de laboratorio de álgebra lineal.
Ahora depende de ti alumno, qué tanto te quieres esforzar para lograr el aprendizaje en
este semestre. Recuerda que lo más importante en el proceso de enseñanza—
aprendizaje eres tú.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 2
ÍNDICE
METODOLOGÌA DE TRABAJO 3
INTRODUCCIÓN A MATLAB
PRÁCTICA 1
PRIMERAS EXPERIENCIAS CON MATLAB 5
PRÁCTICA 2
NÚMEROS COMPLEJOS 11
PRÁCTICA 3
MANEJO DE VECTORES Y MATRICES 15
PRÁCTICA 4
OPERACIONES CON MATRICES 19
PRÁCTICA 5
CRIPTOGRAFÍA 23
PRÁCTICA 6
OPERACIONES CON RENGLONES 24
PRÁCTICA 7
APLICACIÓN GRÁFICA EN 3D 31
PRÁCTICA 8
FLUJO DE TRÁFICO 36
PRÁCTICA 9
FLUJO DE TRÁFICO 37
PRÁCTICA 10
BALANCEO DE REACCIONES QUÍMICAS 38
PRÁCTICA 11
DISTRIBUCIÓN DE CALOR 39
PRÁCTICA 12
CAMBIO DE BASE Y BASES ORTONORMALES 40
PRÁCTICA 13
TRANSFORMACIONES LINEALES 45
BIBLIOGRAFÍA 47
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 3
METODOLOGÍA DE TRABAJO
Este manual es el instrumento de trabajo para que el estudiante de la materia de Álgebra Lineal
acredite la parte práctica de la materia.
A continuación se explican los apartados que contiene cada práctica de esta manual.
• Objetivo de la práctica. Es lo que se espera que el alumno conozca, comprenda o adquiera una
habilidad al terminar cada práctica individual.
• Desarrollo de la Práctica. En este apartado se explica qué es lo que debe de hacer el alumno
en la práctica. Algunas prácticas se harán en conjunto con todo el grupo y algunas otras se
harán de forma individual y la forma de trabajo es indicada en el inicio de éste punto.
• Ejercicios propuestos. Aquí se incluyen ejercicios para que el alumno los realice para reforzar
el aprendizaje requerido en el desarrollo de la práctica.
• Observaciones y conclusiones personales. Una vez que el alumno haya terminado la práctica,
en esta sección deberá hacer la anotación de sus observaciones y conclusiones personales.
Estas conclusiones y/o observaciones son con respecto al aprendizaje logrado en la práctica,
una reflexión sobre las actividades realizadas y no un mero resumen de las mismas. Una vez
escritas asegúrese que el docente le dé por aceptada la práctica en la hoja de Control Personal
de Prácticas, ubicada al final de este manual.
Aunque lo deseable sería que cada alumno que tenga este manual, contara con su propio equipo y
versión del programa para que pudiera trabajar simultánea e interactivamente
INTRODUCCIÓN A MATLAB
Muchas veces en nuestra vida diaria contamos con fantásticos recursos a nuestro alcance que sin
embargo desaprovechamos o incluso ni siquiera utilizamos, en ocasiones por no saber usarlos o
por tener poco conocimiento acerca de ellos. Uno de estos lo constituye precisamente MATLAB;
esta es una muy buena herramienta para el análisis matemático (numérico y gráfico) que nos
puede facilitar enormemente nuestro trabajo y ahorrarnos una gran cantidad de tiempo.
Lo anterior no quiere decir que los programas para PC vayan a desplazar la manera de aprender
las matemáticas de la forma tradicional (con lápiz y papel), ni tampoco que nos vaya a quitar la
necesidad de desarrollar nuestras destrezas y habilidades matemáticas, incluso es necesario saber
lo que queremos realizar en MATLAB para poder hacerlo. Simplemente debemos de ver a
MATLAB como una herramienta que nos será de gran ayuda.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 4
.
MATLAB es el nombre abreviado de “MATrixLABoratory” (laboratorio de matrices). MATLAB es
un programa para realizar cálculos numéricos con vectores y matrices. Como caso particular
puede también trabajar con números escalares tanto reales como complejos, con cadenas de
caracteres y con otras estructuras de información más complejas. Una de las capacidades más
atractivas es la de realizar una amplia variedad de gráficos en dos y tres dimensiones. MATLAB
tiene también un lenguaje de programación propio.
MATLAB contiene partes de proyectos profesionales de alta calidad para cómputos de álgebra
lineal. El código MATLAB está escrito en C, aunque muchas rutinas y funciones están en el
lenguaje MATLAB y son actualizadas con cada nueva versión del software. MATLAB está
disponible para Microsoft Windows, computadores Macintosh y estaciones de trabajo Unix y VMS.
MATLAB tiene una amplia gama de capacidades. En este manual sólo aprovecharemos unas
cuantas. Veremos que la estructura de las instrucciones de MATLAB es muy parecida a la forma
en que escribimos expresiones algebraicas y las operaciones del álgebra lineal. Los nombres de
muchas instrucciones son muy parecidos a los de las operaciones y los conceptos del álgebra
lineal. Aquí describiremos las instrucciones y las características de MATLAB relacionadas
directamente con el curso.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 5
PRÁCTICA #1
PRIMERAS EXPERIENCIAS CON MATLAB
OBJETIVO
Que el alumno conozca el entorno de trabajo MATLAB, sus diferentes ventanas y su
funcionamiento, y que comprenda la ejecución de los comandos iniciales de MATLAB.
INTRODUCCIÓN
La parte más importante de la ventana inicial es la Command Window, que aparece en la parte
derecha. En esta sub-ventana es donde se ejecutan los comandos de MATLAB, a continuación del
prompt (aviso) característico (>>), que indica que el programa está preparado para recibir
instrucciones. En la figura 1 se presenta la Command Window. En este caso el prompt se
muestra como EDU>> que significa que es una edición demo educacional gratuita.
DESARROLLO DE LA PRÁCTICA
Ahora vamos a comenzar a trabajar con MATLAB. Recordemos que MATLAB es un programa a
base de comandos, así que nosotros siempre trabajaremos en Command Window. Iniciemos
MATLAB en nuestra computadora y ubiquemos en la parte derecha del programa la ventana de
Command Window. En esta parte debemos de esperar el prompt de MATLAB que se
representan como dos símbolos de mayor que (EDU>>), esto significa que el programa está listo
para recibir instrucciones.
Operaciones Básicas
Una vez que estemos listos para continuar, comenzaremos con las operaciones básicas de
aritmética (suma, resta, multiplicación y división). Dado que MATLAB también puede ser utilizado
como una calculadora científica, el uso de estas operaciones básicas resulta bastante familiar y
sencillo.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 6
MATLAB puede sumar cualquier cantidad de números utilizando la tecla + desde su teclado, y tal
como se representa en una hoja de papel se debe de escribir en el prompt. Sumemos 2 y 3,
recuerde que al finalizar debe presionar la tecla enter. MATLAB regresa lo siguiente en pantalla:
suma
Las letras ans significan respuesta (answer en inglés). Significa que la suma de 2 y 3 es igual a 5.
Ahora intentemos con la operación de sustracción, para esto utilizamos la tecla – del teclado.
Restemos 3 a un 8. La pantalla de MATLAB debería de ser:
resta
multiplicación
La división es un procedimiento similar. Se usa la tecla / del teclado. Se indica primero el divisor y
después el dividendo. Por ejemplo dividir 15 entre 3:
división
Una vez que se ha comprendido las operaciones básicas, podemos combinarlas tal y como lo
hacemos en una calculadora científica. Podemos utilizar la notación de paréntesis para agrupar
operaciones que tengan más jerarquía.
Un ejemplo de esto será sumar a 3 y 4, multiplicarlo por la resta de 3 y 2 y todo ello dividirlo entre
la suma de 4 con la multiplicación de 2 y 2:
MATLAB presenta únicamente cuatro decimales cuando se obtienen resultados no enteros. Más
adelante se explicará cómo visualizar fracciones obtenidos de alguna operación.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 7
Asignación de Variables
Ahora utilizaremos MATLAB para asignar valores a variables. MATLAB puede tener un gran
número de variables, tantas como tantas combinaciones se le ocurran al usuario. Por el momento
utilizaremos variables con una sola letra.
asignación
Note que aquí no estamos hacienda ninguna operación, por esta razón las letras ans no aparecen,
en vez de esto aparece x =, que significa una confirmación de la variable que definió. Después
aparece un 3, que significa la confirmación del valor que le asignó a la variable anterior.
Algunas veces, después de definir varias variables, nos resulta difícil acordarnos de todos los
valores que hemos definido. MATLAB puede desplegar el valor de cada una de variable con
simplemente escribir en el prompt el nombre de la variable que queramos visualizar:
despliegue
En este ejemplo escribimos simplemente x, MATLAB regresa el nombre de la variable con el último
valor con el que la variable x fue definida.
Esto significa que MATLAB define la variable y con el valor de 2, sin embargo no despliega la
confirmación. Si en determinado momento deseamos saber el valor de la variable y, simplemente
escribimos:
Ahora redefiniremos la variable X con el valor de 5, note que ya teníamos una x (minúscula) con el
valor de 3, y ahora tenemos una X (mayúscula) con 5:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 8
Esto significa que MATLAB sí reconoce entre mayúsculas y minúsculas. Por lo que x y X son
variables diferentes.
Una vez que se hayan definido las variables, se pueden hacer las mismas operaciones aritméticas
en MATLAB, utilizando la variable x y la variable y definidas anteriormente:
Recuerde que x=3 y y=2. Otra forma de asignar variables en MATLAB es mediante la operación de
dos o más variables anteriormente definidas. Por ejemplo:
En este caso la variable z va a ser la suma de la variable x mas la variable y. Utilizamos el punto y
coma en el comando anterior por lo que el resultado no se desplegó. Si deseamos conocer el valor
de la variable z:
Exponenciación y Radicación
Utilizando el símbolo ^ del teclado se puede realizar la operación exponenciación. Por ejemplo
elevar z al cuadrado en MATLAB:
exponenciación
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 9
Recuerde que z tenía el valor de 5. Ahora utilizar la operación para elevar z al cubo:
exponenciación
Se puede utilizar cualquier potencia que se desee elevar escribiéndola después de ^. Ahora
veremos la función para la raíz cuadrada. Este comando es sqrt (square root) y entre paréntesis se
coloca el valor o la variable que se desee obtener la raíz cuadrada, por ejemplo:
radicación
Acabamos de obtener la raíz cuadrada de 5. Observe que la función sqrt sólo sirve para obtener la
raíz cuadrada. Sin embargo, podemos utilizar el mismo símbolo ^ para obtener la raíz cuadrada de
un número. Recuerde que la raíz cuadrada de una cantidad es igual a elevar la cantidad a la
potencia ½:
radicación
Se escribe el ½ entre paréntesis para indicar a MATLAB que la jerarquía es dividir el 1 entre el 2 y
después hacer la potenciación.
Podemos utilizar también el símbolo ^ para obtener las inversas de los números. Recuerde que
elevar a la potencia -1 es igual a obtener la inversa de ese número:
inversa de un número
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 10
EJERCICIOS PROPUESTOS
Defina las variables x=10, y=5 y z=-3 y resuelva las siguientes operaciones:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 11
PRÁCTICA #2
NÚMEROS COMPLEJOS
OBJETIVO
Que el alumno comprenda la forma de introducir valores complejos en MATLAB y que maneje las
operaciones de suma, resta, multiplicación y división utilizando el operador imaginario i.
DESARROLLO DE LA PRÁCTICA
Ahora nos tocará verificar en MATLAB lo que se conoce sobre números complejos. Un complejo es
un número que se compone de una parte real y de una parte imaginaria. El operador imaginario
conocido es i, como sabemos i = √-1. En algunas ocasiones en lugar de utilizar la letra i se utiliza la
j. Necesitamos definir primero en MATLAB la variable j como el operador complejo:
Note que se define a j como 0 en parte real y un 1 en parte imaginaria. MATLAB por default
también define el operador imaginario i sin necesidad de definirlo con anterioridad. Simplemente
basta con teclear i:
Cuando se está en ambiente MATLAB y se define un número complejo se escribe por separado la
parte real y se le suma (o resta) la correspondiente parte imaginaria siendo multiplicada por el
operador complejo:
Incluso es tan sencillo que el operador complejo puede ser escrito sin necesidad del símbolo de
multiplicación *:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 12
definición de complejos
suma de complejos
resta de complejos
multiplicación de complejos
división de complejos
Como usted puede observar las operaciones con complejos son tan sencillas como las aritméticas
vistas en la práctica anterior. En este punto seguramente ya ha deducido las operaciones de
exponenciación y radicación son similares que las aritméticas:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 13
exponenciación y radicación
En el ejemplo anterior eleva al cuadrado el complejo a y obtiene la raíz cuadrada del mismo
complejo a.
MATLAB ofrece, además, los comandos de conj(a) para mostrar el complejo conjugado, real(a)
para mostrar la parte real y imag(a) para mostrar la parte imaginaria de un número complejo a.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 14
EJERCICIOS PROPUESTOS
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 15
PRÁCTICA #3
MANEJO DE VECTORES Y MATRICES
OBJETIVO
Que el alumno comprenda la forma de introducir vectores y matrices a MATLAB y que maneje las
operaciones de suma, multiplicación por un escalar y operaciones entre renglones para matrices.
DESARROLLO DE LA PRÁCTICA
Vectores en MATLAB
Iniciemos una sesión con el MATLAB analizando cómo introducir un vector. La instrucción es
sencilla. Para introducir un vector fila (vector renglón) se teclean los componentes encerrados en
un corchete, separándolas con un espacio. Los vectores generalmente siempre van asignados a
una variable. Por ejemplo:
vector renglón
Recuerde que los vectores también pueden representarse como un vector columna. Para hacer
eso se teclean los componentes encerrados en un corchete, separándolos por un punto y coma “;”.
Los vectores siempre van asignados a una variable. Ejemplo:
vector columna
Tecleemos los vectores (1,2,1) y el vector (2,-1,1) en MATLAB para continuar con las operaciones
con vectores.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 16
Es fácil realizar la suma y la multiplicación escalar en MATLAB. Para sumar los vectores x y y,
escribimos x+y:
suma de vectores
Del mismo modo, para realizar la multiplicación escalar se escribe el escalar y el vector, utilizando
el operador * visto en la sección anterior, por ejemplo 2*x:
Como vimos en la sección anterior, las operaciones de ciertas variables también pueden ser
asignadas a alguna otra variable, como en el ejemplo:
Matrices en MATLAB
Para introducir una matriz en MATLAB, sólo escriba los componentes encerrados entre corchetes,
separándolas con un espacio y los renglones con un punto y coma. Las matrices generalmente
siempre van asignadas a una variable. Por ejemplo:
introducción de matriz
Una vez que hemos introducido alguna matriz, podemos hacer referencia a cualquier componente
de esa matriz, por ejemplo con el comando A(m,n) visualizamos el componente en el renglón m y
la columna n de la matriz A. Ejemplo:
componente (2,1) de A
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 17
O podemos ver un renglón completo de la matriz A con el comando A(m,:), aquí se despliega el
renglón m de la matriz A. Ejemplo:
renglón 3 de A
Visualizar cualquier columna de A también es posible. Use el comando A(:,n), aquí se despliega la
n columna de la matriz A:
columna 2 de A
Matriz Aumentada
Para crear la matriz aumentada C se utiliza el comando C = [A b], ahora la matriz C se compondrá
de una matriz A junto con un vector b. Tal y como se representa en un sistema de ecuaciones
lineales:
matriz aumentada
NOTA: Para que el comando [A b] sea válido, el vector b debe de estar colocado en la forma de vector columna y que el número de
componentes del vector b debe de ser igual al número de renglones de la matriz A.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 18
EJERCICIOS PROPUESTOS
a) a+b e) 3d
b) 2a f) –2c
c) –3b g) 3c–2d
d) 5a–2b h) 4d+5c
1 − 1 2 − 1 4 1
B =3 − 1 4 ,
C=3 1 1
2 0 − 7 1 − 2 − 3
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 19
PRÁCTICA #4
OPERACIONES CON MATRICES
OBJETIVO
Que el alumno maneje las operaciones de suma de matrices, multiplicación por un escalar,
multiplicación de matrices en MATLAB y que sea capaz de obtener la inversa de una matriz.
DESARROLLO DE LA PRÁCTICA
Ahora podemos hacer algunas operaciones básicas con matrices, comencemos por definir dos
matrices:
Para realizar la suma de dos matrices simplemente hágalo con el comando + tal y como si fueran
operaciones aritméticas:
suma de matrices
resta de matrices
NOTA: Recuerde que tanto para la suma como la resta matriciales, ambas matrices deben de ser del mismo tamaño.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 20
multiplicación de matrices
NOTA: Recuerde que para la multiplicación de matrices. Éstas deben de ser compatibles en tamaño. Una matriz de mxn por otra de
nxp genera una matriz de mxp.
La potencia de una matriz se realiza utilizando el comando ^ como se había visto en las
operaciones aritméticas:
Para obtener la inversa de una matriz con MATLAB tenemos varias opciones. Primero recordemos
nuestra matriz de ejemplo ya definida:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 21
Ahora utilizaremos el comando inv(x) que regresa la matriz inversa de la variable x. Para este
ejemplo:
MATLAB regresa la matriz inversa. Recuerde que si desea obtener las fracciones en vez de los
decimales debe de usar el comando format rat. Verifique el resultado de la inversa.
Otra forma más de obtener la inversa de una matriz es utilizar el comando ^ y elevar la matriz al
exponente –1:
Para la última forma de obtener la matriz inversa introduciremos el comando eye(x) que despliega
una matriz identidad de tamaño x:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 22
EJERCICIOS PROPUESTOS
1 − 1 0 − 3 2 2 2 3 − 1
A = 0 3 1 , B = 2 1 − 1 , C=− 1 2 − 1
2 2 5 1 0 3 4 1 0
a) A+B e) 2A-3Bt i) A3
b) B-C f) 4AB j) B–1
c) 4C g) BC-4A k) (AC)–1
d) At h) A(B-2C) l) C–1
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 23
PRÁCTICA #5
CRIPTOGRAFÍA
OBJETIVO
Que el alumno sea capaz de codificar y decodificar mensajes utilizando una matriz de código para
un problema de aplicación de matrices sobre criptografía utilizando MATLAB.
DESARROLLO DE LA PRÁCTICA
Uno de los procedimientos que se utilizan para encriptar un mensaje secreto es hacer uso de una
determinada matriz cuadrada cuyos elementos son enteros y cuya matriz inversa también contiene
elementos enteros.
Codificación. Se recibe un mensaje, se asigna un número a cada letra (por ejemplo A=1, B=2,
etc., y espacio = 27), se arreglan los números en una matriz de izquierda a derecha en cada
renglón, donde el número de elementos en el renglón es igual al tamaño de la matriz de código, se
multiplica esta matriz por la matriz de código por la derecha, se transcribe el mensaje a una cadena
de números (que se lee de izquierda a derecha a lo largo de cada renglón) y se manda el mensaje.
a. Usted ha recibido el siguiente mensaje que fue encriptado usando la matriz dada A.
Decodifíquelo (suponga que A=1, B=2, y así sucesivamente, y espacio = 27).
1 2 -3 4 5
-2 -5 8 -8 -9
A= 1 2 -2 7 9
1 1 0 6 12
2 4 -6 8 11
Mensaje: 47, 49, -19, 257, 487, 10, -9, 63, 137, 236, 79, 142, -184, 372, 536, 59, 70, -40, 332, 588
Nota: El primer renglón de la matriz que necesita construir es 47 49 -19 257 487. Ahora continúe
con el segundo renglón
79, 146, -179, 411, 578, 33, 19, 23, 189, 391, -19, -71, 141, -35, 37, 44, 78, -108, 187, 267
c. Haga pareja con uno de sus compañeros. Cada uno de ustedes codifique un mensaje secreto y
déselo a su compañero en un trozo de papel, cada uno deberá decodificarlo. Comparen los
mensajes y determinen si son correctos.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 24
PRÁCTICA #6
OPERACIONES CON RENGLONES
OBJETIVO
Que el alumno maneje la ejecución de operaciones con renglones sobre matrices en MATLAB y
que utilice el comando rref para la simplificación de sistemas de ecuaciones lineales.
DESARROLLO DE LA PRÁCTICA
introducción de matriz
Usamos el comando A(m,:) = x*A(m,:) para multiplicar el renglón m por el escalar x. En la matriz
anterior usemos como ejemplo:
Podemos ver que la operación realizada fue que se multiplicó todo el renglón 2 de la matriz A por
3. Usamos el comando A(m,:) = A(m,:)/x para dividir el renglón m por el escalar x. Ejemplo:
Ahora se dividió el renglón 1 de la matriz A entre 2. Usamos el comando A([x y],:) = A([y x],:) para
intercambiar el renglón x por el renglón y de una matriz A. Ejemplo:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 25
intercambio de renglones
eliminación gaussiana
Como usted ya se ha dado cuenta, estas cuatro operaciones anteriores son las mismas que se
utilizan para resolver sistemas de ecuaciones lineales.
Cada una de estas operaciones que se hicieron en MATLAB afecta a la matriz original A, si usted
desea conservar la matriz original entonces asigne a alguna otra variable sobre la cual puede usted
hacer las operaciones.
Ahora podemos usar MATLAB para resolver sistemas de ecuaciones lineales. La diferencia es que
un sistema de ecuaciones lineales es una matriz aumentada con un vector de resultados, como se
vio en la sección anterior.
En las siguientes hojas se muestra un proceso para llegar a la forma escalonada reducida por
renglones utilizando MATLAB y las operaciones analizadas hasta aquí. El sistema que se resolverá
es el siguiente:
matriz de coeficientes A
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 26
vector de términos B
matriz aumentada C
R1→ R1/2
Se elimina el término a21:
R2→R2 – 4R1
R3→R3 – 3R1
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 27
R2→ R2/–3
R1→R1 – 2R2
R3→R3 + 5R2
Se ajusta el coeficiente del tercer pivote:
R3→ – R3
R1→R1 + R3
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 28
R2→R2 – 2R3
x1 = 4
x2 = –2
x3 = 3
Comando rref
¿Le pareció bastante extenso el procedimiento anterior? Tiene razón. Ahora imagine que tiene que
hacerlo para un matriz más grande. Ahora imagine una más grande todavía. ¿Difícil verdad?
Afortunadamente MATLAB es mucho más poderoso que eso y nos proporciona el comando rref
(forma escalonada reducida por renglones) de cualquier matriz o cualquier sistema de ecuaciones
lineales.
matriz aumentada C
comando rref
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 29
Use los comandos de MATLAB para introducir la matriz, el vector de coeficientes, hacer la matriz
aumentada y dar el comando rref. El resultado es:
Lo que MATLAB da como resultado es un sistema que tiene solución múltiple debido a que tiene
un renglón de puros ceros. Ahora es deber del usuario representar los valores que regresa el
MATLAB como un sistema de ecuaciones lineales equivalente:
x1 –2/9 x3 = 3
x2 –8/9 x3 = 0
Utilice format rat para que MATLAB le muestre fracciones en lugar de decimales. Finalmente con
esta información se asignan valores para la variable arbitraria que puedan resolver el sistema.
Como por ejemplo para este caso:
Si x3 = 9, entonces x2 = 8 y x1 = 1.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 30
EJERCICIOS PROPUESTOS
Teclee los siguientes sistemas de ecuaciones lineales y utilizando el comando rref de MATLAB
interprete las soluciones que obtiene.
a)
x1 –2x2 +3x3 = 11
4x1 + x2 – x3 = 4
2x1 – x2 + 3x3 = 10
b)
x1 + x2 – x3 = 7
4x1 – x2 + 5x3 = 4
2x1 +2x2 – 3x3 = 0
c)
x1 + x2 – x3 = 7
4x1 – x2 +5x3 = 4
6x1 + x2 +3x3 = 20
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 31
PRÁCTICA #7
APLICACIÓN GRÁFICA DE 3D
OBJETIVO
Que el alumno grafique los sistemas de ecuaciones lineales y que compruebe la aplicación gráfica
MATLAB en 3D.
DESARROLLO DE LA PRÁCTICA
Ahora usaremos MATLAB para visualizar los planos que sean soluciones de ecuaciones lineales.
Para hallar los puntos de una ecuación en tres dimensiones mediante MATLAB se deberá graficar
plano por plano hasta completar el número de éstos.
Supongamos que deseamos graficar los planos formados por el sistema de ecuaciones lineales
siguiente:
–2x + 3y + z = 2 (1)
2x – 3y + z = 0 (2)
–3x + 0.2y + z = 1 (3)
Primero deberemos de tomar el primer plano (1) y despejar la variable z. El plano queda despejado
como:
𝑧 = 2𝑥 − 3𝑦 + 2
El primer comando meshgrid ordena a MATLAB que cree una cuadrícula en el plano xy. Lo que
está dentro del paréntesis significa que los puntos cuadriculados están igualmente espaciados
entre –5 y 5 a intervalos de 0.5 en los ejes x y y.
Usted puede cambiar los parámetros de meshgrid en cualquier momento, pero para esta práctica
se recomienda que el alumno deje los valores que el manual propone.
Tenga esto en cuenta, el meshgrid fue creado para el plano xy. Por lo tanto, se deberá de
despejar la variable z para ser graficada. Si usted desea despejar alguna otra variable para
graficar, por ejemplo x, el meshgrid creado deberá de ser en el plano yz.
El segundo comando indica a MATLAB que calcule el valor z de la solución a la ecuación (1) en
cada punto de la cuadrícula.
El tercer comando le indica a MATLAB que trace la gráfica de la superficie que contiene los puntos
(x,y,z). MATLAB abre otra ventana en que muestra la gráfica. Ver figura 1.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 32
Advirtamos que el conjunto de todos los puntos de una ecuación lineal con tres variables forma un
plano en el espacio.
Continuaremos graficando el plano (2). No cierre la ventana que se abrió de la figura. Hay que
despejar la variable z de éste plano. El despeje es:
𝑧 = −2𝑥 + 3𝑦
El comando hold on se utiliza para que MATLAB realice el gráfico sobre el que anteriormente
había graficado. De no utilizar el comando hold on, MATLAB creará un gráfico independiente.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 33
Ahora advertimos que las soluciones de un sistema de dos ecuaciones lineales con tres incógnitas
están formadas por puntos que se encuentran en dos planos al mismo tiempo. Mientras los
vectores normales a estos planos no sean paralelos, la intersección de los dos planos es una recta
que se representa en el espacio de tres dimensiones.
𝑧 = 3𝑥 − 0.2𝑦 + 1
Ahora podemos ver de manera gráfica que la solución de tres ecuaciones lineales simultáneas con
tres incógnitas suele ser un punto, ya que por lo general tres planos en el espacio tridimensional se
intersectan en un punto.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 34
Resolución Analítica
Por desgracia, visualizar en forma geométrica el punto de intersección de estos planos no ayuda a
obtener un valor numérico preciso de las coordenadas de este punto de intersección, pero
podemos usar MATLAB para resolver con precisión este sistema:
Si observamos bien el punto de intersección de los tres planos podríamos acercarnos al punto
0.0233 en x, 0.3488 en y y 1 en z que representa la solución del sistema.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 35
EJERCICIOS PROPUESTOS
a)
2x –y +3z = 0
–x +16y –14z = –3
4x –2y +6z = 0
b)
x +y – z = 6
2x + 2y – 2z = 16
–x – y + z = – 14
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 36
PRÁCTICA #8
FLUJO DE TRÁFICO
OBJETIVO
Que el alumno encuentre la solución de un problema de aplicación de sistemas de ecuaciones
lineales con la ayuda de MATLAB. Problema de flujo de tráfico.
DESARROLLO DE LA PRÁCTICA
a. Considere el diagrama anterior de una malla de calles de un sentido con vehículos que entran y
salen de las intersecciones. La intersección k se denota por [k]. Las flechas a lo largo de las calles
indican la dirección del flujo del tráfico. Sea xi = número de vehículos/h que circulan por la calle i.
Suponiendo que el tráfico que entra a una intersección también sale, establezca un sistema de
ecuaciones que describa el diagrama del flujo de tráfico. Por ejemplo, en la intersección [1]:
x1 + x5 + 100 = tráfico que entra = tráfico que sale = x3 + 300, lo que da x1 – x3 + x5 = 200.
b. Resuelva el sistema usando el comando rref. Habrá un número infinito de soluciones. Escriba
las soluciones en términos de las variables que son las naturales para elegirse de manera
arbitraria.
c. Suponga que la calle de [1] a [3] necesita cerrarse; es decir, x 3 = 0. ¿Puede cerrarse también la
calle de [1] a [4] sin cambiar los sentidos de tránsito? Si no se puede cerrar, ¿cuál es la
cantidad más pequeña de vehículos que debe poder admitir esta calle?
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 37
PRÁCTICA #9
APROXIMACIÓN POR MÍNIMOS CUADRADOS
OBJETIVO
Que el alumno sea capaz de aproximar por mínimos cuadrados un conjunto de datos utilizando
MATLAB para la resolución.
DESARROLLO DE LA PRÁCTICA
Dicha curva debe cumplir con ciertos requisitos, los cuales pueden ser encontrados en cualquier
libro de estadística. En esta práctica se tomarán las fórmulas para la regresión polinomial de
segundo grado, lo que determinará un sistema de ecuaciones mismo que se resolverá empleando
MATLAB.
Ajustar un polinomio. Se le presentan los siguientes datos, ajuste un polinomio a ellos. Puede
utilizar Microsoft Excel para determinar los coeficientes involucrados, pero resuelva el sistema con
MATLAB.
xi yi
0 2.1
1 7.7
2 13.6
3 27.2
4 40.9
5 61.1
Una vez que haya obtenido el polinomio, grafique en Microsoft Excel el polinomio y compare la
gráfica obtenida con los puntos dados. ¿Qué puede comentar de la aproximación? ¿Los datos se
ajustan exactamente?
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 38
PRÁCTICA #10
BALANCEO DE REACCIONES QUÍMICAS
OBJETIVO
Que el alumno encuentre la solución de un problema de aplicación de sistemas de ecuaciones
lineales con la ayuda de MATLAB. Problema de balanceo de reacciones químicas.
DESARROLLO DE LA PRÁCTICA
se buscan enteros positivos x1, x2, x3 y x4 que no tengan un divisor común diferente de 1, de
manera que en
C: x1 = 6x3 x1 – 6x3 =0
O: 2x1 + x2 = 6x3 + 2x4 2x1 + x2 – 6x3 – 2x4 = 0
H: 2x2 = 12x3 2x2 – 12x3 =0
Este sistema tiene más incógnitas que ecuaciones, por lo que se espera un número infinito de
soluciones. Para resolver el sistema, se introduce la matriz aumentada, se usa el comando rref y
se escribe la solución en términos de las variables arbitrarias. Será necesario elegir las variables
arbitrarias de manera que x 1, x2, x3 y x4 sean enteros sin un divisor común diferente de 1.
Para este sistema use el comando format rat. Este comando ayuda a que se desplieguen los
valores en forma de fracciones en lugar de decimales. Después despliegue la matriz utilizando el
comando rref. Para los sistemas considerados aquí, habrá una variable arbitraria correspondiente
a la última columna de la rref de la matriz de coeficientes.
a. Resuelva el sistema anterior para la reacción de fotosíntesis y encuentre los enteros x 1, x2,
x3 y x4 sin común divisor diferente de 1 que la balancean.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 39
PRÁCTICA #11
DISTRIBUCIÓN DE CALOR
OBJETIVO
Que el alumno encuentre la solución de un problema de aplicación de sistemas de ecuaciones
lineales con la ayuda de MATLAB. Problema de distribución de calor.
DESARROLLO DE LA PRÁCTICA
Se tiene una placa rectangular cuyas orillas se mantienen a cierta temperatura. Se tiene interés en
encontrar la temperatura en los puntos interiores. Considere el siguiente diagrama. Se requieren
encontrar aproximaciones para los puntos T 1 a T9, o sea, la temperatura de los puntos intermedios.
Suponga que la temperatura en un punto interior es el promedio de la temperatura de los cuatro
puntos que lo rodean: arriba, a la derecha, abajo y a la izquierda. Tenga en cuenta que no se
cuentan para el promedio las diagonales.
T1 = (100 + T2 + T4 + 50)/4
b. Resuelva el sistema usando el comando rref. Observe que se obtiene una solución única.
Use la notación = para asignar la solución a una variable x.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 40
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 41
PRÁCTICA #12
CAMBIO DE BASE Y BASES ORTONORMALES
OBJETIVO
Que el alumno compruebe utilizando la herramienta MATLAB los procedimientos para un cambio
de base y la ortonormalización de bases.
DESARROLLO DE LA PRÁCTICA
Cambio de Base
Para comenzar con el cambio de base. Recordemos el procedimiento para realizar el cambio de
base:
1 3 0 1
En R3 sea B1={i, j, k} y sea B 2= 0 , − 1, 1 . Escribir (x)B1= − 2 en (x)B2.
2 0 − 2 4
Obtener C–1 con los comandos de MATLAB. Se utiliza format rat para visualizar con fracciones la
matriz inversa:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 42
matriz de transición
1
Se obtiene el vector(x)B1= − 2 en (x)B2.
4
Ortonormalización de Gram-Schmidt
v1
u1 =
v1
v' 2
u2 = , v' 2 = v 2 − (v 2 • u1 )u1
v' 2
v' 3
u3 = , v'3 = v3 − (v3 • u1 )u1 − (v3 • u 2 )u 2
v' 3
etc.
1 0 1
Obtenga la base ortonormal en R3 comenzando con la base {v1, v2, v3}= 1 , 1 , 0 .
0 1 1
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 43
v1
Para el cálculo del vector u1 = se utiliza el comando norm(v), éste comando devuelve la
v1
norma o magnitud del vector:
Para el siguiente vector se calcula primero el valor de v' 2 = v2 − (v2 • u1 )u1 y se guarda en una
variable temporal que para auxiliarnos la llamaremos vector2primo. La función x’*y devuelve como
resultado el producto escalar (producto punto) entre x y y.
: cálculo de v’2
v' 3
Repetimos el procedimiento para encontrar u3 = , v'3 = v3 − (v3 • u1 )u1 − (v3 • u 2 )u 2 :
v' 3
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 44
A manera de ejercicio extra, comprobemos si los vectores obtenidos u1, u2 y u3 son ortogonales.
Recordemos las condiciones:
ui• ui = 0
ui• uj = 1, i ≠ j
u2 y u3 son ortonormales
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 45
EJERCICIOS PROPUESTOS
1. Sea la base B1 la correspondiente base canónica, calcule los valores que se le piden de B 1 a B2,
según la B2 dada.
1 − 1 3
a) B2 = , , calcular ( x) B1 =
3 2 − 4
1 3 0 1
b) B2 = 0 , − 1, 1 , calcular ( x) B1 = − 2
2 0 − 2 4
1 − 1
c) B = ,
3 2
1 3 0
d) B = 0 , − 1, 1
2 0 − 2
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 46
PRÁCTICA #13
TRANSFORMACIONES LINEALES
OBJETIVO
Que el alumno compruebe utilizando la herramienta MATLAB el procedimiento para el cálculo del
núcleo, nulidad, imagen y rango de una transformación lineal.
DESARROLLO DE LA PRÁCTICA
Vamos a comenzar esta práctica mencionando que para el cálculo tanto del kernel como de la
imagen de una matriz, MATLAB utiliza comandos sencillos. Sin embargo, cabe resaltar que el
kernel y la imagen de la matriz que se obtienen de estos comandos resultan ser bases de tipo
ortogonales. Aún con esto, el cálculo de la nulidad y el rango no se ven modificados.
Utilizamos el comando null(x). MATLAB regresa una base ortonormal para el espacio nulo de A (o
núcleo). Para nuestro caso tendremos:
− 0.8389 − 0.1030
Esto significa que el conjunto de vectores − 0.0521 , − 0.9622 , forman el espacio generado
0.5419 − 0.2521
para el kernel de la matriz A. Si usted desea, compruebe que los vectores son ortonormales.
Aunque MATLAB no cuenta con un comando para calcular la nulidad (A) de una matriz. Es fácil
ver el número de vectores que componen el kernel. Por lo tanto para este ejemplo (A) = 2.
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 47
Utilizamos el comando orth(x). MATLAB regresa una base ortonormal para rango de la matriz A.
Para nuestro caso tendremos:
− 0.2673
Esto significa que el conjunto formado por el único vector − 0.5345 forma una base
0.8018
ortonormal para la imagen de la matriz A. Compruebe que el vector es ortonormal.
De acuerdo con lo visto en párrafos anteriores, el rango de la matriz deberá de ser igual al número
de vectores que tiene la imagen. Por tanto el valor del rango ρ(A) = 1. El teorema que relaciona el
rango, la nulidad y el número de columnas de la matriz:
𝜌(𝐴) + 𝜐(𝐴) = 𝑛
MATLAB sí cuenta con un comando para el cálculo del ρ(A). Utilice el comando rank(A) para
encontrar el rango de una matriz:
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 48
EJERCICIOS PROPUESTOS
1. Con lápiz y papel obtenga de la transformación lineal la matriz de transformación para los
siguientes ejercicios:
1 0 0
2 − 1 5
a) T 0 = , T 1 = , T 0 =
0 3 0 4 1 − 3
x
b) Encuentre la transformación lineal de R 2 en el plano W = y | 2 x − y + 3 z = 0
z
x x
c) Sea T el operador de proyección de R en el plano xy. T y = y
3
z 0
x− y
x
y+z
d) Sea T: R → R definida por: T y =
3 4
z 2x − y − z
− x + y + 2z
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 49
BIBLIOGRAFÍA
➢ Grossman, Stanley I. / Algebra lineal.-- 5a. ed.-- México : McGraw-Hill, xxii, 634,
125 p. / 24 cm. ISBN 970-10-0890-1
GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 50
Nombre: Grupo:
2 NÚMEROS COMPLEJOS
4 OPERACIONES DE MATRICES
5 CRIPTOGRAFÍA
7 APLICACIÓN GRÁFICA EN 3D
8 FLUJO DE TRÁFICO
11 DISTRIBUCIÓN DE CALOR
13 TRANSFORMACIONES LINEALES
GMM