Vous êtes sur la page 1sur 53

MATLAB: Temas I, II y III

SIMULACIN DE SISTEMAS
ELCTRICOS
I. Introduccin a Matlab
1. Comandos de propsito general
2. Funciones de entrada y salida
II. Funciones matemticas
1. Funciones matemticas elementales
2. Operaciones con vectores y matrices
3. lgebra lineal
4. Solucin de polinomios
5. Solucin de derivadas e integrales
6. Ejercicios prcticos
III. Visualizacin grfica
1. Visualizacin de datos en grficas
Contenido
TEMA I
Introduccin a Matlab

1. Comandos de propsito general
2. Funciones de entrada y salida

Introduccin
MATLAB: MATrix LABoratory
Es un sistema basado en el clculo matricial para
desarrollar aplicaciones matemticas y de ingeniera.
Clculo, visualizacin y programacin en un ambiente
fcil donde se expresan problemas y soluciones en una
notacin matemtica familiar.


Introduccin
USOS TPICOS:
Matemticas y clculo
Desarrollo de algoritmos
Adquisicin de datos
Modelado y simulacin
Anlisis de datos y visualizacin
Grficas cientficas y de ingeniera
Desarrollo de aplicaciones
Introduccin
TOOLBOX:
Conjunto de comandos especiales para la solucin de
aplicaciones de tecnologa especializa.
Los toolboxes son colecciones de funciones de Matlab
(archivos *.m).
Entre las reas accesibles en toolbox estn: procesamiento
de seales, sistemas de control, comunicaciones, ajustes de
cuervas, procesamiento de imgenes, redes neuronales, lgica
difusa, ondoletas, etc.
Introduccin: Sistema de Matlab
Herramientas de escritorio y ambiente de desarrollo

Conjunto de herramientas que ayudan a usar las funciones
de Matlab y archivos.

Esto incluye la ventana de comandos, historial de
comandos recientemente utilizados, un editor y un
depurador de fallas, un analizador de cdigos, un buscador
para ver la ayuda, el espacio de trabajo, archivos, etc.

El comando help visualiza una lista de funciones y
operadores predefinidos. La orden help nombre de la
funcin da informacin sobre la funcin especificada.
Librera de funciones matemticas
El Matlab contiene una amplia gama de algoritmos
computacionales de funciones elementales como suma, seno,
coseno, aritmtica compleja, la inversa de una matriz, valores
propios de una matriz, FFT, etc.
Operadores aritmticos: suma +, resta -, multiplicacin *,
potencia ^, transpuesta .
Operadores relacionales: menor que <, menor que o igual a <=
mayor que >, mayor que o igual a >=, igual ==, no igual ~=
Caracteres especiales: para formar vectores y matrices [],
precedencia de expresin aritmtica (), separa elementos y
argumentos de funcin, , final de filas, suprime la impresin ;,
generacin de vectores :, comentarios %.
Introduccin: Sistema de Matlab
Lenguaje de Matlab
Es un lenguaje de alto nivel de matrices y arreglos con
sentencias de flujo de control, funciones, estructuras de
datos, entradas/salidas, etc. Esto permite realizar programas
de manera rpida y ordenada para sistemas complejos.
if, else, and elseif
switch and case
for
while
continue
breaktry catch
return
Introduccin: Sistema de Matlab
Introduccin: Sistema de Matlab
Grficos de Matlab
Matlab tiene una extensa aplicacin de utilidades para graficar
matrices y vectores, as como para hacer comentarios y ttulos,
tiene para graficar en 2 y 3 dimensiones. Tambin se pueden
construir interfaces con el comando GUIDE.
Las grficas tienen la estructura *.fig
0 200 400 600 800 1000 1200
16
17
18
19
G
a
s
t
o

(
m
3
/
s
)
Qe m
3
/s
Qs m
3
/s
0 200 400 600 800 1000 1200
5
10
15
P
r
e
s
i
o
n

