Download - Definición de Vectores
Definición de Vectores
En la ventana de comandos de la herramienta Matlab se introdujo el siguiente
vector:
x=[1 2 3 -4 -5];
Y luego al escribir x en la ventana se obtuvo:
Y en la ventana de trabajo se puede observar que “x” ha quedado definida como un
vector con los valores antes indicados
(indique lo que pasa) mejorar xD
Se observa que para definir un vector es necesario introducir los valores entre
corchetes “[]” separados por un espacio o una coma y finalizar con un punto y coma para la
asignación de este vector en la variable “x”, de lo contrario el programa dará error.
Transposición de Vectores
En el MATLAB se transponen los vectores colocando un apostrofe sobre la
variable, en este caso se transpondrá el vector “x” y se guardará la transposición en otra
variable “y”.
En la ventana de comandos:
(Observaciones aquí mejorar) Por lo cual “y” queda definida como un vector transpuesto de
x
Definición de una matriz
Se introduce en la ventana de comandos lo siguiente:
A=[1.2 10 15; 3 5.5 2; 4 6.8 7];
Y al escribir “A” se observa lo siguiente:
Es una matriz de 3x3 en el cual cada columna (perteneciente a cada fila) se separa
mediante espacios y las filas mediante un punto y coma “;”.
Transposición de una Matriz
Al igual que los vectores las matrices pueden ser transpuestas simplemente
escribiendo el apostrofe sobre la variable de la matriz.
En la ventana de comandos se introduce lo siguiente:
B=A’;
Se escribe B, se presiona enter y se obtiene lo siguiente:
Y se puede observar que es la transpuesta de la Matriz A.
Determinante e Inversa de una Matriz
Si la matriz es cuadrada se puede calcular el determinante y la inversa de de esa
matriz siempre que la matriz no sea singular.
En la ventana de comandos se introdujo:
det(A)
Y se obtuvo:
Entonces “det()” es una función utilizada para obtener la determinante de una
matriz, en este caso como se quiere la determinante de la matriz A, se escribe dentro del
argumento de la función del programa y además no es necesario escribir punto y coma al
final. El valor obtenido en Matlab es el mismo valor obtenido en los cálculos entregados.
Luego se introdujo en la ventana de comandos:
inv(A)
y se obtuvo:
De la misma manera que en la función anterior en el argumento de la función va la
variable de la matriz de la cual se desea saber su inversa, ciertamente el uso de la
herramienta reduce considerablemente la cantidad de pasos a realizar manualmente para
obtener la inversa de una matriz, el valor de la matriz obtenida en Matlab y la entregada en
los cálculos son aproximadamente iguales.
Si se realiza el producto entre la inversa de la matriz A y la matriz A se obtiene la
matriz identidad.
En Matlab:
En los cálculos se comprueba que de ese producto se obtiene la matriz identidad con
ciertas aproximaciones.
Matrices complejas
Se escribió en la ventana de comandos lo siguiente:
C= [1+j*2 -j*4;j*5 -3-j*3];
Y al escribir C se observó:
Lo cual es una matriz de 2x2 en el cual los valores pertenecientes a cada fila están
separados con punto y coma “;” sus columnas separadas con espacios y además el
programa completa la forma cartesiana de los complejos añadiéndole un cero donde haga
falta para completar la forma “x+jy”.
De la misma manera que las otras matrices, las matrices complejas se pueden
conjugar y transponer, por lo tanto se realiza la prueba en Matlab escribiendo en la ventana
de comandos:
C’
conj(C)
conj(C’)
y se obtuvo:
La transpuesta de “C” es la que se debería obtener, y las conjugadas obtenidas no
son más que la conjugada de los complejos que conforman las matrices C y C’.
Multiplicación de Matrices
Tomando en cuenta las reglas de multiplicación de matrices se definieron las
siguientes matrices de 3x3 cada una en Matlab:
A= [2 5 7; 6 9 15; 2 11 23];
B= [23 43 7; 12 26 34; 11 20 2];
Y se multiplicaron de la siguiente manera A*B y B*A
Y se observa que A*B es distinto de B*A y que además la matriz resultante cumple
con las dimensiones “filas de A” x “columnas de B”
División de Matrices
Si se define “C” como la división de la matriz “A” entre la Matriz “B” entonces “C”
será igual a la matriz “A” por la inversa de la matriz “B”, ya que matemáticamente no
existe la división de matrices y utilizar la inversa suple esa falta.
En Matlab haciendo uso de la matriz “A” y “B” anterior se obtiene:
Valores Propios
Los valores propios de una matriz cuadrada corresponden a las raíces de polinomio
característico. En Matlab se determinan los valores propios o autovalores de una matriz “A”
por medio de la instrucción eig(A), del inglés eigenvalue. En el laboratorio se definió una
matriz 4x4 y se determino los valores propios λ1, λ2, λ3….
Y el valor propio de esta matriz será:
También se puede obtener el polinomio característico haciendo uso de la instrucción
poly() donde en el argumento irá la variable que identifique la matriz a la cual se desea
hallar el polinomio. Aplicándolo se obtiene:
Lo cual sería un polinomio de la forma: 1x4-29x3+288x2-1116x+1296
Vectores Propios
Con la instrucción [X,D]=eig(A) se determina la matriz “X” en la que cada columna
corresponde a un autovector de “A” y la correspondiente matriz diagonal.
La matriz diagonal “D” se obtiene también por la transformación de semejanza:
inv(X)*A*X siendo “X” la matriz de autovectores hallada.
Utilizando la instrucción eig en la matriz definida anteriormente (matizpro):
Por el producto de la inversa de la matriz “X” de autovectores por la matriz
“matrizpro” y la matriz X
Se observa en ambos caso que es posible diagonalizar la Matriz “matrizpro” de
manera más rápida que mediante cálculos manuales.
Raíces de un Polinomio
Para obtener las raíces de un polinomio suministre los coeficientes del polinomio en
forma de vector, incluyendo los coeficientes que son iguales a cero:
p=[p1 p2 p3 p4 …….]
Escriba el comando roots(p) o bien r=roots(p) para guardarlo en la memoria y a
continuación r, se escribe el polinomio P=1/2r2-3/8r+1/16
De esta manera el software nos da las raíces de un polinomio de segundo grado las cuales
resultan ser P1=0,5000 y P2=0,2500
Producto de polinomios
Para realizar el producto de polinomios en Matlab basta con definir dos polinomios
“a(s)” y “b(s)” respectivamente y hacer uso de la función conv(a,b) en la ventana de
comandos.
Se define el polinomio “a(s)” y “b(s)” como dos polinomios de grado 4 y haciendo
uso de la función c=conv(a,b) se obtiene:
Sean a(s)=s4+6s3+8s2+3 y b(s)=49s4+6s3+2s2+93s+60
Se observa que para la escritura del polinomio “a(s)” en el programa hay que
completar las “s” que falten con cero ya que de no hacerse se altera los grados del
polinomio.
Se realiza la multiplicación:
Y se puede observar que la respuesta del producto resulta ser un polinomio de grado
8 de la siguiente forma:
49s8+300s7+430s6+153s5+781s4+1122s3+486s2+279s+180
División de Polinomios
Para realizar la división de polinomios en Matlab basta con definir dos polinomios
“a(s)” y “b(s)” respectivamente y hacer uso de la función [q,r]=deconv(a,b) en la ventana
de comandos, siendo “q” el cociente obtenido y “r” el resto.
Se define el polinomio “a(s)” y “b(s)” como dos polinomios de grado 3 y haciendo
uso de la función [q,r]=deconv(a,b) se obtiene:
Sean a(s)=5s3+2s2+s+8 y b(s)=s3+4s2+4s+2
Y luego se realiza la división mediante la instrucción [q,r]=deconv(a,b) y se obtiene el
cociente “q”:
Y el resto “r”
Entonces se observa que el resto de la división es igual a r(s)=-18s2-19s-2 y que además el
cociente de la división es iguala q(s)=5
En el siguiente ejemplo se demuestra la exactitud del cociente “q” obtenido y su resto “r”:
Sean a(s)=5s3+2s2+s+8 y b(s)=s3+4s2+4s+2
Obtener a(s) ÷ b(s)
5s3 + 2s2 + s + 8 s3+4s2+4s+2
-5(s3+4s2+4s+2) 5 ← q(s)
-5s 3 -20s 2 -20s-10 0s3- 18s2- 19s-2 ← r(s)
Para llegar a ese resultado se realizaron los siguientes pasos:
1. Se divide el primer monomio del dividendo entre el primer monomio del divisor,
en este caso 5s3÷s3=5
2. Se multiplica cada término del polinomio divisor por el resultado anterior y lo
restamos del polinomio dividendo:
-5(s3+4s2+4s+2)
3. Se deja de dividir porque 0s3- 18s2- 19s-10 es el resto de la operación ya que es
un polinomio de grado inferior al divisor.
Evaluación de un polinomio en un punto dado
Si a(s) es el polinomio dado, su valor en s=so se obtienen con la siguiente instrucción:
p=polyval.
Sea a(s) el mismo utilizado en el ejercicio anterior:
a(s)=5s3+2s2+s+8
y so=3
Se tiene que p será entonces polyval(a,3)
Comprobando el resultado con un ejemplo simplemente se toma el polinomio a(s) y
se evalúa en so=3
a(s)=5s3+2s2+s+8
Evaluando en so
a(so)=5(3)3+2(3)2+(3)+8
Y el resultado será entonces
a(3)=164
Representaciones Gráficas
La instrucción plot (x,y) permite graficar “y” en función de “x”. Es necesario que la
dimensión del vector “x” sea igual a la dimensión del vector “y”. La “y” puede definirse
por medio de funciones clásicas como por ejemplo y=sin(x), en este caso, “y” adquiere
automáticamente las dimensiones de “x”.
Grafica #1
Para empezar a graficar primero se define un número determinado de “x” con la
siguiente instrucción x=0:1:100, en la que el primer digito indica el valor inicial de “x”, el
segundo dígito indica el incremento, que puede ser fraccionario y el último dígito indica el
valor máximo de “x”.
Se define y=sin(x) y se grafica con la instrucción plot(x,y) dando como resultado la
grafica obtenida en la figura 1.1.
Figura 1.1
La grafica obtenida va desde 0 a 100 horizontalmente y desde -1 a 1 verticalmente,
se puede observar que no tiene los ejes identificados, no tiene título y no tiene cuadrícula
que sirva para corresponder alguna región de la función con los valores de los ejes.
Luego se realiza el mismo procedimiento para graficar sin(x) solo que esta vez la
instrucción plot(x,y) irá acompañado de la palabra “grid” de la siguiente forma:
plot(x,y),grid dando como resultado la figura 1.2.
Figura 1.2
Al igual que en la figura 1.1 la grafica obtenida va desde 0 a 100 horizontalmente y
desde -1 a 1 verticalmente y además se puede observar que no tiene los ejes identificados,
no tiene título pero en este caso, tiene cuadrícula que sirva para corresponder alguna región
de la función con los valores de los ejes.
Se completa el grafico añadiéndole:
title (titulo del gráfico)xlabel (etiqueta del eje “x”)ylabel (etiqueta del eje “y”)
El grafico resultante se muestra en la figura 1.3
Figura 1.3
Y en resultado la figura 1.3 se puede observar la grafica completa con titulo,
identificación de ejes y cuadriculas para guiarse.
Grafica #2
Para graficar diferentes curvas en la misma grafica:
plot(xi,y1,x2,y2,x3,y3,x4,y4,….)
En la ventana de comandos se escribe:
x=0:0.1:10;
y1=sin(x);
y2=cos(0.5*x);
plot(x,y1,x,y2).grid
Obteniéndose así la figura 2:
Figura 2
En la figura 2 se puede observar las dos curvas en la misma grafica, lo cual permite
realizar análisis de distintas curvas para el mismo x.
Grafica #3
Para realizar tres curvas en la misma grafica se escribe en la ventana de comandos lo
siguiente:
x=0:0.5:15;
y1=tan(x)
y2=cot(x)
y3=sec(x)
Y para que Matlab grafique las tres curvas juntas, se utiliza la función:
plot(x,y1,x,y2,x,y3).grid
Y se obtiene la grafica presentada en la figura 3.
Figura 3
En esta grafica se puede observar las tres curvas juntas y como una es la inversa de
la otra y los puntos en que ambas se relacionan además se utilizo leyenda para identificar
cada curva del gráfico y editor de puntos para darle nombre.
Introducción
Conclusión
Bibliografía
REPÚBLICA BOLIVARIANA DE VENEZUELA
UNIVERSIDAD NACIONAL EXPERIMENTAL POLITÉCNICA
ANTONIO JOSÉ DE SUCRE
VICE-RECTORADO “LUIS CABALLERO MEJÍAS”
LABORATORIO SISTEMAS DE CONTROLES II
PRACTICA #1
FUNDAMENTOS DE MATLAB
Profesor: Bachilleres:
Karla Subero Dommary Moy Exp: 2009203014
Marcia Castillo Exp: 2008203165 (¿)
Grupo N° 6 Sección: 01
Caracas, Mayo de 2014