Sunteți pe pagina 1din 50

Santiago Papasquiaro

Manual de Prácticas de

Enero 2012
Álgebra Lineal con MATLAB

Guillermo Moorillón Meza

INSTITUTO TECNOLÓGICO SUPERIOR


de Santiago Papasquiaro

Academia de Ciencias Básicas


MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 1

PRESENTACIÓN

Bienvenido a la materia de Álgebra Lineal. Esta materia de matemáticas, además de ser


analítica tendrá una parte práctica que se deberá de cursar y acreditar.

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.

Contiene 13 prácticas que serán llevadas a cabo a lo largo del semestre,


aproximadamente una por semana. El manual de prácticas muestra la metodología que
se utilizará durante las sesiones de laboratorio y la bibliografía en la que podrás
complementar tus conocimientos

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.

Para poder terminar satisfactoriamente las prácticas de laboratorio es necesario, indispensable y


obligatorio que cada alumno cuente con su manual de prácticas, ya que en él se escribirán sus
conclusiones personales sobre cada práctica.

A continuación se explican los apartados que contiene cada práctica de esta manual.

 Nombre de la práctica. De acuerdo con el programa de estudios de la DGEST y sus prácticas


propuestas éstos son los nombres de las prácticas elegidas para la materia de Álgebra Lineal.

 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

Este Manual de Prácticas ha sido creado con


la idea de ayudar a los estudiantes de
ingeniería del ITSSP para que puedan
explorar otra alternativa en la resolución de
sus problemas tanto de la materia de Álgebra
Lineal sino de cualquier otro tipo de
matemáticas.

A lo largo de este Manual se utilizará una


versión demo de MATLAB, y se iniciará desde
los aspectos más básicos del programa. Se
incluirán los métodos a seguir para la
resolución de los problemas, así como,
planteamientos específicos de estos, todo esto
acompañado de gráficos para facilitar más su
comprensión.

.
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 es un gran programa de cálculo técnico y científico. El lenguaje de programación de


MATLAB siempre es una magnífica herramienta de alto nivel para desarrollar aplicaciones
técnicas, fácil de utilizar y que, como ya se ha dicho, aumenta significativamente la productividad
de los programadores respecto a otros entornos de desarrollo.

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.

El propio software de MATLAB ofrece descripciones en pantalla mediante la instrucción help. Al


escribir help aparece una lista de subdirectorios de MATLAB y directorios alternativos con los
archivos correspondientes a las instrucciones y los conjuntos de datos. Al escribir help nombre,
donde nombre es el nombre de una instrucción, se accede a la información relativa a la instrucción
indicada. En algunos casos, la descripción de la ayuda supera lo que se requiere para este curso.
Por lo tanto, es probable que no comprenda todo lo que despliega help.

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.

Figura 1. Command Window

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

Resultado de sustraer 3 a 8 es 5. La operación multiplicación resulta de uso similar a las dos


anteriores. Se utiliza la tecla * (asterisco) del teclado. Como ejemplo multipliquemos un 3 por un 4:

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.

Comencemos designando una variable que se llamará x con un valor de 3, la instrucción en


MATLAB es:

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.

Si necesitamos definir muchas variables dentro de un programa, probablemente la ventana de


Command Window se llenará fácilmente cada vez que MATLAB confirme los valores de las
variables que estamos asignando. Para evitar esto MATLAB permite escribir un “;” después de la
definición de variable para que MATLAB no confirme el resultado, por ejemplo:

omisión del despliegue de la asignación

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

Esto significa que 1/5 es igual a 0.2.

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 10

EJERCICIOS PROPUESTOS

Utilizando los comandos de MATLAB, resuelva las siguientes operaciones:

a) 42+39 e) 45+64+39 i) (45*34)/(45–63)

b) 28–15 f) 56–34+54 j) (32–24)*(35+12)

c) 21*32 g) 34*80*3 k) (75–25)/(32–7)