(
m
)
0 200 400 600 800 1000 1200
1.5
2
2.5
3
P
r
e
s
i
o
n

(
m
)
tiempo (s)
Introduccin: Sistema de Matlab
Grficos de Matlab
Introduccin: Sistema de Matlab
Grficos de Matlab
36
38
40
42
44
6
8
10
12
x 10
-4
0
0.2
0.4
0.6
0.8
1
1.2
1.4
x 10
-7
z2
zeql=77, Q2e=0.014225, Q3e=0.011635
l2
J
Introduccin: Comandos de propsito
general
save Guarda las variables del espacio de trabajo en un archivo *.mat
diary Guarda el texto de la sesin de Matlab.
load Carga las variables de un archivo *.mat al espacio de trabajo
who Lista las variables en el espacio de trabajo
whos Lista las variables en el espacio de trabajo con ms detalle
clear all Quita las variables y funciones de la memoria
i, j \-1
inf infinito
pi t
Algunos comandos de entrada y salida
break se usa en lazos while o for
disp muestra un texto o una matriz
echo muestra un archivo *.m durante su ejecucin
error muestra mensajes de error
format cambia la salida mostrada a un formato especfico
input permite al usuario entradas
keyboard considera al teclado como un archivo *.m
pause termina la ejecucin de un archivo *.m. Presionando
cualquier tecla se reanuda la ejecucin del programa.
TEMA II
Funciones matemticas

1. Funciones matemticas elementales
2. Operaciones con vectores y matrices
3. lgebra lineal
4. Solucin de polinomios
5. Solucin de derivadas e integrales
6. Ejercicios prcticos

Funciones matemticas elementales
size obtiene el tamao de una variable especfica

A = [1 2 3; 2 3 4; 3 4 5];
size(A)

Como resultado da el nmero de filas y luego el nmero de
columnas
ans =

3 3
Una variable se considera como una matriz de 11
Un vector fila como una matriz de 1n
Un vector columna como una matriz de n1

Operaciones con matrices y vectores
Una matriz




Se puede introducir como

A = [1.2 10 15; 3 5.5 2; 4 6.8 7]

A = [1.2,10,15;3,5.5,2; 4,6.8,7]

