Vous êtes sur la page 1sur 72

CURSO PARA INGENIEROS:

Introduccin a MATLAB y
SIMULINK

Por: Ing Jos S. Orbegoso Lpez




CONTENIDOS:

1. Generalidades.
2. Manipulacin de matrices.
3. Grficas en 2D y 3D.
4. Programacin.
5. Mtodos numricos.
6. Matemticas simblicas.
7. Simulink.






Huacho, Noviembre de 2008

Facultad de Ingeniera Qumica y
Metalurgia


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

2

1. Generalidades

Desarrollado a finales de los setenta Universidades de New Mexico y Stanford). En la actualidad
ampliamente difundido en la Universidad y la Industria. Ncleo bsico del programa: Clculo
numrico basado en matrices. Matlab= Matrix Laboratory.
Mdulos adicionales. Simulink, MatLab Symbolic Toolbox (ncleo del programa Maple), etc.

Operadores





MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

3


Tipos de datos: MATLAB es un programa preparado para trabajar con vectores y matrices.
Como caso particular tambin trabaja con variables escalares (matrices de dimensin 1). MATLAB
trabaja siempre en doble precisin, es decir guardando cada dato en 8 bytes, con unas 15 cifras
decimales exactas. Ya se ver ms adelante que tambin puede trabajar con cadenas de
caracteres(strings) y, desde la versin 5.0, tambin con otros tipos de datos: Matrices de ms dos
dimensiones, matrices dispersas, vectores y matrices de celdas, estructuras y clases y objetos.

Otras formas de definir matrices: Existen en MATLAB varias funciones orientadas a
definir con gran facilidad matrices de tipos particulares. Algunas de estas funciones son las
siguientes:

eye (4) forma la matriz unidad de tamao (4x4)

zeros(3,5) forma una matriz de ceros de tamao (3x5)

zeros(4) dem de tamao (4x4)

ones(3)forma una matriz de unos de tamao (3x3)

ones(2,4) dem de tamao (2x4)

linspace(x1,x2,n) genera un vector con n valores igualmente espaciados entre x1 y x2-

logspace(d1,d2,n) genera un vector con n valores espaciados logartmicamente entre10^d1


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

4
y 10^d2. Si d2 es pi6, los puntos se generan entre 10^d1y pi

rand(3)forma una matriz de nmeros aleatorios entre 0 y 1,con distribucin uniforme, de
tamao (3x3)

rand(2,5) dem de tamao (2x5)

randn(4)forma una matriz de nmeros aleatorios de tamao(4x4), con distribucin normal,
de valor medio 0 y varianza

magic(4)crea una matriz (4x4) con los nmeros 1, 2, ... 4*4, con la propiedad de que todas
las filas y columnas suman lo mismo

hilb(5)crea una matriz de Hilbert de tamao (5x5). La matriz de Hilbert es una matriz cuyos
elementos (i, j) responden a la expresin (1/(i+j-1)). Esta es una matriz especialmente difcil
de manejar por los grandes errores numricos a los que conduce.


Formacin de una matriz a partir de otras

A continuacin se describen algunas de las funciones que crean una nueva matriz a partir de otra o
de otras, comenzando por dos funciones auxiliares:

[m,n]=size(A) devuelve el nmero de filas y de columnas de la matriz A.

Si la matriz es cuadrada basta recoger el primer valor de retorno

N=length(x)calcula el nmero de elementos de un vector x

zeros(size(A))forma una matriz de ceros del mismo tamao que una matriz A previamente
creada.

ones(size(A))dem con unos.

A=diag(x)forma una matriz diagonal A cuyos elementos diagonales son los elementos de un
vector ya existente x

x=diag(A)forma un vector x a partir de los elementos de la diagonal de una matriz ya
existente A

diag(diag(A))crea una matriz diagonal a partir de la diagonal de la matriz A.

blkdiag(A,B)crea una matriz diagonal de submatrices a partir de las matrices que se le
pasan como argumentos.

triu(A)forma una matriz triangular superior a partir de una matriz A (no tiene por qu ser
cuadrada).

tril(A)dem con una matriz triangular inferior



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

5

OPERADOR DOS PUNTOS (:)

Defnase un vector x con el siguiente comando:

>> x=1:10

x =
1 2 3 4 5 6 7 8 9 10

En cierta forma se podra decir que el operador (:) representa un rango: en este caso, los nmeros
enteros entre el 1 y el 10.
Por defecto el incremento es 1, pero este operador puede tambin utilizarse con otros valores
enteros y reales, positivos o negativos. En este caso el incremento va entre el valor inferior y el
superior.

>> x=1:2:10
x =
1 3 5 7 9

>> x=10:-1:1
x =
10 9 8 7 6 5 4 3 2 1


OPERADORES RELACIONALES




MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

6
OPERADORES LOGICOS





FUNCIONES MATEMTICAS ELEMENTALES QUE OPERAN DE MODO
ESCALAR



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

7




MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

8






FUNCIONES QUE ACTAN SOBRE LOS VECTORES



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

9





FUNCIONES QUE ACTUAN SOBRE MATRICES



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

10














Tabla de cdigos ASCII - Formato de caracteres
estndares

ASCII

Hex

Smbolo

0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
NUL
SOH
STX
ETX
EOT
ENQ
ACK
BEL
BS
TAB
LF
VT
FF
CR
SO
SI


ASCII

Hex

Smbolo

16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
10
11
12
13
14
15
16
17
18
19
1A
1B
1C
1D
1E
1F
DLE
DC1
DC2
DC3
DC4
NAK
SYN
ETB
CAN
EM
SUB
ESC
FS
GS
RS
US


ASCII

Hex

Smbolo

32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
20
21
22
23
24
25
26
27
28
29
2A
2B
2C
2D
2E
2F
(espacio)
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/


ASCII

Hex

Smbolo

48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
30
31
32
33
34
35
36
37
38
39
3A
3B
3C
3D
3E
3F
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?


ASCII

Hex

Smbolo

64
65
40
41
@
A

ASCII

Hex

Smbolo

80
81
50
51
P
Q

ASCII

Hex

Smbolo