d) 45/20 h) 345/680 l) ((25–32)*56

Defina las variables x=10, y=5 y z=-3 y resuelva las siguientes operaciones:

m) x–y+z q) x^2 u) sqrt(x+y)

n) x+z–y r) sqrt(x) v) (x–z)^2

o) x*y s) z^3 w) (x+y)/(x–z)

p) x/z t) y^(1/3) x) x*y*z/(y+z)

CONCLUSIONES Y OBSERVACIONES PERSONALES

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

Introducción de Complejos en MATLAB

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:

definición del 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:

definición del complejo

Teniendo esto en cuenta ahora pasaremos a definir números complejos.

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

Operaciones con Complejos

Vamos a definir dos números complejos utilizando variables en MATLAB:

definición de complejos

Para realizar la suma de un complejo se utiliza el comando +:

suma de complejos

Para la resta de complejos utilizamos el comando –:

resta de complejos

Para la multiplicación se usa el comando *:

multiplicación de complejos

Finalmente para la división se usa el comando /:

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.

Comandos de complejos adicionales

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.

El comando conj(a) regresa el valor del conjugado del número complejo:

conjugado del complejo

El comando real(a) regresa el valor de la parte real del número complejo:

parte real del complejo

El comando imag(a) regresa el valor de la parte imaginaria del número complejo:

parte imaginaria del complejo

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 14

EJERCICIOS PROPUESTOS

1. Dados los siguientes números complejos determine lo siguiente

w = –4–3i x = 2+3i y = 5–4i z = –3+4i

a) w+x e) (w+x) – (z+y) i) y2z


b) y–z f) (w–y)z j) √(y+z)
c) wy g) yz/w k) z/(x2+y2)
d) y/z h) x2 l) (y–z)2/3w

2. Utilizando los comandos adicionales de MATLAB encuentre lo siguiente

m) conjugado de x o) parte imaginaria de z


n) parte real de y p) conjugado de w

CONCLUSIONES Y OBSERVACIONES PERSONALES

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:

multiplicación por un escalar

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:

suma y multiplicación por un escalar

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

Recordemos los valores que tenemos para la matriz A y el vector b

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

1. Introduzca los siguientes vectores a MATLAB


3  2
 1   2    
a    , b    , c   1 , d   1 
  2  3 2 1
   
2. Realice las siguientes operaciones:

a) a+b e) 3d
b) 2a f) –2c
c) –3b g) 3c–2d
d) 5a–2b h) 4d+5c

3. Introduzca las siguientes matrices a MATLAB

1  1 2   1 4 1
B 3  1 4  , 
C3 1 1 
2 0  7  1  2  3

4. Utilizando comandos de MATLAB obtenga lo que se le pide:

i) elemento (2,1) de matriz B k) matriz aumentada de C con vector c


j) elemento (1,3) de matriz C l) matriz aumentada de B con vector d

CONCLUSIONES Y OBSERVACIONES PERSONALES

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

Operaciones con Matrices

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

La operación de la sustracción es similar a la adición con el comando –:

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

La multiplicación de una matriz por un escalar se hace utilizando el comando *, ejemplo:

multiplicación por un escalar

La multiplicación de matrices utiliza el comando * tal y como se hizo en la aritmética:

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.

El comando A’ obtiene la matriz traspuesta At:

traspuesta de una matriz

La potencia de una matriz se realiza utilizando el comando ^ como se había visto en las
operaciones aritméticas:

elevar al cuadrado una matriz

Inversa de una Matriz

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:

inversa de una matriz

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.

NOTA: Recuerde que no todas las matrices tienen inversa.

Otra forma más de obtener la inversa de una matriz es utilizar el comando ^ y elevar la matriz al
exponente –1:

inversa de una matriz

Observe que se obtiene el mismo resultado que en la parte anterior.

Para la última forma de obtener la matriz inversa introduciremos el comando eye(x) que despliega
una matriz identidad de tamaño x:

matriz identidad de 3x3

