Download MATLAB_Clases_4 - Computación Aplicada ITS
Document related concepts
Transcript
1 Montevideo, viernes 17 de agosto del 2012. CLASIFICACIÓN de VECTORES Según los criterios que se utilicen para determinar la igualdad o equipolencia de dos vectores, pueden distinguirse distintos tipos de los mismos: Vectores libres: no están aplicados en ningún punto en particular. Vectores deslizantes: su punto de aplicación puede deslizar a lo largo de su recta de acción. Vectores fijos o ligados: están aplicados en un punto en particular. Podemos referirnos también a: Vectores unitarios: vectores de módulo unidad. Vectores concurrentes o angulares: son aquellas cuyas direcciones o líneas de acción pasan por un mismo punto. También se les suele llamar angulares por que forman un ángulo entre ellas. Vectores opuestos: vectores de igual magnitud y dirección, pero sentidos contrarios. Vectores colineales: los vectores que comparten una misma recta de acción. Vectores paralelos: si sobre un cuerpo rígido actúan dos o más fuerzas cuyas líneas de acción son paralelas. Vectores coplanarios: los vectores cuyas rectas de acción son coplanarios (situados en un mismo plano). COMPONENTES de un VECTOR az y a ay x z ax Componentes del Vector Un vector en el espacio se puede expresar como una combinación lineal de tres vectores unitarios o versores perpendiculares entre sí que constituyen una base vectorial. En coordenadas cartesianas, los vectores unitarios se representan por i, j, k, paralelos a los ejes de coordenadas x, y, z, positivos. Las componentes del vector en una base vectorial predeterminada pueden escribirse entre paréntesis y separadas con comas: a= (ax, ay, az) Ing. Tecnológico ADEMAR NUÑEZ 2 ó puede expresarse como una combinación de los vectores unitarios definidos en la base vectorial. Así, en un sistema de coordenadas cartesiano, será: a = ax i + ay j + az k Estas representaciones son equivalentes entre sí, y los valores ax, ay, az, son las componentes de un vector que, salvo que se indique lo contrario, son números reales. Una representación conveniente de las magnitudes vectoriales es mediante un vector columna o un vector fila, particularmente cuando están implicadas operaciones matrices (tales como el cambio de base), del modo siguiente: ax a= ay a = [ ax ay az ] az Con está notación, los vectores cartesianos quedan expresados en la forma: i = [1 0 0], j = [0 1 0], k = [0 0 1] OPERACIONES CON VECTORES SUMA VECTORES Para sumar dos vectores libres (vector y vector) se escogen como representantes dos vectores tales que el extremo final de uno coincida con el extremo origen del otro vector. Método analítico para la suma y diferencia de vectores Tenemos dos vectores libres a = (ax i + ay j + az k) b= (bx i + by j + bz k) El resultado de su suma o de su diferencia se expresa en la forma a ± b = (ax i + ay j + az k) ± (bx i + by j + bz k) En notación matricial sería a ± b= ax ay az ± bx by bz = ax ± bx ay ± b y az ± bz Ing. Tecnológico ADEMAR NUÑEZ 3 Si la suma o diferencia es entre 2 vectores unidos en un mismo punto formando un ángulo θ, conocidos los módulos de 2 vectores dados, a y b así como el ángulo θ que forman entre sí, el módulo de a ± b es el siguiente: │ a ± b │ = √ (a2 + b2 ± 2ab cos θ) sea ≤ √ (a2 + b2 + 2ab cos θ) Producto de un vector por un escalar El producto de un vector por un escalar es otro vector cuyo módulo es el producto del escalar por el módulo del vector, cuya dirección es igual a la del vector, y cuyo sentido es contrario a este si el escalar es negativo. Partiendo de la representación gráfica del vector, sobre la misma línea de su dirección tomamos tantas veces el módulo de vector como indica el escalar. Sean p un escalar y a un vector, el producto de p por a se representa p a y se realiza multiplicando cada una de las componentes del vector por el escalar, esto es; p a = p ax i + p ay j + p az k Con notación matricial sería pa=p ax ay az = p ax p ay p az MATLAB – COMANDOS PARA VECTORES COMANDO LENGTH Determina el número de componentes de un vector. La sintaxis de la orden es: Longitud = length ( Vector ); Vector es el vector que se quiere medir (número de componentes) Longitud es el número de componentes de Vector. Ejemplo en MATLAB >>x=[1 2 3 4 5 6 7] x= 1 2 3 4 5 6 7 >>l=length(x) l= 7 >>exit% esté es el último comando mas usado de MATLAB para vectores Ing. Tecnológico ADEMAR NUÑEZ 4 MATRICES DEFINICIÓN Una matriz es un arreglo bidimensional de números (llamados entradas de la matriz) ordenados en filas y columnas, donde una fila es cada una de las líneas horizontales de la matriz y una columna es cada una de las líneas verticales. A una matriz con n filas y m columnas se le denomina matriz n-por-m ó n×m donde n, m Є N - { 0 }. El conjunto de las matrices de tamaño n×m se representa como M n x m (K), donde K es el campo al cual pertenecen las entradas. El tamaño de una matriz siempre se da con el número de filas primero y el número de columnas después. Dos matrices se dice que son iguales si tienen el mismo tamaño y las mismas entradas. Un vector fila o vector renglón es en cualquier matriz de tamaño 1xn mientras que un vector columna es cualquier matriz de tamaño mx1 A las matrices que tienen el mismo número de filas que de columnas, i.e. m=n, se les llama matrices cuadradas y el conjunto se denota Mn x m (K) o alternativamente Mn (K). EJEMPLO Dada la matriz A Є M4 x 3 (R) A= 1 1 4 6 2 2 9 0 3 7 2 5 Es una matriz de tamaño 4 × 3. La entrada a23 es 7 MATRICES en la COMPUTACIÓN Las matrices son utilizadas ampliamente en la computación, por su facilidad y liviandad para manipular información. En este contexto, son una buena forma para representar grafos, y son muy utilizadas en el cálculo numérico. En la computación gráfica, las matrices son ampliamente usadas para lograr animaciones de objetos y formas. TEORÍA de MATRICES La teoría de matrices es una rama de las matemáticas que se centra en el estudio de matrices. Inicialmente una rama secundaria del álgebra lineal, ha venido cubriendo los temas relacionados con la teoría de grafos, el álgebra, la combinatoria y la estadística también. Ing. Tecnológico ADEMAR NUÑEZ 5 TEMAS RELACIONADOS con MATRICES Una matriz puede identificarse a una aplicación lineal entre dos espacios vectoriales de dimensión finita. Así la teoría de las matrices habitualmente se considera como una rama del Álgebra lineal. Las matrices cuadradas desempeñan un papel particular, porque el conjunto de matrices de orden n (n entero natural no nulo dado) posee propiedades de “estabilidad” de operaciones. Es importante disponer de una teoría de matrices a coeficientes de anillo. En particular, las matrices a coeficientes en el anillo de polinomios se utilizan en “teoría de mandos”. MATRICES CUADRADAS Una matriz cuadrada es una matriz que tiene el mismo número de filas que de columnas. El conjunto de todas las matrices cuadradas n × n junto a la suma y la multiplicación de matrices, es un anillo que generalmente no es conmutativo. M (n, R), el anillo de las matrices reales, es un álgebra asociativa real unitaria. M (n, C), el anillo de las matrices cuadradas complejas, es un álgebra asociativa compleja. La matriz identidad In de orden n es la matriz n × n en la cual todos los elementos de la diagonal principal son iguales a 1 y todos los demás elementos son iguales a cero. La matriz identidad se denomina así porque satisface las ecuaciones M In = M y In N = N para cualquier matriz M m × n y N n × k. Ejemplo: si n = 3 I3 = 1 0 0 0 1 0 0 0 1 La matriz identidad es el elemento unitario en el anillo de matrices cuadradas Los elementos invertibles de este anillo se llaman matrices invertibles ó matrices no singulares. Una matriz n × n es invertible si y solo si existe una matriz B tal que; A B = In = B A En este caso, B es la matriz inversa de A, identificada A-1. El conjunto de todas las matrices invertibles n × n forma un grupo bajo la multiplicación de matrices (Lie), el grupo lineal general. Si λ es un número y v es un vector no nulo tal que Av = λv, entonces se dice que v es un vector propio de A y que λ es su valor propio asociado. El número λ es un valor propio de A si y solo si A-λln no es invertible, lo que sucede si y solo si pA (x) es Ing. Tecnológico ADEMAR NUÑEZ 6 el polinomio característico de A. pA (x) es un polinomio de grado n y por lo tanto, tiene n raíces complejas múltiples, raíces si se cuentan de acuerdo a su multiplicidad. Cada matriz cuadrada tiene como mucho n valores propios complejos. El determinante de una matriz cuadrada A es el producto de sus n valores propios, pero también puede ser definida por la formula de Gottfried LEIBNIZ. Las matrices invertibles son precisamente las matrices cuyo determinante es distinto de cero. El algoritmo de eliminación gaussiana puede ser usado para calcular el determinante, el rango y la inversa de una matriz y para resolver sistemas de ecuaciones lineales. La traza de una matriz cuadrada es la suma de los elementos de la diagonal, lo que equivale a la suma de sus n valores propios. Una matriz de Vendemonde es una matriz cuadrada cuyas filas son la potencia de un número. Su determinante es fácil de calcular. La regla de Sarrus es un recurso que permite calcular determinantes sólo de orden tres agregando las dos primeras columnas. La formula de Leibniz es otra forma para calcular determinantes de matrices de cualquier orden en términos de permutaciones: n Det (A) = Σ s g n (σ) П Ai, σi σЄP n i=1 Donde la suma se calcula sobre todas las permutaciones σ del conjunto {1, 2, …, n}. La posición del elemento i después de la permutación σ se denota como σi. La regla de Acuña para el calculo del determinante de una matriz A=[aij] de tamaño n × n que permite trabajar únicamente con números enteros, evitando la aparición de elementos fraccionarios y sobre la base del cálculo de determinantes de submatrices de tamaño 2x2; Sea A=[aij] una matriz de tamaño nxn, entonces para n ≥ 2 det (A) = a11 . . . a1n . . . . . . an1 . . . ann = 1 (a11)n-2 a11 a12 a21 a22 . . . . a11 a12 an1 an2 . . . a11 a1n a21 a2n . a11 a1n an1 ann Es un método, cuyo cálculo descansa en evaluar determinantes de sub-matrices de 2x2, cuyo cálculo es inmediato. Ing. Tecnológico ADEMAR NUÑEZ 7 OPERACIONES BÁSICAS de MATRICES Suma o adición Sean A, B Є Mnxm (K). Se define la operación de suma o adición de matrices como una operación binaria + : Mnxm (K) x Mnxm (K) >> Mnxm (K) tal que (A, B) >> C= A + B y donde cij = aij + bij en el que la operación de suma en la última expresión es la operación binaria correspondiente pero en el campo K. Por ejemplo, la entrada c12 es igual a la suma de los elementos a12 y b12 lo cual es a12 + b12. Ejemplo: 1 3 2 1 0 0 1 0 5 + 7 5 0 1 2 2 2 1 1 1+1 3+0 2+5 = 1+7 0+5 0+0 1+2 2+1 2+1 2 3 7 = 8 5 0 3 3 3 En MATLAB >>A=[1 3 2; 1 0 0; 1 2 2] A= 1 3 2 1 0 0 1 2 2 >>B=[1 0 5; 7 5 0; 2 1 1] B= 1 0 5 7 5 0 2 1 1 >>A+B ans= 2 3 7 8 5 0 3 3 3 No es necesario para la suma que las matrices sean cuadradas, pero si es necesario para sumar que las matrices sean del mismo tamaño. Producto por un escalar Sean A, B Є Mnxm (K) y λ Є K. Se define la operación de producto por un escalar como la función K x Mnxm (K) >> Mnxm (K) tal que (λ, A) >> B= λA y donde bij = λ aij en donde el producto es la operación binaria correspondiente pero en el campo K. Por ejemplo, la entrada b12 es igual al producto λ a12. Ing. Tecnológico ADEMAR NUÑEZ 8 Ejemplo: Sea A Є M2x3 ( R ) y 2 Є R 1 8 -3 2 2(1) 2(8) 2(-3) = 4 -2 2 16 -6 8 -4 12 = 6 2(4) 2(-2) 2(6) En MATLAB >>a=[2] a= 2 >>A=[1 8 -3; 4 -2 6] A= 1 8 -3 4 -2 6 >>a*A ans= 2 16 -6 8 -4 12 Se observa que el producto por un escalar da como resultado una matriz del mismo tamaño que la original. También el producto por un escalar dependerá de la estructura algebraica en la que las entradas están. Producto Sean A Є Mnxm (K) y B Є Mmxp (K) . Se define el producto de matrices como la función Mnxm (K) Mmxp (K) >> Mnxp (K) tal que (A, B) >> C= AB y donde m cij = aik bkj para toda i, j, es decir cij = ai1 b1j + ai2 b2j + ai3 b3j+ . . . + aim bmj k=1 Ejemplo: Sean A M2x3 ( R ) y B M3x2 ( R ) 1 -1 0 3 2 1 3 2 1 1 1 0 1(3)+0(2)+2(1) 1(1)+0(1)+2(0) = 5 1 4 2 = -1(3)+3(2)+1(1) -1(1)+3(1)+1(0) Donde la matriz producto es como habíamos establecido en la definición: Una matriz C M 2x2 ( R ). Ing. Tecnológico ADEMAR NUÑEZ 9 En MATLAB >>A=[1 0 2; -1 3 1] A= 1 0 2 -1 3 1 >>B=[3 1; 2 1; 10] B= 3 1 2 1 1 0 >>A*B ans= 5 4 1 2 Sin tomar en cuenta la motivación que viene desde las aplicaciones lineales, es evidente ver que si ignoramos la definición de la función de producto de matrices y sólo se toma en cuenta la definición de las entradas, el producto no estará bien definido, ya que si A no tiene el mismo número de columnas que B de filas entonces no podremos establecer en donde acaba la suma: si la acabamos en el mayor de éstos números habrá sumandos que no están definidos ya que una de las matrices no tendrá mas entradas, mientras que si tomamos el menor habrá entradas de alguna de las matrices que no se tome en cuenta. Así es necesario que A tenga el mismo número de columnas que B de filas para que AB exista. El producto de matrices no es conmutativo, si lo fuera la composición de funciones lineales sería conmutativa y por lo general no sucede. Existen casos particulares de algunos tipos de matrices en los que si hay conmutatividad. RANGO El rango de una matriz A es la dimensión de la imagen de la aplicación representada por A, que coincide con la dimensión de los espacios vectoriales generados por las filas o columnas de A. TRANSPUESTA La transpuesta de una matriz A Mnxm (X), donde X no es necesariamente un campo, es una matriz B Mnxm (X) tal que bij = aij. Por ejemplo la entrada b12 = a21. Ejemplo: Sea A M2x3 ( R ) 1 8 -3 4 -2 6 >> transpuesta >> 1 8 -3 4 -2 6 Ing. Tecnológico ADEMAR NUÑEZ 10 En MATLAB >>A=[1 8 -3; 4 -2 6] A= 1 8 -3 4 -2 6 >>A´ ans= 1 4 8 -2 -3 6 Podríamos decir que la transpuesta es aquella matriz que se obtiene de la original cambiando filas por columna. Las notaciones usuales para denotar la transpuesta de una matriz son AT, At. La transposición de matrices tiene las siguientes propiedades: (AT)T = A, (A+B)T = AT + BT, (AB)T = BT AT, Si A Mnxm (X) representa una aplicación lineal, entonces la matriz AT describe la transpuesta de la aplicación lineal. Ing. Tecnológico ADEMAR NUÑEZ 11 COMANDOS MATEMÁTICOS PARA MATRICES LOS MAS EMPLEADOS: Comando NORM Calcula la norma de un vector o matriz. Comando MIN Retorna el menor componente de un vector o matriz Comando MAX Retorna el mayor componente de un vector o matriz Comando SIZE Devuelve el tamaño de la matriz (dimensiones). La Sintaxis de la ordes es: [Filas, Columnas]=size(Matriz); o también Tamaño=size(Matriz); Matriz es la matriz a la que se desea determinar el tamaño (dimensiones) En Filas se almacena el número de filas En Columnas se almacena el número de columnas Tamaño es un vector (fila) en cuyas componentes se almacenan el número de filas y columnas, siempre en ese orden. Ejemplo: A=[1 2 3; 4 5 6] y=size(A) [f, c]=size(A) f % al escribir una expresión sin punto y coma final MATLAB c % muestra el valor por pantalla En MATLAB >>A=[1 2 3; 4 5 6] A= 1 2 3 4 5 6 >>y=size(A) y= 2 3 >>[f, c]=size(A) f= 2 c= 3 Ing. Tecnológico ADEMAR NUÑEZ 12 Comando EIG Calcula los valores y vectores propios (ortovalores y ortovectores) de la matriz. Sintaxis: [Vectores, Diagonal]=eig(Matriz); ó también Valores=eig(Matriz) Matriz es la matriz (cuadrada) a la que se desea calcular los valores o vectores propios. Diagonal es una matriz diagonal que contiene los valores propios de Matriz. Vectores es una matriz en la que se devuelven los vectores propios (unitarios) donde cada columna de la matriz Vector es un vector propio de la matriz; tal que el primer vector corresponde al primer valor propio y así sucesivamente. Valores es un vector columna que contiene los valores propios de Matriz. Ejemplo: A=[1 2; 3 4] y=eig(A) [V, D]=eig(A) V % al escribir una expresión sin punto y coma final MATLAB D % muestra el valor por pantalla En MATLAB >>A=[1 2; 3 4] A= 1 2 3 4 >>y=eig(A) y= -0.3723 5.3723 >>[V, D]=eig(A) V= -0.8246 -0.4160 0.5658 -0.9094 D= -0.3723 0 0 5.3723 Ing. Tecnológico ADEMAR NUÑEZ 13 Comando INV Sirve para invertir una matriz Sintaxis: Matriz1=inv(matriz2); matriz2 es la matriz que se desea invertir En matriz1 se almacena la matriz inversa de matriz2 % ejemplo de uso de inv. A=[1 2; 3 4] I=inv(A) I % Al escribir una expresión sin punto y coma al final % MATLAB muestra su valor en pantalla En MATLAB >>A=[1 2; 3 4] A= 1 2 3 4 >>I=inv(A) I= -2.0000 1.0000 1.5000 -0.5000 Comando DET Sirve para calcular el determinante de una matriz Sintaxis: Valor=det(Matriz); Matriz es la matriz (cuadrada) a la que se le desea calcular el determinante Valor es donde se almacena el valor del determinante. % ejemplo de uso de det. A=[1 2 7; 4 5 8; 6 -7 10] d=det(A) En MATLAB >>A=[1 2 7; 4 5 8; 6 -7 10] A= 1 2 7 4 5 8 6 -7 10 >>d=det(A) d= -284 Ing. Tecnológico ADEMAR NUÑEZ