Beruflich Dokumente
Kultur Dokumente
Introduccin a Matlab
Fundamentos y aplicaciones en el
estudio e investigacin de
tecnologas de telecomunicaciones
1 Matlab es una marca registrada de The
MathWorks, Inc.
Contenido
Generalidades de Matlab
Manejo de matrices y vectores
Generacin de Grficos
Funciones y Programacin
Procesamiento bsico de seales
Simulacin grfica mediante Simulink
Estudio de casos
12/15/15
Matrices y vectores
Vectores y matrices especiales
Caracteres especiales
Operadores
Generacin de vectores y matrices
Ejemplos y ejercicios
Ejercicios simples
Solucin de ecuaciones simultneas
Uso en modelos fsicos mediante Variables de estado
12/15/15
Matrices y vectores
Verificar su
memoria.
tamao
espacio
en
Matrices y vectores
Las matrices pueden ser de tamaos
diferentes, sean matrices cuadradas de
tamao NxN o rectangulares MxN.
Para todos los efectos, los vectores son
casos especiales de matrices.
Ejercicio:
Matrices. Caracteres
reservados
Algunos smbolos tienen una funcin particular para facilitar
la escritura de instrucciones, los de uso ms comnes son
los siguientes:
[]
- definir input de vectores y matrices
()
- asignar valores
Matrices. Operadores
Matrices. Operadores
Operadores aritmticos
'
.
Matrices. Operadores
Operadores aritmticos especficos de matrices
.*
./
.\
.^
Matrices. Operadores
Operadores relacionales
<
- Menor que
>
- Mayor que
<=
>=
==
- Igual a
~=
- Diferente a
>> v = 1:8
v =
1
2
3
4
5
Crear un vector con una parte de v
>> u = v(3:6)
u =
3
4
ones (3,3)
1 1
1 1
1 1
zeros(4,4)
0
0
0
0
0
0
0
0
0
0
0
0
A =
7
63
9
2
8
8
7
63
9
4
3
1
4
3
1
2
8
8
4
3
1
7
14
63
8
>> X
X =
15
2
3
>> X'
ans =
15
5
1
5
6
2
1
2
7
Matriz inversa
>> inv(X)
ans =
0.0736
-0.0155
-0.0271
-0.0640
0.1977
-0.0291
Determinante
2
6
2
3
2
7
>> det(X)
ans =
516
0.0078
-0.0543
0.1550
Descripcin
find(x)
Genera un vector conteniendo los ndices de los elementos distintos de cero de la matriz
[u, v, w] = find(A)
Genera los vectores u y v, conteniendo los ndices de las filas y columnas cuyos elementos son distintos de cero.
w contiene los valores
length(A)
linspace(a, b, n)
Crea un vector fila de n elementos, cuyos valores van desde a hasta b, espaciados uniformemente
logspace (a, b, n)
Crea un vector fila de n elementos, cuyos valores van desde a hasta b, espaciados logartmicamente
max(A)
Si A es un vector, devuelve el elemento algebraicamente mayor. Si A es una matriz devuelve un vector fila con
los elementos mayores de cada columna de A. Si uno o ms elementos son nmeros complejos, devuelve los que
tienen magnitudes. mayores
min(A)
norm(x)
size(A)
sort(A)
sum(A)
Suma los elementos en cada columna de la matriz A y devuelve el vector fila resultante con los resultados
obtenidos
Matriz identidad
>> eye(3)
ans =
1
0
0
0
1
0
0
0
1
Polinomios
>>
>>
>>
>>
% dividir polinomios
[q r] = deconv(num, den)
% evaluar un polinomio
datos = polyval(polinomio, x)
Eigen valores y
eigenvectores
>> eig(X)
ans =
16.6456
6.7869
4.5675
>> [V,D] = eig(X)
V =
-0.9135
-0.4420
-0.2341
0.5912
-0.3327
0.6746
D =
16.6456
0
0
6.7869
0
0
0.4022
-0.8856
0.2321
0
0
4.5675
Multiplicacin
Inversa
Ejercicios
Ejercicio 1
Suponga que dos buzos empiezan en la superficie y fijan el siguiente
sistema de coordenadas: x es al oeste, y al norte y z hacia abajo. El
primer buzo nada 20 metros al oeste, luego 12 al norte y se sumerge
finalmente 8 metros. El segundo buzo se sumerge 5 metros, luego
nada 7 al este y finalmente al norte por 19 mts.
a) Encontrar la distancia entre el punto de partida y la posicin del
primer buzo..
b) Cuanto tendr que nadar el primer buzo en cada direccin para
llegar al segundo buzo
c) Cuando deber nadar el primer buzo en lnea recta para alcanzar al
segundo.
Ejercicios
Solucin
>> r=[20 12 8];
>> w=[-7 19 8];
>> dist1=sqrt(sum(r.*r))
dist1 =
dist2 =
27.8927
24.6577
>> v=w-r
v =
-27
>> dist2=sqrt(sum(v.*v))
Ejercicios
Ejercicio 2
La siguiente expresin corresponde al modelo de la
presin arterial durante el sstole, donde t es el tiempo e
y es la diferencia de presin en la vlvula artica:
Ejercicios
1.2
Solucin
>> t=linspace(0, 0.5, 200);
>> size(t)
1
0.8
0.6
ans =
0.4
200
>> y= exp(-8*t).*sin(9.7*t+pi/2);
>> plot(t,y)
0.2
0
-0.2
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
Ejercicios
La siguiente tabla muestra la distancia recorrida y
tiempo empleado por cinco camiones viajando a lo
largo de diferentes rutas:
1
Distancia (km.)
850
704
784
592
848
Tiempo (hr.)
10.3
8.2
9.1
7.5
10.1
Ejercicios
Solucin
>> velocidad = d./t
velocidad =
82.5243
85.8537
83.9604
704
784
592
848
78.9333
9.1000
86.1538
ruta =
3
Ejercicios
Dadas las matrices
Ejercicios
Calcular el cociente y el residuo de la siguiente
divisin de polinomios
Calcular el producto siguiente:
Solucin de ecuaciones
simultneas (Ax=B)
a11x1 + a12x2 = b1
a21x 1+ a22x2= b2
x=A
-1
ans =
1
0
>> A\b
ans =
1
0
Solucin de ecuaciones
simultneas
Ejercicio
Solucin
>> A=[16 -120 240 -140; -120 1200 -2700 1680; 240
-2700 6480 -4200; -140 1680 -4200 2800]
A =
16
-120
240
-140
-120
1200
-2700
1680
240
-2700
6480
-4200
-140
1680
-4200
2800
a Resolver el siguiente
sistema de ecuaciones
Solucin de ecuaciones
simultneas
Ejercicio
Solucin
x ' Ax Bu
y Cx Du
donde y es la ecuacin de salida, x es el vector
de estado, siendo u la entrada
Ejemplo
La ecuacin obtenida de un diagrama de cuerpo libre (esttica)
es:
mh + bh + kh - f(t) = 0
Donde h es distancia , t es tiempo . h' es dh/dt y h =d 2h/dt2
Sustituyendo las definiciones de los estados (x 1=h, x2=dx1/dt)
en las ecuaciones resulta en:
mx2 + bx2 + kx1 - f(t) = 0
Resolviendo para x2 se obtienen las ecuaciones de estado:
x2' = (-b/m) x2 + (-k/m)x1 + f(t)/m
La salida deseada es para la posicin h, por lo tanto:
y = h = x1
Cont
Luego las derivadas de las variables
de estado se colocan en trminos de
las mismas variables, los inputs y
constantes.
x1' = x2
x2' = (-k/m) x1 + (-b/m) x2 + f(t)/m
y = x1
En forma Vector-matriz
El vector de estado est compuesto
de dos variables, x y v , por lo tanto
la forma el vector-matriz ser:
x'1
x1
x' A x B f (t )
2
2
x1
y C D f (t )
x2
Explicacin
La primera fila de A y la primera fila
de B son los coeficientes de la
primera ecuacin de estados para
x1'.De igual forma, la segunda fila
de A y la segunda fila de B son los
coeficientes de la segunda ecuacin
de estados para x2'. C y D son los
coeficientes de la ecuacin de salida
Representacin exacta
1
x'1 0
x' k / m b / m
2
y
1 0
x1 0
x 1 / m
2
x1
x 0
2
f (t )
f (t )
0
1
A
k / m b / m
0
B
1 / m
C 1 0
D 0
Ejemplo
m = 2;
b = 5;
k = 3;
A = [ 0 1 ; -k/m -b/m ];
B = [ 0 ; 1/m ];
C = [ 1 0 ];
D = 0;
statespace_ss = ss(A, B, C, D)
Ejemplo
>> [a b c d ]=ssdata(statespace_ss)
a =
0
-1.5000
1.0000
-2.5000
b =
0
0.5000
c =
1
d =
0
Anlisis transitorio
Una vez ingresado el modelo es
fcil calcular la respuesta a una
entrada de tipo escaln.
Para calcular la respuesta a un funcin
escaln unitarios, se usa la funcin step:
step(statespace)
Donde statespace es el nombre del sistema.
Ejercicio
Para el circuito de la siguiente figura,
donde las condiciones iniciales son
iL(0-)=0, y Vc(0-) = 0.5V, Calcular el Vc(t).
Ejercicio
Usando variables de estado
Sustituyendo valores y re-arreglando trminos:
o
(eq. 1)
(eq. 3)
Ejercicio
Tambin
y as:
o
En forma matricial:
Ejercicio
x1 4
x 0 u0 (t )
2
x1
x 0 u0 (t )
2
1 0
La solucin de en el caso donde A es una matriz constante de nxn
elementos n2 y b es un vector columna con n elementos la
solucin de:
Es
Siendo eAT la matriz de transicin de estado
Ejercicio
En nuestro ejemplo:
Es decir:
Ejercicio
Donde :