Se obtiene con el ejemplo anterior una matriz identidad de 3x3.

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 22

EJERCICIOS PROPUESTOS

Introduzca las siguientes matrices a MATLAB y calcule lo siguiente:

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

CONCLUSIONES Y OBSERVACIONES PERSONALES

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.

Decodificación. El destinatario del mensaje conoce la matriz de código y reacomoda el mensaje


encriptado en una matriz de izquierda a derecha en cada renglón, en donde el número de
elementos en un renglón coincide con el tamaño de la matriz de código, multiplica por la derecha
por el inverso de la matriz de código y puede leer el mensaje decodificado (de izquierda a derecha
en cada renglón).

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

b. Decodifique el siguiente mensaje, utilice la misma matriz de codificación A.

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

Ejecución de operaciones con renglones

Comencemos por definir una matriz:

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:

renglón por un escalar

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:

renglón entre un escalar

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

Se intercambió el renglón 2 y el renglón 3 en la matriz A. Ahora usamos el comando A(x,:) = A(x,:)


+ b*A(y,:) para sumar un vector x con una vector y multiplicado por b y escribirlo en donde estaba
el vector x. Ejemplo:

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:

2x1 +4x2 +6x3 = 18


4x1 +5x2 +6x3 = 24
31 + x2 – 2x3 = 4

Introduciremos el siguiente sistema. Se define la matriz A y el vector de resultados b:

matriz de coeficientes A

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 26

vector de términos B

Se calcula la matriz aumentada C:

matriz aumentada C

Comencemos ahora con la eliminación de gauss-jordan. Se acomoda el primer pivote:

R1 R1/2
Se elimina el término a21:

R2R2 – 4R1

Se elimina el término a31:

R3R3 – 3R1

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 27

Se ajusta el coeficiente del segundo pivote:

R2 R2/–3

Se elimina el término a12:

R1R1 – 2R2

Se elimina el término a32:

R3R3 + 5R2
Se ajusta el coeficiente del tercer pivote:

R3 – R3

Se elimina el término a13:

R1R1 + R3

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 28

Se elimina el término a23:

R2R2 – 2R3

Si analizamos el resultando anterior, el sistema equivalente que hemos obtenido significa lo


siguiente:

x1 = 4
x2 = –2
x3 = 3

De lo cual se obtiene el resultado final x1 = 4, x2 = –2 y x3 = 3. El sistema tiene solución única.

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.

A manera de ejemplo resolveremos el mismo sistema. Volvamos a definir la matriz original C:

matriz aumentada C

Y a continuación tecleemos el comando rref(C), donde C es cualquier matriz de la cual se quiera


obtener la forma escalonada reducida por renglones:

comando rref

Así obtenemos los mismos resultados del ejemplo anterior.

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 29

Interpretación del resultado para sistemas de solución múltiple.

Resolvamos ahora este problema de ecuaciones lineales:

3x1 +6x2 –6x3 = 9


2x1 –5x2 +4x3 = 6
–x1 +16x2 –14x3 = –3

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

CONCLUSIONES Y OBSERVACIONES PERSONALES

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

Es ésta función la que trazamos al escribir los comandos:

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

Figura 1. Gráfica de –2x+ 3y+ z = 2

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𝑦

Seguimos escribiendo en MATLAB a partir de la gráfica previa y escribimos:

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

Figura 2. Incluida la gráfica de 2x–3y+z = 0

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.

Finalmente graficaremos el último plano (3) despejando la variable z:

𝑧 = 3𝑥 − 0.2𝑦 + 1

Las instrucciones para la última gráfica:

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

Figura 3. Incluida la gráfica de –3x+0.2y+z=1

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

Realice las gráficas de los siguientes sistemas de ecuaciones lineales.

Compruebe las soluciones utilizando el comando rref.

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

CONCLUSIONES Y OBSERVACIONES PERSONALES

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

A grandes rasgos el problema de aproximación por mínimos cuadrados (o regresión) consiste en