Para separar elemento de una misma fila se usa espacio o
una coma, para separar columnas ; excepto en la ltima
1.2 10 15
A= 3 5.5 2
4 6.8 7
(
(
(
(

Operaciones con matrices y vectores
-0.02
1 e
C=
2 3
(
(
(

La matriz



Se puede escribir como

C = [1 exp(-0.02); sqrt(2) 3]

C =
1.0000 0.9802
1.4142 3.0000


Operaciones con matrices y vectores
Matrices complejas
El nmero complejo 1+\3j se puede escribir como

x=1 + sqrt(3)j
x=1 + sqrt(3)i
Cuando se escriben nmeros complejos en matrices no
deben existir espacios entre la parte real y la imaginaria


X= [1 j; -5j 2]

X =
1.0000 0+1.0000i
0-5.0000i 2.0000


1 j
X=
5 2 j
(
(


Operaciones con matrices y vectores
La traspuesta de una matriz





Se puede escribir como

B =A = [1.2 10 15; 3 5.5 2; 4 6.8 7]

B =
1.2000 3.0000 4.0000
10.0000 5.5000 6.8000
15.0000 2.0000 7.0000

1.2 10 15
A= 3 5.5 2
4 6.8 7
(
(
(
(

Operaciones con matrices y vectores
Suma y resta
Matrices de la misma dimensin

E = [7 2 3; 4 3 6; 8 1 5]; F = [1 4 2; 6 7 5; 1 9 1];

G = E F
H = E + F
G =
6 -2 1
-2 -4 1
7 -8 4
H =
8 6 5
10 10 11
9 10 6
Operaciones con matrices y vectores
Multiplicacin
Matrices de la misma dimensin

x = [1; 2; 3]; y = [4;5;6]; A = [1 1 2; 3 4 0; 1 2 5];

x'*y
ans =

32
x*y
ans =
4 5 6
8 10 12
12 15 18
Operaciones con matrices y vectores
Multiplicacin
Un escalar puede multiplicar a cualquier matriz

5*A
ans =
5 5 10
15 20 0
5 10 25
expm, logm, sqrtm, funm, abs

ngulo y magnitud de z= x + yj = re
uj
vienen por

r=abs(z)
teta=angle(z)
Operaciones con matrices y vectores
Cuadrado de los elementos de un vector

x = [1 2 3];
x.^2

ans =
1 4 9


Norma

norm(x)

Matrices de utilidad:

ones(n)
ones(m,n)
zeros(n)
eye(n) identidad
diag(x) matriz diagonal con x sobre la diagonal
Operaciones con matrices y vectores
lgebra lineal
Generacin de vectores

t =1:5
t =
1 2 3 4 5
Incremento distinto
Incremento negativo
t =5:-1:2
t =
5 4 3 2
x=linspace(-10,10,5)
x =
-10 -5 0 5 10

x(3) corresponde al tercer elemento del vector , 0.
La NORMA de un vector x
con n elementos



se obtiene con norm(x), calcula la raz cuadrada de la suma
de los cuadrados de cada componen de x.
La distancia entre dos vectores x y y se obtiene con
norm(x-y)
1
2
n
x
x
x
x
(
(
(
=
(
(

lgebra lineal
Sean los vectores




norm(u) = 2.6458
norm(v) = 3.7417
norm(u-v) = 1.7321

2 3
1 1
,
1 2
1 0
u v
( (
( (
( (
= =
( (
( (


lgebra lineal
El producto punto entre dos vectores




dot (u,v) = 9
El ngulo entre dos vectores se define como
angle=acos((dot(u,v))/(norm(u)*norm(v)))
angle =
0.4296 (angle*360)/(2*pi)= 24.6136
2 3
1 1
,
1 2
1 0
u v
( (
( (
( (
= =
( (
( (


cos
uv
u v
u =
lgebra lineal
Cmo saber si un vector w que pertenece a un espacio
vectorial V se puede expresar como una combinacin lineal
del subespacio

es decir,

Si los vectores son columnas, entonces se convierte en un
sistema Vc=w
{ }
1 2
, ,...,
k
S v v v V = c
1 1 2 2
...
k k
c v c v c v w + + + =
lgebra lineal
Suponga


Si el resultado tiene filas distintas de cero entonces existen
cis que satisfacen
rref([V w])
ans =
1 0 0 1
0 1 0 2
0 0 1 -1
1 1 1 2
2 0 1 , 1
1 2 0 5
V w
( (
( (
= =
( (
( (

1 1 2 2
...
k k
c v c v c v w + + + =
lgebra lineal
Para saber si un conjunto de vectores son linealmente
independientes se puede hacer con rref o verificando el
rango de los vectores colocados en una matriz.


rref([V ])
ans =
1 0 0
0 1 0
0 0 1
1 1 1
2 0 1
1 2 0
V
(
(
=
(
(

lgebra lineal
Solucin de polinomios



v=[4 -5 1 -3]; w =[1 0 0 -1 -6]

v =

4 -5 1 -3

w =

1 0 0 -1 -6

3 2
( ) 4 5 3 v s s s s = +
4
( ) 6 w s s s =
Solucin de polinomios
polyval (v,2) evala el polinomio



en s=2 y despliega el valor de 11.

t=-1, polyval(w,t), evala el polinomio



en s=-1 y despliega el valor -4.

3 2
( ) 4 5 3 v s s s s = +
4
( ) 6 w s s s =
Solucin de polinomios
Polinomio matricial, suponga un polinomio p(s) evaluado
para una matriz A




p(A)
Q= polyvalm(p,A)

Q =

-13 -18 10
-6 -25 10
6 18 -17

3 2
( ) 2 6 2 3 p s s s s = + +
1 1 2
1 0 1
0 3 1
A

(
(
=
(
(

Solucin de polinomios
RACES DE UN POLINOMIO


p=[1 6 11 6]

p =
1 6 11 6

r=roots (p)

r =
-3.0000
-2.0000
-1.0000
3 2
6 11 6 0 s s s + + + =
Solucin de polinomios
Para recuperar el polinomio a partir de sus races
q=poly(r)

q =
1.0000 6.0000 11.0000 6.0000

Producto de polinomios


a=[1 0 -20.6]; b=[1 19.6 151.2];

conv(a,b)
ans =
1.0e+003 *
0.0010 0.0196 0.1306 -0.4038 -3.1147
2 2
( ) 20.6, ( ) 19.6 151.2 a s s b s s s = = + +
Derivadas e integrales
DERIVADAS DE POLINOMIOS
polyder calcula la derivada de un polinomio.


q = polyder(p)
q =
3 0 -2
Calcula la derivada de un producto y el cociente de 2
polinomios



El producto de a(s) y b(s), c=polyder(a,b)
c =
8 30 56 38
3
( ) 2 5 p s s s =
2 2
( ) 3 5, ( ) 2 4 6 a s s s b s s s = + = + +
TEMA III
Visualizacin grfica

1. Visualizacin de datos en grficas
2. Uso del comando GUIDE

Visualizacin de datos
Grficas de lnea
plot
plotyy
loglog
semilog
semilogy
stairs
contour
ezplot
ezcontour
Visualizacin de datos
Grficas de barra
bar (grouped)
barh
bar (stacked)
barh(stacked)
hist
pareto
errorbar
stem
Visualizacin de datos
Grficas de rea
area
pie
fill
contourf
image
pcolor
ezcontour
Visualizacin de datos
Grficas de direccin
feather quiver
comet
Visualizacin de datos
Grficas radiales
polar
compass
rose
ezpolar
Visualizacin de datos
Grficas de dispersin
scatter spy
plotmatrix
x = [0:.2:20];
y = sin(x)./sqrt(x+1);
y(2,:) = sin(x/2)./sqrt(x+1);
y(3,:) = sin(x/3)./sqrt(x+1);
plot(x,y)
Visualizacin de datos
0 2 4 6 8 10 12 14 16 18 20
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
Visualizacin de datos
Ms del 30% de agua
potable en redes de
distribucin se pierde en
fugas.

Costos ambientales y
econmicos por fugas en el
transporte de fluidos peligrosos
Visualizacin de datos
Longitud de 131.9m, dimetro de 10cm
Cambio de punto de operacin a los 6000seg
Visualizacin de datos, estacin piloto
Visualizacin de datos
Tarjeta
Entrada
Tarjeta
Salida
Bomba

Servo-
vlvula
Tubera


Sensores
PLANTA
0 200 400 600 800 1000 1200
0.017
0.018
0.019
0.02
G
a
s
t
o

(
m
3
/
s
)
Mediciones : 060204
6
0-55Hz
0
.01.mat, Ts = 0.01


Qin
Qout
0 200 400 600 800 1000 1200
0
5
10
15
P
r
e
s
i

n

(
M
C
A
)


Hin
0 200 400 600 800 1000 1200
1
1.5
2
2.5
tiempo (s)
P
r
e
s
i

n

(
M
C
A
)


Hout
Visualizacin de datos
Visualizacin de datos
0 200 400 600 800 1000 1200
0.01
0.015
0.02
G
a
s
t
o

(
m
3
/
s
)
Gastos generados con presiones de 060204
6
0-55Hz
0
.01.mat


Qin
Qout
0 200 400 600 800 1000 1200
0
5
10
15
P
r
e
s
i

n

(
M
C
A
)


Hin
0 200 400 600 800 1000 1200
1
1.5
2
2.5
tiempo (s)
P
r
e
s
i

n

(
M
C
A
)


Hout

Vous aimerez peut-être aussi