Download MATLAB_Clases_4 - Computación Aplicada ITS

Document related concepts

Matriz (matemáticas) wikipedia , lookup

Matriz de Gram wikipedia , lookup

Matriz diagonalizable wikipedia , lookup

Matriz ortogonal wikipedia , lookup

Vector propio y valor propio wikipedia , lookup

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