determinar una relación y en términos de x, lineal, cuadrática o polinomial a un conjunto de datos
dado {(xi, yi), i = 1 … n}

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.

Se requiere determinar la curva que mejor se aproxime a los datos dados. El


progreso de regresión, lleva al siguiente sistema de ecuaciones que se denominan normales:

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

Al balancear reacciones químicas tales como la de la fotosíntesis

CO2 + H20 → C6H12O6 + O2

se buscan enteros positivos x1, x2, x3 y x4 que no tengan un divisor común diferente de 1, de
manera que en

x1(CO2) + x2(H20) → x3(C6H12O6) + x4(O2)

El núcleo de átomos de cada elemento químico involucrado es el mismo en cada lado de la


reacción. El número de átomos de un elemento químico está indicado por el subíndice; por
ejemplo, en CO2 hay un átomo de C (carbono) y dos átomos de O (oxígeno). Esto conduce a un
sistema de ecuaciones homogéneo. ¿Por qué se obtiene un sistema de ecuaciones homogéneo
del “balanceo”?

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 x1, 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 x1, x2,
x3 y x4 sin común divisor diferente de 1 que la balancean.

b. Establezca el sistema de ecuaciones homogéneas que balancea la reacción entre:

MnSO4 + KMnO4 + H2O → MnO2 + K2SO4 + H2SO4

Resuelva el sistema y encuentre los enteros de x1 a x6 sin divisor común diferente de 1


que balancea la reacción.

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.

a. Usando esta suposición, establezca un sistema de ecuaciones, considerando primero el


punto T1, después el punto T2, etc. Rescriba el sistema de manera que todas las variables
estén de un lado de la ecuación. Por ejemplo, para T 1 se tiene:

T1 = (100 + T2 + T4 + 50)/4

que se puede rescribir como 4T 1 – T2 – T4 = 150.


Encuentre la matriz de coeficientes y la matriz aumentada. Describa el patrón que observe
en la forma de la matriz de coeficientes. Tal matriz se llama matriz de banda. ¿Ve de dónde
viene el nombre?

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.

c. Suponga que A es la matriz de coeficientes y b es el lado rececho del sistema anterior. Dé el


comando y = A\b. (La diagonal aquí se llama diagonal invertida. No es la diagonal de
división) Compare y y x.

d. El cálculo de un determinante se realiza con el comando det(A) y MATLAB regresa el valor


del determinante de la matriz A. Utilice el comando det para calcular el determinante de la
matriz anterior y compruebe algunos valores obtenidos con los comandos anteriores
utilizando la Regla de Cramer.

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 40

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:

Procedimiento para encontrar la matriz de transición de la base canónica a la base


B2={v1, v2, …, vn}.

1. Se escribe la matriz C cuyas columnas son v1, v2, …, vn.


2. Se calcula C–1. Ésta es la matriz de transición que se busca.

Ahora realizaremos el ejemplo siguiente utilizando comandos con MATLAB.

 1   3   0   1 
       
En R3 sea B1={i, j, k} y sea B2=  0 ,   1,  1  . Escribir (x)B1=   2  en (x)B2.
 2   0    2   4 
       

Escribir la base B2 como una matriz C:

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 41

matriz de transición

Multiplicar la matriz de transición C–1 por el vector a transformar:

multiplicar el vector por matriz de transición

 1 
 
Se obtiene el vector(x)B1=   2  en (x)B2.
 4 
 

Ortonormalización de Gram-Schmidt

Para comenzar con la ortonormalización recordemos el procedimiento para realizar una


ortonormalización. Hay que encontrar vectores u1, u2, …, un a partir de los vectores de la base v1,
v2, …, vn. Las fórmulas para la base ortogonal son:

v1
u1 
v1
v' 2
u2  , v' 2  v2  (v 2  u1 )u1
v' 2
v' 3
u3  , v'3  v3  (v3  u1 )u1  (v3  u 2 )u 2
v' 3
etc.