96
97
60
61
`
a

ASCII

Hex

Smbolo

112
113
70
71
p
q


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

11
66
67
68
69
70
71
72
73
74
75
76
77
78
79
42
43
44
45
46
47
48
49
4A
4B
4C
4D
4E
4F
B
C
D
E
F
G
H
I
J
K
L
M
N
O

82
83
84
85
86
87
88
89
90
91
92
93
94
95
52
53
54
55
56
57
58
59
5A
5B
5C
5D
5E
5F
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_

98
99
100
101
102
103
104
105
106
107
108
109
110
111
62
63
64
65
66
67
68
69
6A
6B
6C
6D
6E
6F
b
c
d
e
f
g
h
i
j
k
l
m
n
o

114
115
116
117
118
119
120
121
122
123
124
125
126
127
72
73
74
75
76
77
78
79
7A
7B
7C
7D
7E
7F
r
s
t
u
v
w
x
y
z
{
|
}
~




En caso de que el teclado se desconfigure se puede recurrir a sta tabla,
digitando: ALT + NUMERO DE LA COLUMNA ASCII, para obtener el carcter
necesario.
Ejemplo:
ALT + 92 va a dar \
ALT + 91 va a dar [
ALT + 93 va a dar ]
ALT + 94 va a dar ^
ALT + 58 va a dar :
ALT + 59 va a dar ;
Etc.






GUIA DE LA CLASE1
Ambiente de trabajo de MatLab. Workspace, Windows y Help.


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

12

Fig 1: Ventana Inicial de Matlab 7.0
En la ventana inicial se sugieren ya algunos comandos para el usuario inexperto que quiere echar un
vistazo a la aplicacin. En dicha ventana aparece tambin el prompt caracterstico de MATLAB ().
Esto quiere decir que el programa est preparado para recibir instrucciones. Puede hacerse que
aparezca un saludo inicial personalizado por medio de un fichero de comandos personal que se
ejecuta cada vez que se entra en el programa.
Una vez que el programa comienza, se visualiza tres pequeas ventanas, las cuales son: ventana
command, wokspace y command History. Estas ventanas son 3 de las ocho diferentes ventanas en
Matlab. El listado de las ventanas y sus propsitos se muestran en la tabla 1.

Tabla 1 : Ventanas de Matlab
Ventana Propsitos
Command Window Ventana principal, variables enteras, corre programas.
Figure Window Contiene informacin para controles grficos.
Editor Window Crea y elimina escritos y archivos de funciones.
Help Window Proporciona informacin de ayuda
Launch Pad Window Provee acceso a herramientas, demostraciones y documentacin.
Command History Window Introduce los controles principales en la ventana de control .
Workspace Window Proporciona informacin de las variables que son usadas.
Current Directory Window Muestra los archivos actuales en el directorio.


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

13

Ventana Command: Esta ventana es la ventana principal y se abre cuando comienza Matlab. Es
conveniente tener la ventana command como la nica ventana visible y esto puede hacerse cerrando
todas las otras ventanas.
Ventana Figure: La ventana figure se abre automticamente cuando ejecutamos los comandos
grficos y contienen grficos creados por estos comandos. Un ejemplo de la ventana Figure es
mostrada en la figura 2.
{ Puede usted ingresar lo siguiente, utilizando una hoja de editor:
>> x = [0:0.1:16];
>> y = x.^ (1.4).*cos(x)
>> plot(x,y)
>> title(Grfica de la funcin y = x.^(1.4).*cos(x)). }


FIGURA 2 : GRFICO DE LA FUNCIN COSENO(X)
Ventana Editor: La ventana editor es usada para escribir y editar, crear y modificar programas,
tanto como ejecutarlos paso a paso para ver si contienen errores (proceso de depuracin). El editor
muestra con diferentes colores los diferentes tipos o elementos de los comandos (en verde, para los
comentarios; en rojo, las cadenas de caracteres, etc.). El editor se preocupa de que las comillas o
parntesis que se abren, no se queden sin cerrar. Figura 3


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

14

Figura 3: Ventana Editor
Ventana del Help
MATLAB 7.0 dispone de un excelente Help con el que se puede encontrar la informacin que se
desee. La Figura 4 muestra las distintas opciones que aparecen en el men Help.
1. Help Window, Se abre la ventana de la Figura 4, en la que se puede buscar ayuda sobre la
funcin o el concepto que se desee.
2. Help Tips. Ofrece ideas prcticas para utilizar la ayuda.
3. Help Desk. Se abre un browser de Internet (Netscape Communicator, en el caso de la Figura 5)
que permite acceder a toda la informacin sobre MATLAB en formato HTML. Esta informacin es
equivalente a los manuales impresos del programa. Desde la parte inferior de esta pgina, mediante
el enlace Online Manuals (in PDF) se puede acceder a la versin *.pdf (PortableDocument
Format) de los manuales de MATLAB.
FIGURA 4: VENTANA HELP
Este formato es menos adecuado para consultar que el HTML, pero mucho ms adecuado para
imprimir y revisar luego sobre papel. El formato *.pdf requiere del programa gratuito Adobe
Acrobat Reader 3.0 o una versin superior.
4. Examples and Demos. Se abre una ventana que da acceso a un buen nmero de ejemplos
resueltos con MATLAB, cuyos resultados se presentan grficamente de diversas formas. Es
bastante interesante recorrer estos ejemplos para hacerse idea de las posibilidades del programa.
.
FIG 5: VENTANA INICIAL DE HELP WINDOW. FIG 6 : VENTANA INICIAL DE HELP DESK

Adems, se puede tambin recurrir al Help desde la lnea de comandos. Se aconseja hacer prcticas
al respecto. Por ejemplo, obsrvese la respuesta a los siguientes usos del comando help:
help
help lang
El comando helpwin seguido de un nombre de comando muestra la informacin correspondiente a
ese comando en la ventana Help Window (ver Figura 5), incluyendo tambin comandos similares
sobre los que se ofrece ayuda.
El comando doc seguido de un nombre de comando muestra la informacin correspondiente a ese
comando a travs de Netscape Navigator o I nternet Explorer, en formato HTML.

El Debugger es un programa enormemente til para detectar y corregir errores, que hay que
conocer muy bien. Para ello lo mejor es practicar. De hecho, al realizar operaciones con el
Debugger grfico van a apareciendo las correspondientes instrucciones en la lnea de comandos.



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

16

El espacio de trabajo consiste en el sistema de variables acumuladas durante una sesin de
usar el software de MATLAB y almacenadas en memoria. Usted agrega variables al espacio
de trabajo usando las funciones, M-archivos corrientes, y cargando espacios de trabajo
ahorrados. Por ejemplo, si usted funciona estas declaraciones,
A = magic(4)
R = randn(3,4,5)
El espacio de trabajo incluye dos variables, A y R.
Usted puede realizar workspace y operaciones relacionadas usando el browser del workspace.
Cuando estn disponibles, las funciones equivalentes se documentan con cada caracterstica
del browser del espacio de trabajo. Si usted tiene una conexin activa del Internet, usted
puede mirar el Workspace browser video demo para una descripcin de la funcionalidad
principal:
WORKSPACE:




MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

17
Matemticas escalares. Funciones matemticas bsicas.
2. Operaciones con Vectores y Matrices

>> A=[1 2 3; 4 5 6; 7 8 9]

La respuesta del programa es la siguiente:

A = 1 2 3
4 5 6
7 8 9

Una sencilla operacin con A es hallar su matriz traspuesta.

En MATLAB el apstrofo (') es el smbolo de trasposicin matricial.

Para calcular A' (traspuesta de A) basta teclear lo siguiente:

>> A'

ans =
14 7
2 5 8
3 6 9

La variable ans puede ser utilizada como operando en la siguiente expresin
que se introduzca. Tambin podra haberse asignado el resultado a otra matriz
llamada B:

>> B = A'

B =
1 4 7
2 5 8
3 6 9


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

18

Ahora ya estn definidas las matrices A y B, y es posible seguir operando con ellas. Por
ejemplo, se puede hacer el producto B*A (deber resultar una matriz simtrica):

>> B*A
ans =
66 78 90
78 93 108
90 108 126

En MATLAB se accede a los elementos de un vector poniendo el ndice entre parntesis
(por ejemplo x(3) x(i)). Los elementos de las matrices se acceden poniendo los dos
ndices entre parntesis, separados por una coma (por ejemplo A(1,2) A(i,j)). Las
matrices se almacenan por columnas (aunque se introduzcan por filas, como se ha dicho
antes), y teniendo en cuenta esto puede accederse a cualquier elemento de una matriz con
un slo subndice. Por ejemplo, si A es una matriz (3x3) se obtiene el mismo valor
escribiendo A(1,2) que escribiendo A(4).

Invertir una matriz es tan fcil como transponerla.

A continuacin se va a definir una nueva matriz A no singular-en la forma:

>> A = [1 4 -3; 2 1 5; -2 5 3]

A =
1 4 -3
2 1 5
-2 5 3

Ahora se va a calcular la inversa de A y el resultado se asignar a B. Para ello basta hacer
uso de la funcin inv ( )

>> B = inv(A)

B =
0.1803 0.2213 -0.1885
0.1311 0.0246 0.0902
-0.0984 0.1066 0.0574

Para comprobar que este resultado es correcto basta con multiplicar A
por B

>> B*A

ans =
1.0000 0.0000 0.0000
0.0000 1.0000 0.0000
0.0000 0.0000 1.0000

De forma anloga a las matrices, es posible definir un vector fila x en la forma siguiente


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

19
(silos tres nmeros estn separados por blancos o comas, el resultado ser un vector fila):

>> x=[10 20 30] % vector fila

x =
10 20 30

MATLAB considera comentarios todo lo que va desde el carcter tanto por ciento (%)
hasta el final de la lnea.

Si los nmeros estn separados por intros o puntos y coma (;) se obtendr un vector
columna:

>> y=[11; 12; 13] % vector columna

y =
11
12
13

MATLAB tiene en cuenta la diferencia entre vectores fila y vectores columna. Por ejemplo,
si se intenta sumar los vectores x e y se obtendr el siguiente mensaje de error:

>> x+y

??? Error using ==> +
Matrix dimensions must agree.

Estas dificultades desaparecen si se suma x con el vector transpuesto de y:

>> x + y'
ans =
21 32 43

PROBLEMAS UTILIZANDO MATLAB
1. Transferencia de Calor:
Un objeto con una temperatura inicial de T
0
es colocado al tiempo t = 0 dentro de una
cmara que tiene una temperatura constante de Ts experimentar un cambio de
temperatura de acuerdo a la ecuacin:
T = Ts + (T
0
Ts) e
-kt

Donde: T = Temperatura del objeto al tiempo.
K = constante.
Una soda a una temperatura de 120F es ubicada dentro de un refrigerador donde la
temperatura es 38F. Determine la temperatura alcanzada despus de 3 horas. Asumir


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

20
k=0.45. Primero define todas las variables y entonces calcula la temperatura usando un
comando Matlab.
Solucin
>> Ts= 38; T
0
= 120; k = 0.45; t = 3;
>>T = round (Ts +(T
0
Ts) *exp(-k*t))
T = 59
5.2. Identidad Trigonomtrica:
Una identidad trigonomtrica est dado por:
x
x x x
tan 2
sin tan
2
cos
2
+
= |
.
|

\
|


Verificar que la identidad es correcta calculando en cada lado de la ecuacin y
sustituyendo x = /5.
Solucin
>> x = pi/5;
>>LHS = cos(x/2)^2
LHS =
0.9045
>>RHS = (tan(x) +sin(x))/(2*tan(x))
RHS =
0.9045

Ejercicio 1: La presin de vapor de agua
Escribir una funcin en MATLAB, para el clculo de la presin de vapor del agua. Use una
funcin es decir, s para calcular la presin de vapor de agua para las temperaturas de 30, 60 y
90C.

Resolucin: La presin de vapor de agua, pv [bar] es funcin de la temperatura T [K] y puede
ser calculado por la expresin:


Donde:



Los coeficientes a, b, c, d con valores -7,76451, 1,45838, -2,7758 respectivamente -1,23303.
En estas relaciones Tc es una temperatura crtica y Pc la presin crtica del agua. Esta


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

21
tiene los valores de 647,3 y 221,2Kbar. De esta relacin se puede expresar la presin de
vapor:



esta ecuacin se utiliza para escribir la funcin MATLAB necesario. Esta funcin llama un
argumento que tiene en cuenta el valor de la temperatura y valor de retorno actual
correspondiente presin de vapor.

La funcin se presenta a continuacin:

function pv = pvapH2O(T);
% Funcin para calcular la presin de vapor del agua
%%
Mod de llamar:
% PV = PVAPH2O(T)
% donde: PV - presin de vapor, [bar]
% T - temperatura, [K]
Tc = 647.3; % temperatura critica, [K]
Pc = 221.2; % presin critica, [bar]
a = -7.76451;
b = 1.45838;
c = -2.7758;
d = -1.23303;
Tr = 1 - T./Tc;
pv = exp((a*Tr+b*Tr.^(1.5)+c*Tr.^3+d*Tr.^6)./(1-Tr)).*Pc;
% end function pvapH2O

Llamado esta funcin puede obtener un escalar.

>> pv = pvaph2o(303.15)

pv =
0.0425
O a travs de un vector matriz.

>> pv = pvaph2o(273.15+[30 60 90])
pv =
0.0425 0.1994 0.7015


EJERCICIOS:
Polinomios:

Coeficientes del polinomio completo y ordenado decrecientemente:
()

+ 3 x + 4
>>A=[1 2 3 4]
Comandos:


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

22
roots: nos da las races
>>races = roots(A)
poly: nos da los coeficientes del polinomio que originan esas races.
>>poly (races)
>>r=[1 1+j 1-j 2];
>>poly(r)
1 -5 10 -10 4 (

)
conv: nos da el product de polinomios
>>pp=[1 2 3 4 ];
>>qq=[1 0 0 2 3];
>>producto=conv(pp, qq)
deconv: nos da el cociente y el residuo de una divisin de polinomios
>>[co, re]=deconv(qq,pp)
co=
1 -2
re=
0 0 1 4 11
polyval: eval el polinomio P(x) en un valor xo, es decir P(xo)
>>A=[1 2 3 4];
>>p=polyval(A,[1 2 3 ])
pl =
26
polyder: nos da los coeficientes de la derivada del polinomio
>>D=polyder(A)

FUNCIN input
>>n = input(teclee el numero de ecuaciones);
>>nombre=input(Cmo te llamas?, s)


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

23
(en este caso, la respuesta se lee y se devuelve sin evaluar, con lo que se almacena en la cadena
nombre).
FUNCION disp: Siempre imprime en pantalla un mensaje de texto o el valor de una matriz,
pero sin imprimir su nombre
>>disp(EL programa ha terminado)
>>A=rand(4)
>>disp(A)
FUNCIONES
Definicin: function[lista de valores de retorno]=name(lista de argumentos)
Ejm: Se crear una funcin que evale el numerador, denominador y la divisin de:
P(x,y)=

()


Function[num,den,c]=divisin(x,y)
Num=x.^y + sin(x.*y) x;
Den=x.^2 + y.^3;
C=num./den;
Guardar el archivo como division.m y lo ejecutamos













MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

24
GUIA DE CLASE 2:
Recuerde: Los parntesis cuadrados [ y ] son empleados para matrices, mientras que los
parntesis ( y ) se emplean para funciones. El carcter coma , para separar elementos
[1,2,3,4] y el punto y como ; para separar filas en las matrices. [ 1 2; 3 4]. El carcter dos
puntos : indica nmeros consecutivos entre dos valores, [2:5] es equivalente a [2 3 4 5].
Grficas de funciones
MATLAB tiene un gran potencial de herramientas grficas. Se pueden dibujar los valores de
un vector frente a otro (de la misma longitud):
>>x=pi*(-1:0.1:1);
>>y=x.*sin(x);
>>plot(x,y) % Por defecto une los puntos (x(i),y(i)) mediante una poligonal.

Como se ve, con pocos puntos la grfica tiene un aspecto demasiado lineal a trozos. Para
"engaar" al ojo, basta tomar ms puntos.
>>x=pi*(-1:0.01:1);
>>y=x.*sin(x);
>>plot(x,y)
-4 -3 -2 -1 0 1 2 3 4
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

25

>>hold on % Mantiene en la ventana grfica los dibujos anteriores
>>plot(x,cos(x)) % Dibuja sobre la grfica anterior la funcin cos(x)

-4 -3 -2 -1 0 1 2 3 4
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
2
-4 -3 -2 -1 0 1 2 3 4
-1
-0.5
0
0.5
1
1.5
2


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

26
>>hold off % Con esto olvida los dibujos anteriores % y dibuja en una ventana nueva El
mismo grfico de la figura superior puede obtenerse con una nica orden, dibujndose cada
curva de un color distinto:
>>plot(x,cos(x),x,y)

Adems se puede especificar el color de cada curva, el tipo de lnea y el marcador, segn la
tabla:

Otros comandos muy tiles a la hora de realizar grficas son:
title: le ponemos un ttulo a la grfica
xlabel: le ponemos una etiqueta al eje x
-4 -3 -2 -1 0 1 2 3 4
-1
-0.5
0
0.5
1
1.5
2


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

27
ylabel: le ponemos una etiqueta al eje y
legend: incluimos una legenda en la grfica
Por ejemplo
>> plot(x,cos(x),'ro-',x,y,'bp:')

>> xlabel('tiempo')
>> ylabel('valor')
>> legend('coseno','y')
>> title('grafico de ejemplo')
-4 -3 -2 -1 0 1 2 3 4
-1
-0.5
0
0.5
1
1.5
2


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

28

Tambin se pueden realizar grficas logartmicas con las instrucciones: semilogx (eje x
logartmico), semilogy (eje x logartmico) y loglog (ejes x e y logartmicos). Adems de
grficas en 3D con las instrucciones: mesh, surf, plot3...
Ejercicio:
Representar simultneamente dos funciones sinusoidales de frecuencia 50 Hz desfasadas 90 (/2
rad) de amplitud 10 y 20, respectivamente. Siendo la primera de ellas en color verde a puntos y la
segunda en azul continua y con asteriscos. Incorporar adems: nombre eje x: tiempo nombre eje y:
seal ttulo grfica: onda seno legenda: onda1 y onda 2
Funcin sinusoidal:
A: amplitud, k: factor multiplicativo del argumento, que se denomina pulsacin e en el caso de que la
variable sea independiente del tiempo; el desfasaje
>>y = 10*sin(x +pi/2);
>> plot(x,y)
>> hold on
>> y = 20*sin(x +pi/2);
>> plot(x,y)
-4 -3 -2 -1 0 1 2 3 4
-1
-0.5
0
0.5
1
1.5
2
tiempo
v
a
l
o
r
grafico de ejemplo


coseno
y
( ) sin y A kx = +


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

29
>>xlabel('tiempo');ylabel('seal'); title('onda seno'); legend('onda1','onda2');














-4 -3 -2 -1 0 1 2 3 4
-20
-15
-10
-5
0
5
10
15
20
tiempo
s
e

a
l
onda seno


onda1
onda2


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

30
POLINOMIOS Y ECUACIONES
Para resolver un polinomio, se formula el vector de los coeficientes del mismo, en forma
completa y ordenado decrecientemente, siendo el objetivo aqu es la determinacin de las
races.
Ejemplo:
()


>>A=[1 2 3 4]
A =
1 2 3 4
RAICES: se emplea el comando roots que al digitarlo en la ventana de comando nos da las
races del polinomio.
>> raices=roots(A)
raices =
-1.6506
-0.1747 + 1.5469i
-0.1747 - 1.5469i
poly: da los coeficientes del polinomio que origina esas races.
>> poly(raices)
ans =
1.0000 2.0000 3.0000 4.0000
>> r=[1 1+j 1-j 2];
>> poly(r)
ans =
1 -5 10 -10 4
Producto de polinomios: conocidos los polinomios, se pueden multiplicar utilizando el
comando conv:
>> pp=[1 2 3 4];
>> qq=[1 0 0 2 3];
>> producto=conv(pp,qq)


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

31
producto =
1 2 3 6 7 12 17 12
El Cociente y Residuo de una divisin de polinomios: se obtiene empleando el comando
deconv:
>> [co,re]=deconv(qq,pp)
co =
1 -2
re =
0 0 1 4 11
Polyval: evala un polinomioP(x) en un valor xo, es decir P(xo)
>> A=[1 2 3 4];
>> p=polyval(A,2)
p =
26
>> p1=polyval(A,[1 2 3])
p1 =
10 26 58
Polyder: nos da los coeficientes de la derivada del polinomio
>> D=polyder(A)
D =
3 4 3
FUNCION INPUT
Permite imprimir un mensaje en la lnea de comandos de MatLab y recuperar como valor de
retorno un valor numrico o el resultado de una expresin tecleada por el usuario. Despus de
imprimir el mensaje, el programa espera que el usuario teclee el valor numrico o la
expresin. El usuario puede teclear un vector o una matriz. En cualquier caso, la expresin
introducida es evaluada cono los valores actuales de las variables de MATLAB y el resultado
se devuelve como valor de retorno.
>> n=input('Teclee el numero de ecuaciones')


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

32
Teclee el numero de ecuaciones 4
n =
4
Otra forma: obsrvese el parmetro s:
>> nombre=input('Cmo te llamas?', 's')
Cmo te llamas? Jos
nombre =
Jos
En este caso el texto tecleado como respuesta se lee y se devuelve sin evaluar, con lo que se
almacena en la cadena nombre. As, pues, en este caso, si se teclear una frmula, se almacena
como texto sin evaluarse.
FUNCION DISP
Permite imprimir en pantalla un mensaje de texto o el valor de una matriz, pero sim imprimir
su nombre. En realidad, disp. Siempre imprime vectores y/o matrices: las cadenas de
caracteres son un caso particular de vectores.
>> disp('El programa ha terminado')
El programa ha terminado
>> A=rand(4)
A =
0.9501 0.8913 0.8214 0.9218
0.2311 0.7621 0.4447 0.7382
0.6068 0.4565 0.6154 0.1763
0.4860 0.0185 0.7919 0.4057

>> disp(A)
0.9501 0.8913 0.8214 0.9218
0.2311 0.7621 0.4447 0.7382
0.6068 0.4565 0.6154 0.1763
0.4860 0.0185 0.7919 0.4057








MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

33
Programacin con MATLAB
Para escribir un programa o fichero de comandos con MATLAB habr que crear un fichero
que tenga extensin .m y contenga las instrucciones. Esto se puede hacer con cualquier editor
de textos, pero tiene algunas ventajas usar el editor propio de MATLAB llamndolo desde la
barra de herramientas con los mens FILE > NEW > M-FILE. Una vez estamos en el editor
de funciones se puede ejecutar el cdigo escrito con el men DEBUG>RUN o pulsando la
tecla F5, o bien escribiendo en el Command Windows el nombre de la funcin.
MATLAB trabaja con memoria dinmica, por lo que no es necesario declarar las variables
que se van a usar. Por esta misma razn, habr que tener especial cuidado y cerciorarse de que
entre las variables del espacio de trabajo no hay ninguna que se llame igual que las de nuestro
programa (proveniente, por ejemplo, de un programa previamente ejecutado en la misma
sesin), porque esto podra provocar conflictos.
FICHEROS *.m
Los ficheros con extensin (.m) son ficheros de texto sin formato (ficheros ASCII) que
constituye el centro de la programacin en MATLAB. Existen dos tipos de ficheros *.m, los
ficheros de comandos (llamados scripts en ingls) y las funciones. Los primeros contienen
simplemente un conjunto de comandos que se ejecutan sucesivamente cuando se teclea el
nombre del fichero en la lnea de comandos de MATLAB.
Las funciones permiten definir funciones enteramente anlogas a las de MATLAB, con su
nombre, sus argumentos y sus valores de retorno. Los ficheros *.m que definen funciones que
permiten extender las posibilidades de MatLab: de hecho existen bibliotecas de ficheros *.m
que se venden (toolkits) o se distribuyen gratuitamente ( a travs de internet). Las funciones
definidas en ficheros *.m se caracterizan por que la primera lnea (que no sea comentario)
comienza por la palabra funcin, seguida por los valores de retorno (entre corchetes [ ] y
separados por comas, si hay ms de uno), el signo igual ( = ) y el nombre de la funcin,
seguido de los argumentos (entre parntesis y separados por comas).

DEFINICION DE FUNCIONES:
La primera lnea de un fichero llamado name.m que define una funcin tiene la forma:
function [lista de valores de retorno] = name (lista de argumentos)
donde name es el nombre de la funcin. Entre corchetes y separados por comas van los
valores de retorno (siempre que haya ms de uno) y entre parntesis tambin separados por
comas los argumentos. Recuerde que los argumentos son los datos de la funcin y los valores
de retorno sus resultados. Si no hay valores de retorno se omiten los corchetes y el signo igual
( = ); si solo hay un valor de retorno no hace falta poner corchetes. Tampoco hace falta poner
parntesis si hay argumentos.



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

34
Ejemplo: Se crear una funcin que nos evale el numerador, denominador y la divisin de:
( )

( )


Observamos que depende de 2 entradas x e y , adems tiene tres salidas: num, den y la
divisin num/den.
>> [a,b,c]=division(2,3)
a =
5.7206
b =
31
c =
0.1845
Ejemplo: Crear una funcin de Newton (fnewton) que resuelva una ecuacin no lineal de
una sola variable, abriendo una ventana de programacin y teclear el siguiente contenido:
% Funcin que resuelve Ecuaciones No - Lineales de una sola variable
% empleando el mtodo de Newton - Raphson
% _________________________________________________________________
%
% [xn]=fnewton(f,xo,to1)
% xn es el valor que satisface la ec. no - lineal (respuesta)
% f es el nombre de la funcin donde se guard la ecuacin a resolver
% xo es un valor inicial
% to1 es el error menor a cuanto por ejemplo 0.000001
function [xn]=fnewton(f,xo,to1)
x=xo;
h=0.0001;
error=1000;
while (error>to1)
y=feval(f,x);
f_deriv=(feval(f,x+h)-feval(f,x))/h;
xn=x-(y/f_deriv);
error=abs(xn-x);
x=xn;
end

Para correr la funcin (fnewton) necesitamos abrir uan ventana de programa y creamos una
funcin donde guardaremos la ecuacin a resolver, por ejemplo x=cos(x), y se guarda con el
nombre calcular:


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

35
function y=calcular(x)
y=x-cos(x);

Y, desde el command window ejecutamos:
>> x=fnewton('calcular',0,0.00001)
x =
0.7391
Un programa escrito en MATLAB admite la mayora de las estructuras de programacin al
uso y su sintaxis es bastante estndar. En los siguientes apartados se muestra la sintaxis de
algunas de estas estructuras (if, for, while,...).
La condiciones if y switch
IF
Una de las operaciones ms habituales en programacin es la ejecucin de unos determinados
comandos si se cumple una determinada condicin lgica, es lo que se conoce como
bifurcaciones. Para ello se emplea la orden if...end de la siguiente forma:
if condicin
comandos
end
Si la bifurcacin es mltiple entonces podemos combinar con los comandos else y elseif
If condicion
comandos
elseif condicion
comandos
elseif condicion
comandos
else
comandos
end
Por ejemplo, crear el fichero prueba_condicion.m y ejecutar el siguiente cdigo:


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

36
A = 1; B = 2;
if A + B == 3
disp('el resultado es 3')
elseif A+B > 5
disp('el resultado es mayor que 5 ')
else
disp('el resultado ni es 3 ni mayor que 5 ')
end
(la orden disp se utiliza para visualizar texto en la orden de comandos)
Para ejecutar la funcin realizada se pulsa F5 se estamos en el editor de funciones, o se
escribe su nombre en la Command Window:
>>prueba_condicion
el resultado es 3
Tambin se puede llamar la funcin recin descrita desde otra funcin sin ms que escribir su
nombre.
SWITCH
La sentencia switch realiza una funcin anloga a un conjunto de if...elseif concatenados. Su
forma general es la siguiente:
switch expresion
case case_expr1
comandos
case case_expr2
comandos
...
otherwise % opcin por defecto
comandos
end
Por ejemplo si queremos realizar acciones distintas en funcin del valor de una variable entera
podemos escribir:


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

37
A = 1; B = 2;
switch A + B
case 3
disp('el resultado es 3')
case 5
disp('el resultado es 5 ')
otherwise
disp('el resultado ni es tres ni cinco')
end
Los bucles for y while
FOR...END
Cuando queremos ejecutar un conjunto de comandos un nmero predeterminado de veces
utilizamos la funcin for...end, cuya forma general es:
for contador = [vector de valores]
comandos
end
A modo de ejemplo si queremos sumar los cuadrados de los nmeros enteros impares del 1 al
11 podemos escribir:
suma = 0
for k = 1:2:11
suma = suma + k^2;
end
suma
Aunque producira el mismo resultado la instruccin:
>> suma = sum([1:2:11].^2)
Ejercicio:
Crear un fichero llamado primos.m (FILE>NEW>M-FILE) para calcular la suma de los
100 primeros trminos de la sucesin 1, 2x, 3x2, 4x3, ...


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

38

WHI LE...END
A diferencia del comando for, el comando while se utiliza cuando el nmero de veces que se
ejecuta un determinado conjunto de sentencias depende de una determinada condicin lgica.
Su utilizacin genrica es la que sigue:
while condicion
comandos
end
Por ejemplo si queremos sumar el cuadrado de nmeros pares mientras no se supere un
determinado valor, por ejemplo, 500, entonces:
suma = 0; num = 2;
while suma < 500
suma = suma + num^2;
num = num + 2;
end
suma
Una instruccin muy til es el comando break que se utiliza para salir de un bucle. Por
ejemplo, si desea salir del bucle en el caso de que alguna suma parcial sea exactamente igual a
100, entonces:
suma = 0; num = 2;
while suma < 500
suma = suma + num^2;
num = num + 2;
if suma == 100
break
end
end
suma
Ejercicio:


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

39
Dada la funcin y = e-x calcular el valor x que haga que se cumpla la igualdad x = e-x con un
error de 10-6. Tomar como valor inicial 0.5. Poner una condicin que limite a 10 el nmero
de iteraciones para llegar a la solucin (utilizar break). Adems, probar el programa realizado
suponiendo como condicin inicial x=10.
Ejercicio:
Se desea programar una funcin que calcule, mediante el algoritmo de Euclides, el mximo
comn divisor de dos nmeros naturales, basta escribir un fichero euclides.m cuyo contenido
sea:
function m=euclides(a,b)
% Clculo del mximo comn divisor de dos nmeros naturales
% mediante el algoritmo de Euclides
if a<b
c=b;
b=a;
a=c;
end
while b>0
c=rem(a,b);
a=b;
b=c;
end
m=a;
Si, una vez escrito el fichero anterior, en el espacio de trabajo o en un programa se escribe la
instruccin
mcd=euclides(33,121)
en la variable mcd se almacenar el valor 11.
Las variables de una funcin son siempre locales. Por tanto, aunque en el seno de la funcin
se modifiquen los argumentos de entrada, el valor de las variables correspondientes queda
inalterado.


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

40
Por ejemplo, en la funcin euclides.m se modifica el valor de los argumentos de entrada, pero,
sin embargo:
>>x=15;
>>mcd=euclides(x,3);
>>x
x =
15
Si se pretende que las modificaciones de un argumento de entrada afecten a la variable
correspondiente, deber situarse dicho argumento, adems, en la lista de argumentos de
salida.
Ejercicio:
Crear una funcin llamada miexp que dado un valor de x devuelva como los dos resultados
de las ecuaciones:


Utilizar dicha funcin para resolver la ecuacin no lineal

mediante Newton-
Raphson con un error de

limitando el nmero de iteraciones a 10.

GUIA DE CLASE N 3:
GRAFICOS BI Y TRIDIMENSIONALES:
Para realizar grficos 2 D hay cuatro funciones bsicas:
PLOT( ): permite crear un grfico a partir de vectores y/o columnas de matrices con
escalas lineales sobre ambos ejes (x e y).
Loglog( ): igual que el anterior, pero con escala logartmica.
Semilogx( ): igual que el primero con escala lineal en el eje de las ordenadas y
logartmica en el eje de las abscisas.
Semilogy( ): igual que el primero con escala lineal en el eje de las abscisas y
logartmica en el eje de las ordenadas.
Se toma como referencia la primera y las dems, como consecuencia.
Para agregar ttulos, nombres a cada eje, cuadrculas, textos, etc., existen otras funciones:



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

41
title (Grfica P vs T) aade un ttulo al grfico
xlabel(Temp(C)) aade etiqueta al eje x (con xlabel off desaparece).
ylabel(Presin(KPa)) aade etiqueta al eje y (con ylabel off desaparece).
text (x,y,texto) introduce texto en el lugar especificado por las
coordenadas x e y Si x e y son vectores, el texto se
repite pro cada par de elementos. Si el texto es tambin
un vector d cadenas de texto de la misma dimensin,
cada elemento se escribe en las coordenadas
correspondientes.
gtext(texto) introduce texto con ayuda del ratn: el cursor cambia de
forma y se espera un clic para introducir el texto en esa
posicin.
legend ( ) define rtulos para las distintas lneas o ejes usados en
la figura.
grid on activa la inclusin de una cuadrcula en el dibujo. Con
grid off desaparece la cuadrcula.

Ejemplo: Realizar una grfica de un coseno multiplicado por una funcin exponencial
Recordar dar espaciamiento entre puntos pequeos (0.01 o 0.00 son suficientes) y que los
productos o divisiones se tienen que hacer elemento a elementos (.* ./ ).
>> x= -5: 0.01:5;
>> y= cos(x).*exp(-0.05* x);
>>h=figure(1);
>>plot(x,y,r); % grafica x vs y de color rojo.
>>xlabel(Eje X); %etiqueta del eje x
>>yalbel(Eje Y); % etiqueta del eje y
>>title(COSENO EXPONENCIAL); % ttulo
>>text(1.5, 0.75,cos(x)*exp(-0,05 * x)); % texto en la posicin x,y,
>>grid on; % rejilla
>>legend(Coseno Exponencial); %rtulo
>>figure (gcf); % para que la figura pase a primer plano.



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

42

COMANDOS hold on y hold off:
Se usan en las grficas para ciertas condiciones. El primero de ellos hace que los grficos
sucesivos respeten los ya dibujados en la figura.
Es posible que haya modificacin en la escala de los ejes.
El comando hold off deshace el efecto de hold on










-5 -4 -3 -2 -1 0 1 2 3 4 5
-1.5
-1
-0.5
0
0.5
1
1.5
Eje X
E
j
e

Y
COSENO EXPONENCIAL
cos(x)*exp(-0,05 * x)


Coseno Exponencial


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

43
GUIA DE CLASE N 4:
SISTEMAS DE ECUACIONES Y FUNCIONES
TRIDIMENSIONALES.
Interpretacin Grfica:
Una ecuacin lineal con dos variables, como 2x y =3, define una recta (y=mx+b). Se puede
escribir como y=2x -3. Si hay dos ecuaciones, estas pueden ser lineales y cruzarse o no. Si
una ecuacin tiene tres variables, x, y, z, representan un plano en un espacio tridimensional.
Si hay dos ecuaciones con tres variables, pueden representar dos planos que se cruzan o no,
etc..
Hiperplano: es el conjunto de puntos definido por una ecuacin con ms de tres variables. Y
en general, un conjunto de M ecuaciones lineales con N incgnitas, donde cada ecuacin
define un hiperplano nico que no es idntico a ninguno otro del sistema. Si M<N, el sistema
est subespecificado y no existe una solucin nica. Si M=N, existir una solucin nica si
ningn par de ecuaciones representa hiperplanos paralelos. Si M>N, el sistema est sobre
especificado y no existe solucin nica. El conjunto de ecuaciones tambin se denomina
sistema de ecuaciones. Un sistema de ecuaciones con una solucin nica es no singular, y
uno que no tiene solucin nica se llama singular.
Ejemplo:
Para el sistema: x+y=2; 2x y = 1; x + 2y = 3;
M=3>N=2, de modo que la nica solucin es x =1, y=1. Si M>N el sistema puede no tener
solucin, tener solucin nica o infinidad de soluciones.
Ejercicio: considere el siguiente sistema de tres ecuaciones con tres incgnitas:
3x + 2y z =10
x + 3y + 2 z = 5
x - y - z = -1
Utilizando matrices, se puede escribir:
[



] [

] [

]
La forma matricial:
A X = B
Se puede multiplicar y se obtiene el sistema original


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

44
Pero, si se tiene ms de tres variables, la notacin se puede hacer torpe, x
1
, x
2
, x
3
, etc. El
conjunto de ecuaciones se representa como vectores fila B y X:
Ejemplo:



X=[ x
1
x
2
x
3
]
t
[



] B=[ 10 5 -1]
t




PROGRAMACION BASICA:
Limitaciones computacionales. Opciones de exhibicin. Exactitud y
precisin.
Administracin de archivos. Ficheros M-Files. Errores y
depuracin. Rutas de bsqueda y arranque en Matlab.
Ejemplos prcticos (visin general)
Reaccin de primer orden
Raz de una funcin usando un m-file y fzero
Usando fzero desde el Command Window
Solucin de sistemas de ecuaciones lineales
Integracin numrica y simblica
Ecuaciones diferenciales de primer y segundo orden
Sistemas de ecuaciones diferenciales ordinarias
Reacciones mltiples



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

45
CLASE N 5:
APLICACIONES DE MATLAB A LA RESOLUCIN DE PROBLEMAS
DE INGENIERA
Rezolvare: In calculele ingineresti, caldura specifica a unei solutii de NaOH (exprimat
a n [J/(kgK)]), cp,sol se calculeaza cu relatia aproximativa [7]:
cp,sol = 4190 (1 xNaOH) + cp,NaOH xNaOH (10.3)
unde cp,NaOH reprezinta caldura specifica a hidroxidului de sodiu anhidru iar xNaOH
este fractia masica a hidroxidului n solutie. Aceasta relatie este valabila pentru cazul
solutiilor concentrate (xNaOH > 0,2). Pentru solutii diluate (xNaOH 6 0,2) se foloseste
relatia:
cp,sol = 4190 (1 xNaOH) (10.4)
Caldura specifica a hidroxidului de sodiu anhidru (exprimata n [J/(kgK)]) n
functie de temperatura, se calculeaza cu relatia:
cp,NaOH = 0,1835 + 3,125 T + 0,347
T2 (10.5)
Functia MATLAB pentru calcularea caldurii specifice a solutiei de NaOH este:
function cp = cpSol(x,T)
%Functie pentru calcularea caldurii specifice
% a solutiei de NaOH
%%
Mod de apelare:
% CP = CPSOL(X,T)
% unde: CP - caldura specifica a solutiei, [J/(kg.K)]
% X - fractia masica a NaOH in solutie
% T - temperatura, [K]
if x<=0.2
cpSol = 4190*(1 - x);
else
cpNaOH = 0.1835 + 3.125*T + 0.347/T.^2;
cp = 4190*(1 - x) + cpNaOH*x;
end
% end function cpSol
Pentru a calcula caldura specifica a solutiei de NaOH avand fractia masica de 0,25
la temperatura de 50C = 323,15 K, comanda necesara este:
>> cpSol(0.25,323.15)
ans =
3.3950e+003
Densitatea unui amestec de gaze
Exercitiul 10.3. Sa se scrie o functie MATLAB pentru determinarea densitatii
unui amestec gazos continand: CO2, H2 si CO.
Utilizand aceasta functie sa se determine densitatea unui
amestec avand urmatoarea compozitie exprimata n procente
molare: 25 % CO2, 60%H2 si 15 % CO, la temperatura de
150C si presiunea de 20 bar.
Rezolvare: Densitatea unui amestec de gaze reale, _am se calculeaza cu expresia:
_am = Mam
P
ZamRT (10.6)
unde: Mam reprezinta masa moleculara a amestecului, Zam este coeficientul de compresibilitate
al amestecului, T este temperatura n [K] iar R este constanta universala
a gazelor egala cu 8,3143 [J/(molK)].
Masa moleculara a amestecului se calculeaza cu expresia:
Mam =
Xn
i=1
Mi


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

46
xi
(10.7)
iar coeficientul de compresibilitate prin relatia:
Zam =
Xn
i=1
Zixi (10.8)
pentru cazul n care amestecul este format din n componente. In aceste relatii Mi
reprezinta masa moleculara, Zi este coeficientul de compresibilitate iar xi reprezinta
fractia molara toate acestea considerate pentru componenta i din amestec.
Datele necesare efectuarii calculelor sunt prezentate n tabelul 10.1.
Tabelul 10.1. Date componente amestec gazos
Componenta Masa Coeficientul de
moleculara compresibilitate
CO2 44,010 0,274
H2 2,016 0,303
CO 28,010 0,295
FunctiaMATLAB este astfel conceputancat sa poata fi apelata prin trei argumente:
primul este un vector de trei componente n care se specifica continutul de CO2,
H2 si CO n fractii molare, temperatura amestecului n grade Kelvin,
presiunea, n bar, la care se gaseste amestecul.
Avem urmatoarea functie MATLAB:
function ro = densAm(x,T,P)
%Functie pentru calcularea densitatii unui
% amestec de CO2 H2 si CO
%%
Mod de apelare:
% RO = DENSAM(X,T,P)
% unde: RO - densitatea amestecului, [kg/mc]
% X - compozitia in fractii masice in ordinea CO2 H2 CO
% T - temperatura, [K]
% P - presiunea, [bar]
R = 8.3143; % const.univ. a gazelor, [J/(mol.K)]
% masele moleculare
% CO2 H2 CO
M = [44.01 2.016 28.01];
% coeficientul de compresibilitate
% CO2 H2 CO
z = [0.274 0.303 0.295];
Zam = sum(x.*z);
Mam = sum(M./x);
ro = Mam.*P./(Zam.*T.*R);
% end function densAm
Apelam functia cu datele noastre:
>> densAm([0.25 0.6 0.15],423,20)
ans =
7.0688
Calculul grosimii peretilor unui vas cilindric
Exercitiul 10.4. Un vas cilindric vertical este utilizat pentru stocarea unui produs
lichid necoroziv avand densitatea de 1.200 kg/m3.
Vasul, construit din OL42, lucreaza la presiunea maxima admisibil
a de lucru de 8 bar si temperatura de 60C avand
un diametru de 1.100 mm si o naltime de 2.100 mm fiind
prevazut cu fund si capac plat.
Sa se construiasca un program MATLAB pentru calcularea grosimii
de proiectare a peretilor vasului.
Rezolvare: Grosimea de proiectare a peretilor unui vas, _p n [mm], se calculeaza cu
relatia [20]:
_p = _0 + cex + cr (10.9)
unde _0 este grosimea de rezistenta a elementului, cex este adaosul pentru conditiile
de exploatare iar cr reprezinta rotunjirea aplicata pentru aducerea valorii grosimii de


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

47
proiectare la o grosime standardizata.
Grosimea de rezistenta, _0 n [mm] pentru un element cilindric este data de relatia:
_0 = pc D
2 ' _ta
pc
(10.10)
unde: pc este presiunea de calcul a recipientului n [MPa], D este diametrul recipientului
n [mm], _ta
este rezistenta admisibila a materialului de constructie al vasului
la temperatura de calcul exprimata n [MPa] iar ' este coeficientul de rezistenta al
mbinarilor sudate.
Adaosul pentru conditiile de exploatare, cex n [mm] este grosimea suplimentara
care se adauga la grosimea de rezistenta a peretelui vasului ce este susceptibil de a se
subtia datorita coroziunii/eroziunii n asa fel ncat sa asigure functionarea sigura pe
durata de functionare a vasului. Acest adaos este dat de relatia:
cex = (vce + vci + ve) _ (10.11)
unde: vce este viteza de coroziune pe fata exterioara a vasului n [mm/an], vci este
viteza de coroziune pe fata interioara a vasului, n [mm/an], ve este viteza de eroziune
n [mm/an] iar _ reprezinta durata de functionare a aparatului exprimata n [ani].
Ultima componenta a calculului grosimii de proiectare este rotunjirea cr, care tine
seama de valoarea grosimii standardizate imediat superioare sumei _0+cex a tablei din
care se confectioneaza vasul si de abaterea negativa la grosime, cab, care se stabileste
din standarde functie de grosimea standardizata.
Calcul de rezistenta prezentat este valabil doar pentru vase cu pereti subtiri,
conditia care se cere a fi ndeplinita pentru aceasta fiind:
__
0D
6 0,1 (10.12)
unde __
0 = _p cex cab este grosimea de rezistenta efectiva.
Presiunea de calcul, pc este egala cu presiunea maxima admisibila de lucru a
vasului, pm la care se adauga presiunea hidrostatica a coloanei de lichid din vas:
pc = pm + ph (10.13)
Presiunea hidrostatica, ph reprezinta presiunea datorata coloanei de lichid din
recipient si se calculeaza cu relatia:
ph = 9,81 109 hl _ (10.14)
unde hl reprezinta naltimea coloanei de lichid iar _ densitatea lichidului.
Presiunea de ncercare hidraulica a recipientului pph este data de relatia:
pph = 1,25 pm _20
a
_ta
(10.15)
unde _20
a este rezistenta admisibila a materialului de constructie al vasului la temperatura
de 20C.
Presiunea de ncercare hidraulica calculata, pphc este data de relatia:
pphc = pph + pha (10.16)
unde pha este presiunea hidrostatica a lichidului de ncercare care este apa.
Rezistenta admisibila a materialului _20
a si _ta
se calculeaza prin relatiile:
_20
a = min
__20
c
1,5 ; _20
r
2,4
_
(10.17)


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

48
_ta
= min
_ _tc
1,5; _tr
2,4
_
(10.18)
unde: _c si _r reprezinta limita de curgere respectiv rezistenta la rupere la tractiune
n [MPa].
Rezistenta efectiva a peretelui vasului la ncercarea de presiune hidraulica se calculeaz
a cu relatia:
_ef = pphc(D + s_
0)
2 ' __
0
(10.19)
Verificarea vasului la presiune hidraulica implica respectarea conditiei:
_ef 6 0,9 _20
c (10.20)
Calculul de rezistenta al peretelui unui vas cilindric implica parcurgerea urmatorului
algoritm:
1. se calculeaza grosimea de rezistenta _0 cu relatia 10.10;
2. se calculeaza adaosul pentru conditiile de exploatare, cex cu relatia 10.11;
3. se identifica valoare rotunjirii cr prin alegerea grosimii standardizate imediat
superioare valorii calculate _0 + cex;
4. se verifica daca vasul este cu pereti subtiri conform conditiei 10.12. Daca acest
lucru nu se verifica, algoritmul este abandonat;
5. se calculeaza rezistenta efectiva cu relatia 10.19;
6. se verifica conditia 10.20. Daca aceasta conditie se verifica grosimea de proiectare
a peretelui vasului, _p este corecta si algoritmul furnizeaza aceasta valoare.
Daca conditia nu de respecta se incrementeaza cu 1 mm grosimea de rezistenta
efectiva a vasului, __
0 si se revine la pasul 2 al algoritmului.
Caracteristicile materialului de constructie al vasului sunt aratate n tabelul 10.2.
Tabelul 10.2. Caracteristici OL42 (conform SR EN 10207/95).
Caracteristici Valoare
_20
c , [MPa] 260
_tc
, [MPa]
la 100C 225
la 150C 216
la 200C 206
la 250C 186
_20
r , [MPa] 410
_tr
, [MPa]
la 100C 395
la 150C 380
la 200C 360
la 250C 300
grosime tabla, [mm] 4, 5 (abatere la grosime: 0,5 mm)
6, 7 (abatere la grosime: 0,6 mm)
8, 9, 10, 12, 14, 15, 16, 18, 20, 22, 25
(abatere la grosime: 0,8 mm)
28, 30 (abatere la grosime: 0,9 mm)
32, 35, 38, 40 (abatere la grosime: 1,0 mm)
Utilizand toate aceste informatii, se scrie urmatorul program MATLAB:
%Program de calcul al grosimii de proiectare


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

49
% pentru un vas cilindric vertical
clear all;clc
false = 0;
true = 1;
p_m = 0.8; % presiunea maxima admisibila, [MPa]
D = 1100; % diametrul vasului, [mm]
H = 2100; % inaltimea vasului, [mm]
t = 60; % temperatura maxima de lucru, [grd.C]
ro = 1200; % densitatea lichid stocat, [kg/mc]
an = 10; % durata de exploatare, [ani]
v_ex = 0.1; % viteza procesului de coroziune externa, [mm/an]
v_in = 0; % viteza procesului de coroziune interna, [mm/an]
v_e = 0.01; % viteza procesului de eroziune, [mm/an]
fi = 0.9; % coef. suduri
ro_apa = 1000; % densitate lichid de incercare, [kg/mc]
% caracteristici material
sig_c_20 = 260;
sig_r_20 = 410;
t_date = [100 150 200 250];
sig_c = [225 216 206 186];
sig_r = [395 380 360 300];
% grosime si abatere standard a tablei
ds = [4 5 6 7 8 9 10 12 14 15 16 ...
18 20 22 25 28 30 32 35 38 40];
ab = -[0.5 0.5 0.6 0.6 0.8 0.8 0.8 0.8 0.8 0.8 0.8 ...
0.8 0.8 0.8 0.8 0.9 0.9 1 1 1 1];
% calcul rezistenta material
sig_a_20 = min([sig_c_20/1.5 sig_r_20/2.4]);
sig_c_t = interp1([20 t_date],[sig_c_20 sig_c],t);
sig_r_t = interp1([20 t_date],[sig_r_20 sig_r],t);
sig_a_t = min([sig_c_t/1.5 sig_r_t/2.4]);
% presiunea hidrostatica, [MPa]
p_h = 9.81e-8*H*ro;
% presiunea de calcul, [MPa]
p_c = p_m + p_h;
% grosimea de rezistenta, [mm]
d0 = p_c*D / (2*fi*sig_a_t - p_c);
% adaos de exploatare, [mm]
c_ex = (v_ex + v_in + v_e)*an;
% grosimea de rezistenta calculata, [mm]
d0c = d0 + c_ex;
test = false;
while ~test
% grosimea standardizata, [mm]
i = 1;
while (d0c-ab(i))>ds(i)
i = i + 1;
end
c_r = ds(i) - (d0 + c_ex - ab(i));
d_p = d0 + c_ex + c_r - ab(i);
% presiunea de incercare hidraulica, [MPa]
p_ph = 1.25*p_m*sig_a_20/sig_a_t;
% presiunea hidrostatica apa, [MPa]
p_ha = 9.81e-8*H*ro_apa;
% presiunea de incercare hidraulica calculata, [MPa]
p_phc = p_ph + p_ha;
if (d0c/D)>0.1
error(Vasul este cu pereti grosi!!!);
end


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

50
sig_ef = p_phc*(D + d0c)/(2*fi*d0c);
test = sig_ef<=(0.9*sig_c_t);
if ~test d0c = d0c + 1; end
end;
% raport
disp( Calculul grosimii de proiectare);
disp( =========================================);
disp(sprintf( diametrul, [mm] %4d,D));
disp(sprintf( inaltimea, [mm] %4d,H));
disp(sprintf( presiunea, [MPa] %5.1f,p_m));
disp(sprintf( temperatura, [grd.C] %3d,t));
disp( -----------------------------------------);
disp(sprintf( rezistenta mat. 20C, [MPa] %5.1f,sig_a_20));
disp(sprintf( rezistenta mat.%3dC, [MPa] %5.1f,t,sig_a_t));
disp( -----------------------------------------);
disp(sprintf( presiunea de calcul, [MPa] %7.3f,p_c));
disp(sprintf( pres.de incercare hidr., [MPa] %7.3f,p_phc));
disp( -----------------------------------------);
disp(sprintf( grosimea de proiectare, [mm] %2d,d_p));
disp( =========================================);
% end script
Dupa rularea programului obtinem urmatorul raport:
Calculul grosimii de proiectare
=========================================
diametrul, [mm] 1100
inaltimea, [mm] 2100
presiunea, [MPa] 0.8
temperatura, [grd.C] 60
-----------------------------------------
rezistenta mat. 20C, [MPa] 170.8
rezistenta mat. 60C, [MPa] 161.7
-----------------------------------------
presiunea de calcul, [MPa] 1.047
pres.de incercare hidr., [MPa] 1.263
-----------------------------------------
grosimea de proiectare, [mm] 6
=========================================
10.2.2. Calculul puterii necesare la antrenarea unui amestecator
Exercitiul 10.5. Se cunosc urmatoarele informatii despre un reactor prevazut
cu un sistem de amestecare cu elice:
presiunea maxima de lucru din vas: 0,8 MPa;
densitatea mediului de lucru: 1.200 kg/m3;
vascozitatea dinamica a mediului de lucru: 5,5 cP;
diametrul elicei: 0,4 m;
turatia: 300 min1;
diametrul arborelui: 60 mm;
latimea unui inel de etansare: 20 mm.
Sa se scrie un program MATLAB pentru calculul puterii electromotorului
de actionare al sistemului de amestecare.
Rezolvare: Puterea efectiva de actionare a unui amestecator, N, se stabileste functie
de mai multe elemente: puterea necesara amestecarii, Nam, care exprima puterea efectiv
a transmisa mediului de lucru, puterea pierduta prin frecare n cutia de etansare,
Nf si puterea pierduta n vas datorita amenajarilor interioare (teaca de masurare a
temperaturii, serpentina, spargator de vartej, rugozitatea peretilor, s.a.m.d.). Relatia
de calcul utilizata este [20]:
N = k
_t

h


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

51
Nam
_
1 +
X
'i
_
+ Nf
i
(10.21)
unde: k reprezinta coeficientul de majorare a puterii care tine seama de suprasarcinile
care apar la pornire, umplere sau alimentare, _t este randamentul total al sistemului
de actionare iar 'i reprezinta factori de majorare datorate prezentei unor amenajari
interioare. In cazul P'i = 0,4. nostru, valorile acestor coeficienti sunt: k = 1,25, _t = 0,95 si
Puterea necesara amestecarii, n [kW], pentru alte amestecatoare decat cele de
tipul impeller, se calculeaza cu relatia:
Nam = np
_ n
60
_3
d5 _ 103 (10.22)
unde: np este numarul caracteristic de putere, n reprezinta turatia amestecatorului
[min1], d este diametrul amestecatorului, [m], iar _ este densitatea lichidului antrenat.
Numarul caracteristic de putere, np, se stabileste functie de criteriul Reynolds
conform datelor prezentate n tabelul 10.3. Valoarea criteriului Re se calculeaza cu
expresia:
Re = 16,25 n d2 _
_ (10.23)
unde _ reprezinta vascozitatea mediului de lucru, n [cP].
Tabelul 10.3. Numarul caracteristic de
putere pentru amestecatoare cu elice.
Valoarea Numarul caracteristic
criteriului Re de putere, np
102 1
103 0,5
104 0,3
105 0,27
106 0,22
Puterea consumata prin frecare n cutia de etansare a sistemului de amestecare,
Nf n [kW], se calculeaza cu relatia:
Nf = 2,255 107 d2
a m b pm n (10.24)
unde: da este diametrul arborelui amestecatorului n dreptul cutiei de etansare, n
[mm], m reprezinta numarul de inele de etansare, b estenaltimea unui inel de etansare,
n [mm], este coeficientul de frecare si pm reprezinta presiunea maxima admisibila
de lucru n vas, [MPa]. Valorile utilizate n acest caz sunt: m = 4, b = 20 [mm] si
= 0,075.
Puterea calculata a electromotorului, conform relatiei 10.21, este folosita pentru
alegerea puterii electromotorului dintr-o lista de puteri disponibile. Puterile electromotoarelor
disponibile pe piata formeaza urmatorul sir de valori, n [kW]: 0,8; 1,1;
1,5; 2,2; 3; 4; 5,5; 7,5; 10; 13; 17; 22; 30; 40; 55; 70.
Utilizand aceste informatii, se construieste urmatorul program MATLAB:
%Program de calcul al puterii electromotorului
% de antrenare al unui amestecator cu elice
clear all;clc
false = 0;
true = 1;
p_m = 0.8; % presiunea maxima admisibila, [MPa]
d = 0.4; % diametrul elicei, [mm]
d_a = 60; % diametrul arbore, [mm]
n = 300; % turatia elicei, [1/min]


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

52
ro = 1200; % densitatea mediului de lucru, [kg/mc]
eta = 5.5; % vascozitatea mediului de lucru, [cP]
k = 1.25; % coef. majorare putere
rt = 0.95; % randament totalal sistemului de actionare
sfi = 0.4; % suma amenajari interioare
m = 4; % numar inele de etansare
b = 20; % inaltimea inelului de etansare, [mm]
c_f = 0.075; % coeficient de frecare
Re_t = [1e2 1e3 1e4 1e5 1e6];
np_t = [1 0.5 0.3 0.27 0.22];
P_disp = [0.8 1.1 1.5 2.2 3 4 5.5 7.5 ...
10 13 17 22 30 40 55 70];
% calculul coeficientului de putere
Re = 16.25*n*d^2*ro/eta;
np = interp1(log(Re_t), np_t, log(Re));
% calculul puterii necesare pentru amestecare
N_am = np * (n/60)^3 * d^5 * ro * 1e-3;
% calculul puterii consumate prin frecare
N_f = 2.255e-7 * d_a^2 * m * b * c_f * p_m * n;
% calcul puterii efective de actionare
N = k/rt*(N_am*(1 + sfi) + N_f);
disp(sprintf(Puterea efectiva %6.2f kW,N));
% alegerea puterii electromotorului
i = 1;
while N>P_disp(i)
i = i + 1;
end;
P = P_disp(i);
disp(sprintf(Putere electromotor %6.2f kW,P));
% end script
Apeland acest program, obtinem urmatorul rezultat:
Puterea efectiva 2.27 kW
Putere electromotor 3.00 Kw













MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

53
FUNCION plot3( )
La funcin plot3 es anloga a su homloga bidimensional plot. Su forma ms sencilla es la
siguiente:
>> plot3(x,y,z)
que dibuja una lnea que une los puntos (x(1), y(1), z(1)), (x(2), y(2), z(2)), etc. y la proyecta
sobre un plano para poderla representar en la pantalla.
Ejemplo:
x=cost(t);
y=cost(t);
z=t;


DIBUJO DE MALLADOS:
FUNCIONES meshgrid(), mesh(), surf()
Meshgrid



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

54






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

55











MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

56
DIBUJO DE CURVAS DE NIVEL:
FUNCIONES contour, contour3, surf.

Siguiendo con el ejemplo anterior:





MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

57





Otros tipos de ploteos tridimensionales de Funciones:
La table de abajo mestra todas la variedad de graficaciones de funciones y volmenes 3D. Inclusive funciones
que generan data 3-D (cilindro, elipsoide, esfera), ademas otros arreglos de data o funciones. Para
informacinacerca de los ejemplos del uso de funciones grficas 3-D, ver Creacin de Grafics 3 D en la
documentacin Visualizacin 3 D.


MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

58
GRAFICOS DE:
Lneas mallas reas superficies direcciones volumtricos





Sistemas de ecuaciones no lineales.
Comando fsolve()



MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

59



mifuncion.m


En la ventana de comandos:


Integracin

quad(@f, a, b)Integra por cuadraturas la funcin f, desde ahasta b.




MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

60
Diferenciacin numrica:

diff(x)
Si x = [x(1) x(2) x(n)] entonces
diff(x) = [x(2)-x(1) x(3)-x(2) x(n)-x(n-1)]

EDOs de primer orden








MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

61



Lmites



Derivacin e integracin




MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

62






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

63






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

64






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

65



Series de Taylor







MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

66
Ecuaciones diferenciales ordinarias






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

67
Simulacin de un reactor no isotrmico










MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

68




MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

69






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

70








MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

71






MANUAL DE MATLAB BASICO I
MATLAB VER 7.0 ING. JOSE SAUL ORBEGOSO LOPEZ

72

Vous aimerez peut-être aussi