Vectores y Matrices en Matlab
Vectores y Matrices en Matlab
Vectores y Matrices en Matlab
programación con
MATLAB
Ing. Paulina Morillo MSc.
Universidad Politécnica Salesiana
Manipulación de Vectores y matrices
>> a= sparse(i,j,c,m,n)
m indica filas, n columnas, c vector que contiene los elementos no nulos i,j
son dos vectores que indican la posición de cada elemento de c
para visualizar la matriz entera >>full(a)
[i2,j2,c2]=find(a)
Manipulación de Vectores y matrices
Actividad 4
12 4 0 0 0
7 3 0 0 8
0 0 0 0 0
0 0 13 11 0
0 0 2 7 4
Y trabajemos con ella como una matriz dispersa, para ello definimos el
vector de elementos no nulos, el vector definido por las filas y el vector
definido por las columnas
Actividad 4
Ejecutar los siguientes comandos:
m=[12,-4,7,3,-8,-13,11,2,7,-4];
f=[1,1,2,2,2,4,4,5,5,5];
c=[1,2,1,2,5,3,4,3,4,5];
a=sparse(f,c,m,5,5)
full(a)
m1=[12,7,-4,3,-13,2,11,7,-8,-4];
f1=[1,2,1,2,4,5,4,5,2,5];
c1=[1,1,2,2,3,3,4,4,5,5];
b=sparse(f1,c1,m1,5,5];
full(b)
a=sparse(f,c,m)
s=a+b
p=a*b
[f2,c2,m2]=find(p)
e=full(sparse(f2,c2,m2))
Actividad 4
Ejercicio 1 Dados los vectores definidos por
x=(1,4.5,7.8) y=(sen(90),cos(45),0)
Realizar los cálculos siguientes:
x+y;el producto escalar de x e y; calcular el ángulo que forman ambos
vectores; cos(x)
Ejercicio 2 Para un laboratorio se compran los materiales
especificados en la tabla siguiente.
Ref. arti. Precio Cantidad
1520 1146 200
1621 3450 250
1428 6225 150
1429 7100 150
1628 8500 100
Utilizar vectores y el producto de vectores para calcular
el coste de cada producto y el total a pagar (la tabla de
precios no incluye IVA, debiendo por tanto aplicarse un
16% de incremento.
Actividad 4
Ejercicio 3 Dadas las matrices a y b calcular: a+b, a+0, a*b.
Comprobar que el producto de matrices no es conmutativo.
Elegir la submatriz de a formada por la primera columna y la
tercera fila y la submatriz de b formada por la segunda y tercera
columna y calcular el producto
1 2 3 4 2 1
a 2 3 4 b 2 0 4
4 2 5 1 2 5
Ejercicio 4 Utilizar matrices para construir una tabla
que contenga: En la 1º columna la variable grados
celsius en el intervalo [0 100] con un paso de 2. En la
2º columna su valor en grados fahrenheit y en la 3º
en grados kelvin. ¿Cómo guardarías en un fichero la
tabla anterior?
9 * celsius
32
5
Actividad 4
i, s i i j
j, s i i j 1
aij 1 i , j n
j, s i i j - i
0, en otro cas o
Elementos básicos
𝑝𝑛 𝑥 = 𝑎𝑛 𝑥 𝑛 + 𝑎𝑛−1 𝑥 𝑛−1 +⋯ + 𝑎3 𝑥 3 +𝑎2 𝑥 2 +𝑎1 𝑥 + 𝑎0
Variable: 𝑥
Coeficientes: 𝑎𝑗 , 𝑗 = 0,1,2, … , 𝑛
Grado: 𝑛
Polinomios
Un polinomio puede ser reconstruido a partir de sus raíces con el comando poly
>> p=poly(raices) (da un vector fila) **
En caso de que el argumento de poly fuera una matriz obtendríamos como resultado el polinomio
característico de la matriz. Así mismo si queremos calcular los autovalores de la matriz bastaría con
calcular las raíces del polinomio característico.
Ejemplo1:
pol2=[2 4 0 1]; % definición del polinomio 2x3+4x2+1
raices=roots(pol2) % cálculo de sus raíces
pol2_n=poly(raices) % reconstrucción del polinomio
real(pol2_n) % ¿qué pasó?
Ejemplo2:
A=[1 2 3 ; 2 3 4; 4 2 5]; p=poly(A) % pol. característico
roots(p) % autovalores de A.
Polinomios
Funciones en Matlab para polinomios
x x 1
3 2
>> p1=[1 1 0 1]
>> p2=[1 –3 0 4] x 3 3x 2 4
>> [r,p,k]=residue(p1,p2)
>> rats(r)
x3 x2 1 35 13 1
1
x 3 x 4 9( x 2) 3( x 2)
3 2 2
9( x 1)
[pol1,pol2]=residue(r,p,k)
Polinomios
Funciones en Matlab para polinomios
x 2x 1
4
I dx
x 1
Actividad 5
Ejercicio 4
>> format long
>> p=[1 –1 2 –2 1 –1];
>> raices=roots(p)
>> der_p=polyder(p)
>>polyval(der_p,round(raices(2)))