Ahora realizaremos el ejemplo siguiente utilizando comandos con MATLAB.

 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 42

Se definen los vectores v1, v2 y v3 en MATLAB:

v1
Para el cálculo del vector u1  se utiliza el comando norm(v), éste comando devuelve la
v1
norma o magnitud del vector:

cálculo del vector u1

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

Ese valor auxiliar permite obtener el vector u2:

cálculo del vector u2

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 43

cálculo del vector u3

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

Para verificar la magnitud, por ejemplo para u1:

u1*u1=1 significa que u1 tiene magnitud 1

Para verificar la ortonormalidad, por ejemplo u2 con u3:

u2 y u3 son ortonormales

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 44

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 
       

2. Dada la siguiente base, obtenga una base ortonormal.

 1    1
c) B   ,  
 3   2 

 1   3   0 
     
d) B   0 ,   1,  1 
 2   0    2 
     

CONCLUSIONES Y OBSERVACIONES PERSONALES

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 45

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.

Iniciemos escribiendo una matriz de ejemplo:

Utilizamos el comando null(x). MATLAB regresa una base ortonormal para el espacio nulo de A (o
núcleo). Para nuestro caso tendremos:

núcleo de una matriz

  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 46

Utilizamos el comando orth(x). MATLAB regresa una base ortonormal para rango de la matriz A.
Para nuestro caso tendremos:

rango de una matriz

  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:

𝜌(𝐴) + 𝜐(𝐴) = 𝑛

Con esto se comprueba el valor del rango y la nulidad 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:

rango de una matriz

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 47

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 R2 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 
 

2. Utilizando comandos en MATLAB, obtenga el kernel ortonormal, la imagen ortonormal, el valor


del rango y calcule el valor de la nulidad para cada uno de los ejercicios.

CONCLUSIONES Y OBSERVACIONES PERSONALES

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 48

BIBLIOGRAFÍA

 Anton, Howard / Introducción al álgebra lineal.-- 2a.ed.-- México :Limusa, 1998,


715p. . il.ISBN 968-18-5192-7

 Gerber, Harvey / Algebra lineal.-- México : Iberoamericana, 1992, XV, 447p. :


il.ISBN 968-7270-63-2

 Grossman, Stanley I. / Algebra lineal.-- 5a. ed.-- México : McGraw-Hill, xxii, 634,
125 p. / 24 cm. ISBN 970-10-0890-1

 Lay, David C. / Algebra lineal y sus aplicaciones.-- México : Pearson Educación,


xx, 486. p. / 25 cm. ISBN 970-26-0080-4

 Lipschutz, Seymour. / Algebra lineal.-- 2a. ed.-- México : McGraw-Hill, x, 553 p. /


24 cm. ISBN 84-7615-758-4

 Williams, Gareth / Algebra lineal con aplicaciones.-- México : McGraw-Hill,


2002, XVIII, 646p. ISBN 970-10-3838-X

GMM
MANUAL DE PRÁCTICAS DE ÁLGEBRA LINEAL CON MATLAB página 49

CONTROL PERSONAL DE PRÁCTICAS

Nombre: Grupo:

NÚMERO NOMBRE FECHA FIRMA

1 PRIMERAS EXPERIENCIAS CON MATLAB

2 NÚMEROS COMPLEJOS

3 MANEJO DE VECTORES Y MATRICES

4 OPERACIONES DE MATRICES

5 CRIPTOGRAFÍA

6 OPERACIONES CON RENGLONES

7 APLICACIÓN GRÁFICA EN 3D

8 FLUJO DE TRÁFICO

9 APROXIMACIÓN POR MÍNIMOS CUADRADOS

10 BALANCEO DE ECUACIONES QUÍMICAS

11 DISTRIBUCIÓN DE CALOR

12 CAMBIO DE BASE Y BASES ORTONORMALES

13 TRANSFORMACIONES LINEALES

GMM

S-ar putea să vă placă și