Вы находитесь на странице: 1из 37

UNIVERSIDAD UNIVERSIDAD UNIVERSIDAD UNIVERSIDAD

DEL DEL DEL DEL ATLANTICO ATLANTICO ATLANTICO ATLANTICO









FACULTAD DE INGENIERA FACULTAD DE INGENIERA FACULTAD DE INGENIERA FACULTAD DE INGENIERA




MANUAL DE LABORATORIO MANUAL DE LABORATORIO MANUAL DE LABORATORIO MANUAL DE LABORATORIO
INFORMATICA PARA INGENIERA QUMICA. INFORMATICA PARA INGENIERA QUMICA. INFORMATICA PARA INGENIERA QUMICA. INFORMATICA PARA INGENIERA QUMICA.

II II II II




FRANCISCO MUOZ PABA FRANCISCO MUOZ PABA FRANCISCO MUOZ PABA FRANCISCO MUOZ PABA M.Sc M.Sc M.Sc M.Sc
PROFESOR PROFESOR PROFESOR PROFESOR



2

EJEMPLO 5 APLICACIN DEL MTODO DE SIMPSON Y DEL TRAPECIO


El proceso de calcular el valor de una integral definida a partir de un conjunto de valores
numricos del integrando recibe el nombre de integracin numrica. El integrando se
representa por una frmula de interpolacin y la frmula se integra entre los limites deseados.

Mtodo de Simpson.

Este mtodo se puede resumir diciendo que se basa en la conexin de los puntos (xi,yi) por
una series de parbolas.
Las funciones de ste tipo son polinomios de segundo grado
2
) ( cx bx a x f + + =
Hay un error inherente, por supuesto, si el polinomio es mayor de segundo grado. La frmula
final de la ecuacin para la Regla 1/3 de Simpson es
|

+ + +
+ + + + + =

b
a
n n
n
y y y y
y y y y
h
ydx
) ( 2
) ( 4 [
3
2 4 2
1 3 1 0
L
L

(1)
La regla de Simpson sola es exacta para polinomios de primero y segundo grado. El grado de
la funcin es desconocida en muchas aplicaciones, por consiguiente, se debe calcular el error.
El error se calcula por la siguiente ecuacin:
Error = | ) ( 7 ) ( 4
90
1 1 0 1 1 +
+ + + +
n n n
y y y y y y
h
- ) ( 8 ) ( 8
3 5 3 2 4 2
+ + + + + +
n n
y y y y y y L L
(2)
Donde h = 6 n y x
i



Mtodo trapezoidal compuesto.

Consiste en dividir el intervalo[a , b] en n subintervalos y aproximar cada uno por un
polinomio de primer grado, luego se aplica la frmula trapezoidal a cada subintervalo y se
obtiene el rea de cada trapezoide, de tal modo que la suma de todas ellas da la aproximacin
al rea bajo la curva de la funcin. La forma final de la ecuacin para el mtodo trapezoidal
compuesto es:

| |

+ + + + + + =

b
a
n n
y y y y y y
h
ydx ) ( 2
2
1 3 2 1 0
L (3)








3
EJEMPLOS PARA ILUSTRAR LOS MTODOS

EJEMPLO 1
Una torre empacada absorbe un gas A de un gas de combustin. El gas de entrada a la torre
contiene 10.5% molar de A y el gas de salida contiene 2.5% molar de A. Calcule el nmero de
unidades de transferencia necesarias,
OG
N . Los datos se muestran en la tabla 1

Tabla 1 Datos para el problema de unidades de transferencia.
Datos Calculados de los datos
y y* y y*
*
1
y y


0.015 ) (
1
x 0.006342 0.008658 115.5 ) (
1
y
0.025 ) (
0
x 0.014328 0.010672 93.7 ) (
0
y
0.035 ) (
1
x 0.02250 0.012500 80.0 ) (
1
y
0.045 . 0.031264 0.013736 72.8 .
0.055 . 0.040141 0.014859 67.3 .
0.065 . 0.049202 0.015798 63.3
0.075 0.058444 0.016556 60.4
0.085 . 0.067833 0.017167 58.25 .
0.095 ) (
7
x 0.077425 0.017575 56.9 ) (
7
y
0.105 ) (
n
x 0.087127 0.017873 55.95 ) (
n
y
0.115 ) (
1 + n
x 0.096819 0.018181 55.0 ) (
1 + n
y
y* = Composicin en equilibrio.

Primero resolvemos el problema aplicando el mtodo 1/3 de Simpson. Suponiendo
que la pelcula gaseosa es la controlante, tenemos:

+ + =

=
) 2 (
) 1 (
*
3 . 67 80 ( 4 7 . 93 [
3
01 . 0
y
y
OG
y y
dy
N + 60.4 +56.9) + 2 (72.8 +
63.3 + 58.25)+ 5.95] = 5.3225 unidades de transf.
Error =
| . 000333 . 0 ) 4 . 60
3 . 67 ( 8 ) 25 . 58 3 . 63 8 . 72 ( 8 ) 7 . 56 80 ( 7 ) 95 . 55 7 . 93 ( 4 55 5 . 115 [
90
01 . 0
transf de unidades = +
+ + + + + + + + +

El error es relativamente pequeo.

Por el mtodo trapezoidal compuesto aplicamos la ecuacin (3)

+ + = =
) 2 (
) 1 (
8 . 72 80 ( 2 7 . 93 [
2
01 . 0
y
y
OG
N
+ 67.3 + 63.3 + 60.4 + 58.25 + 56.9)
+ 55.95 ] = 5.3377 unidades de transf.





4
EJEMPLO 2
Consideremos ahora una columna de destilacin discontinua que contiene una mezcla de
50% molar de A en B, se destila hasta que la fraccin molar de A en el hervidor sea menor que
0.20. Calcule la razn
0
W
W
Los datos se muestran en la tabla 2. y se grafican en la figura 1.


Tabla 2 Datos para el problema de la columna de destilacin discontina
W D
W D W D
x x
x x x x

1

0.549 0.129 ) (
0
x 0.420 2.38 ) (
0
y
0.691 0.191 ) (
1
x 0.500 2.00 ) (
1
y
0.793 0.253 ) (
2
x 0.540 1.85 ) (
2
y
0.806 0.314 . 0.492 1.83 .
0.902 0.376 . 0.526 1.90 .
0.928 0.438 ) (
5
x 0.490 2.04 ) (
5
y
0.950 0.50 ) (
n
x 0.450 2.22 ) (
n
y



Aplicando el mtodo 1/3 de Simpson, tenemos
=

f
x
x
w D
w
x x
dx
A
0
|
4776 . 0 739 . 0 ln
739 . 0 22 . 2 ) 04 . 2 85 . 1 ( 2
) 04 . 2 83 . 1 0 . 2 ( 4 38 . 2 [
3
0618 . 0
0 0
= =
= + + +
+ + +
W
W
y
W
W





Fig 1 Grfica de Xw vs 1/(XD- Xw)



5
Por el mtodo trapezoidal compuesto, tenemos que

+ + =

=
w
x
x
w D
w
x x
dx
A
0
0 . 2 ( 2 38 . 2 [
2
0618 . 0
1.85 + 1.83 + 1.90 + 2.04) + 2.22 ]

= 0.7366
4787 . 0 ; 7366 . 0 ln
0 0
= =
W
W
W
W

Se observa que los dos resultados son casi iguales debido a que el polinomio es de orden 3.
El siguiente cdigo de MATLAB hace los clculos de los dos problemas dados anteriormente.

x = input(Introduzca los valores de x = );
y = input(Introduzca los valores de y =);
Area_1= trapz(x,y);
Area_2= Simpson(x,y);
fprintf (\ n Area_1(Mtodo trapezoidal)=%9.4f,Area_1)
fprintf(\ n Area_2(Mtodo 1/3 de Simpson)=%9.4f,Area_2)

function A=Simpson ( x, y)
puntos = length(x);
if length(y) ~= puntos
error(x y y no son de la misma longitud )
end
dx = diff(x);
if max(dx)-min(dx) > min(abs(x))/1000
error ( x no son equidistantes)
end
h= dx(1);
if mod (puntos,2) == 0 precaucin (Agregue nmeros de intervalos)
n= puntos 1;
else
n= puntos;
end
y1 = y(2 : 2 : n 1);
y2 = y(3 : 2 : n 1 );
A= (h/3)*(y(1) + 4*sum(y1) + 2* sum(y2) + y(n)) ;
if n ~= puntos
A = A + (y(puntos) + y(n))* h/2;
end.








6
PRCTICA 4

MTODOS DE BISECCIN, SECANTE Y NEWTON-RAPHSON.

OBJETIVO GENERAL: Calcular la raz o races de ecuaciones no lineales.
OBJETIVOS ESPECIFICOS:
Calcular las races de ecuaciones no lineales, utilizando el mtodo de biseccin.
Calcular las races de ecuaciones no lineales, utilizando el mtodo de la secante.
Calcular las races de ecuaciones no lineales, utilizando el mtodo de Newton-
Raphson.
Temas de consulta: Mtodos numricos para el clculos de races de ecuaciones no
lineales.

Bibliografa:
Nieves A y Domnguez F Mtodos numricos aplicados a la ingeniera CECSA 2002.
Chapra S y Canale R Mtodos numricos para Ingenieros Mc Graw-Hill 1998.

MTODO DE BISECCIN
Este mtodo encuentra una raz de f(x)=0, empezando con dos valores iniciales. S la
funcin cambia de signo( + y - ) al asignarle estos dos valores, se tiene la certeza que
existe por lo menos una raz en ese intervalo. Luego estos dos intervalos se suman y se
divide por 2 y se prueba en cual de estos dos subintervalos hay un cambio de signo.
Siempre se deben tomar los valores de x que hacen que la funcin cambie de signo. La
figura 1 muestra grficamente como los valores sucesivos convergen en una raz de f(x)
cuando se empieza con un par de valores que encierran una raz. Se observa que
3
x est a
la mitad entre
4 2 1
x y x y x est a la mitad entre
3 2
x y x . Estos valores encierran a la
raz cuando f(x) cambia de signo en los dos puntos. A medida que contina el proceso,
resulta evidente que se converge a la raz.

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 3
-10
-8
-6
-4
-2
0
2
4
6
8
10
X3
X2 X1
X4
METODO GRAFICO PARA DETERMINAR LAS RAICES

Fig. 1 Mtodo de biseccin para hallar las races de la funcin 3 3 ) (
2 3
+ = x x x x f .


7
EJEMPLO 1 Aplicacin del mtodo de biseccin
Calcular las races del polinomio 3 3
2 3
+ x x x , utilizando el mtodo de biseccin.
Solucin :
Suponga dos valores iniciales para x de 1 y 2 y observe el cambio de signos de la
funcin f(x). Esto nos indica que entre estos dos valores existe una raz. Los siguientes
clculos se realizaron en una hoja de Excel.

n
x f(x)
1
1 -4
2
2 3
3
1,5 -1,875
4
1,75 0,171875
5
1,625 -0.94335937
6
1,6875 -0,40942382
7
1,71875 -0,12478637
8
1,734375 0,022029877
9
1,7265625 -0,05175542
10
1,73046875 -0,01495724
11
1,73242188 0,003512673
12
1,73144531 -0,00572819
13
1,73193359 -0,00110923
14
1,73217773 0,001201348
15
1,73205566 4,59625E-05
La raz calculada es 1.73205.

El siguiente programa codificado en Matlab realiza los clculos anteriores:

% Mtodo de biseccin para clculos de races
xi=1;xd=2;Eps =0.001;
fi = xi^3+ xi^2 - 3*x 3;
fd = xd^3 + xd^2 3*xd 3;
fm =1;
while abs(fm) > Eps;
xm = (xi+xd)/2;
fm = xm^3 + xm^2 3*xm 3;
dist = abs(xi+xm);
disp ([xi xd xm dist fm])
if fi*fm < 0
xd= xm;
fd = fm;
else
xi = xm;
fi = fm;
end
end

CASO DE ESTUDIO 1: Calcule las otras dos races del polinomio f(x)= 3 3
2 3
+ x x x .



8

MTODO DE LA SECANTE
Este mtodo encuentra una raz de f(x)=0, empezando con dos valores iniciales. S la
funcin cambia de signo al asignarle estos dos valores, se tiene la certeza que existe por lo
menos una raz en ese intervalo. En el Mtodo de la Secante se traza una lnea secante que
pasa por los puntos (X1,f(X1)) y (X2,f(X2)) como una aproximacin para f(x) y encontramos
el punto de interseccin de la lnea secante en el eje x como una aproximacin de la raz
buscada.


















Fig. 2 Mtodo de la secante para resolver ecuaciones no lineales.

DERIVACION DE LA FORMULA

Sean
2 1
X y X dos puntos iniciales. La pendiente de la secante que pasa por los puntos
(X1,f(X1))y (X2,f(X2)) est dada por (f(X2)-f(X1 ))/(X2 X1). La ecuacin de la lnea
secante est dada por:
Y-f(X2) = (f(X2)-f(X1))(X- X2)/(X2 X1). ( 1)

La primera aproximacin X3 es obtenida como la raz de la ecuacin (1). Donde (X3,0) es
un punto sobre la ecuacin (1).
Remplazando en la ecuacin (1):
0 - f(X2) = (f(X2)-f(X1))(X3- X2)/(X2 X1).
ordenando, X3- X2 = -f(X2)( X2- X1) / (f(X2)-f(X1))
y despejando,
( )
) ( ) (
) (
1 2
1 2
2 2 3
X f X f
X X
X f X X

=

La ecuacin general es:

( )
) ( (
) (
1
1
1

=
n n
n n
n n n
X f X f
X X
X f X X


( X1,f(X1))


(X2,f(X2))

X3 X2 X1
9
Estos valores encierran a la raz cuando f(x) cambia de signo en los dos puntos. A medida
que contina el proceso, resulta evidente que se converge a la raz.
EJEMPLO 1 Aplicacin del mtodo de la secante
Calcular las races del polinomio 3 3
2 3
+ x x x , utilizando el mtodo de la secante.

Solucin :
Suponga dos valores iniciales para x de 1 y 2 y observe el cambio de signos de la
funcin f(x). Esto nos indica que entre estos dos valores existe una raz. Los clculos
siguientes se realizaron en una hoja de Excel.

n
x f(x)
1
1 -4
2
2 3
3
1,57142857 -1,3644314
4
1,70541082 -0,2477451
5
1,73513577 0,0292554
6
1,73199637 -0,0005151
7
1,7320507 -1,039E-06
8
1,73205081 3,703E-11
9
1,73205081 0
La raz calculada es 1.73205.
El siguiente programa codificado en Matlab realiza los clculos anteriores:
% Mtodo de la secante para clculos de races
X0=1; X1=2;
for i=1: 4
f0= x0^3 +x0^2 3*x0 3;
f1 = x1^3 + x1^2 3x1 3;
x2= x1 (x1-x0)*f1/(f1 f0);
dist = abs(x2 x1);
disp([x2 dist])
x0 = x1;
x1= x2;
end
CASO DE ESTUDIO 2: Calcule las otras dos races del polinomio f(x)= 3 3
2 3
+ x x x .


METODO DE NEWTON RAPHSON

Tal vez, dentro de las frmulas para localizar races, la frmula de Newton Raphson sea
la ms ampliamente usada. Se supone un slo valor inicial. S el valor inicial de la raz es
Xi, entonces se puede trazar una tangente desde el punto (Xi,f(Xi)). El punto donde esta
tangente cruza al eje X representa una aproximacin mejorada de la raz. Este mtodo se
basa en una expansin de la serie de Taylor de la funcin no lineal f(X) alrededor de un
estimativo inicial (Xi) de la raz.

L +

+

+ + =
! 3
) )( (
! 2
) )( (
) )( ( ) ( ) (
3
1 1
2
1 1
1 1 1
X X X f X X X f
X X X f X f X f (3)

10
Haciendo f(X) = 0 y despreciando los ltimos dos trminos de la serie, y despejando X, se
obtiene:
) (
) (
i
i
i
X f
X f
X X

=

Este es el valor de X que se calcula a partir del valor inicial supuesto Xi, corregido por la
razn
) (
) (
1
X f
X f


La ecuacin general es:



(4)

EJEMPLO 1 APLICACIN DEL MTODO DE NEWTON - RAPHSON
Calcular las races del polinomio 3 3 ) (
2 3
+ = x x x x f , utilizando el mtodo de
Newton Raphson.
Solucin:

1) Suponga un valor inicial para x de 2
2) Determine el valor de la funcin 3 3 ) (
2 3
+ = x x x x f = 3
3) Halle el valor de la derivada de 3 3 ) (
2 3
+ = x x x x f : 3 2 3 ) (
2
+ = x x x f = 13
4) Calcule el prximo valor de x aplicando la ecuacin (4):

76923077 . 1
13
3
2
) (
) (
2 1
= =

=
+
X
X f
X f
X X
n
n
n n


Los clculos siguientes se realizaron en una hoja de Excel.

x f(x) f'(x)
2 3 13
1,76923077 0,36049158 9,92899408
1,73292381 0,00826691 9,47492242
1,73205131 4,7182E-06 9,46410779
La raz calculada es 1.73205.

CASOS DE ESTUDIOS:
1) Calcule las otras dos races del polinomio 3 3 ) (
2 3
+ = x x x x f .
2) Resuelva el siguiente sistema de ecuaciones no lineales:
( )
( ) ( ) 0
0
2 2 2 1
1 1 1 2 0
= + +
= + +
n
A A R A R
n
A A R A R A
kC V C F F C F F
kC V C F F C F FC

Hallar
2 1 A A
C y C

Datos:
( ) ( ) 8 . 1 min / 2 . 0 20 80 min / 100 / 1 min / 25
1 8 . 0
2 1 0
= = = = = = =

n mol lt k lt V lt V lt F lt mol C lt F
R A

) (
) (
1
n
n
n n
X f
X f
X X

=
+
11
PRCTICA 5
SOLUCIN DE ECUACIONES DIFERENCIALES POR MTODOS NUMRICOS.

Objetivo general:
Resolver E.D.O con condicin inicial, mediante los mtodos numricos de Euler simple,
Runge-Kutta de 4 y R-K-Fehlberg.

Objetivos especficos:
Resolver la E.D.O con condicin inicial, mediante los comandos dsolve y ode45
de MATLAB.
Resolver sistemas de E.D.O que se deriven de problemas especficos de igeniera
qumica, usando ode45.
Graficar la solucin de las E.D.O, mediante el comando plot( ) de MATLAB.



Temas de consulta: Solucin de ecuaciones diferenciales por mtodos numricos.
Bibliografa:
Nieve A. Domnguez F. Mtodos Numricos Aplicados a la ingeniera, 2 ed. 2002.
Heral- Wheatley Anlisis Numrico con Aplicaciones, 7 ed. Prentice-Hall 2000.
The MathWorks Inc, Matlab edicin de estudiante. Gua del usuario,Printice-Hall.



EJEMPLO 1 SOLUCIN DE UNA E.D.O CON CONDICIN INICIAL

Resolver dy/dx = x + y y(0)= 1

SOLUCIN ANLITICA:
Paso 1 Escriba en la lnea de comandos de Matlab.
Y= dsolve( Dy = x + y ,y(0)= 1,x)
Paso 2 explot(y,[-6 2]) % Grafica la solucin en una regin de inters.


SOLUCIN POR MTODO NUMRICO:
Paso 1 Guarde en archivo-M
function y= Ec(x,y)
y= x + y;
Paso 2 Escriba en la lnea de comandos de Matlab:
[ x,y]= ode45(Ec; [0:0.1:1], 1) % rsuelve la E.D.O por R-K de 4.
Paso 3 plot(x,y) % grafica la solucin de la E.D.O
Paso 4 tabla = [x y] % Tabula los datos de x y en columnas.





12
Ejemplos de problemas de aplicacin de balances de masa en estado no
estacionario.

1) Un tanque que contiene 100 kg de una solucin de salmuera al 60% (60% de sal) se
llena con una solucin de sal al 10% a la velocidad de 10 kg/min. La solucin se saca del
tanque a la velocidad de 15 kg/min. Suponiendo un mezclado completo, encuentre los
kilogramos de sal en el tanque despus de 10 minutos.
Solucin :
Sea C, los kilogramos de sal en el tanque al tiempo t.
Balance de masa a travs del tanque:

Velocidad de acumulacin





Simplificando, 1
20
3
=

+
t
C
dt
dC

Para resolver la EDO utilizando MATLAB, siga los pasos siguientes:
1.- Determine la condicin inicial de la EDO.En ste caso es ( ) 60 0 = C
2.- Sea X C =
3.-
( ) t
X
X

=
20
* 3
1
'

4.- Guarde en Archivo-M:
( )
( )
;
20
* 3
1
,
t
X
dX
X t def dX function

=
=


5.- Desde el prompts (>>) de MATLAB, escriba:
[t, X]=ode45 (def ,[0 10],60 )
6.- plot(t,x)






15 kg/min
100 kg de
salmuera 60%
10 kg/min, 10 %
Flujo de sal Flujo de sal
que entra - que sale = de sal

( )( )
( ) ( ) dt
dC
t
C
=

10 15 100
15
10 1 . 0
13
2) Un sedimento de xido de uranio al 2 % (
O H lb
UO lb
2
2
100
2
) fluye en un tanque de
100 gal. A la velocidad de 2 gal/min. En un principio el tanque contiene 500 O H lb
2
y
nada de
2
UO . El sedimento est bien mezclado y fluye hacia fuera a la misma velocidad a
la cual entra. Calcule la concentracin del sedimento en el tanque al trmino de una hora.


Solucin:
Suponiendo un sedimento de concentracin diluida, considere que su densidad es
aproximadamente igual a la del agua y en base a esto, la concentracin del sedimento de
entrada en lb/ gal,
sol gal
UO lb
gal
pie
sol pie
sol lb
sol lb
UO lb
6
1
48 . 7
1 4 . 62
102
2
2
3
3
2

|
|

\
|
|
|

\
|
|
|

\
|

Puesto que los flujos de entrada y salida del tanque son iguales, el volumen de la solucin
dentro del tanque permanece constante y es igual a:
gal
pie
gal
lb
pie
O H lb 60
1
48 . 7
4 . 62
1
500
3
3
2

|
|

\
|
|
|

\
|

Sea X, las libras de
2
UO en el tanque al tiempo t.
Balance de masa a travs del tanque:
|
|

\
|
=
|
|

\
|

|
|

\
|
2
2 2
UO de
n acumulaci de Velocidad
sale que
UO de Flujo
entra que
UO de Flujo

dt
dX
gal
UO lb X gal
gal
UO lb gal
=
|
|

\
|
|

\
|

|
|

\
|
|

\
|
60 min
2
6
1
min
2
2 2
.
Simplificando,
30 3
1 X
dt
dX
=
Para resolver la EDO utilizando MATLAB; siga los pasos siguientes:
1.- Determina la condicin inicial de la EDO. En ste caso es X(0)=0
2.-
30 3
1 X
X =

4.- Guardar en archivo-M
( )

=
=
;
30 3
1
, 1
X
dX
X t def dX function

5.- Desde el prompts (>>) de MATLAB, escriba:
[t, X]=ode45(def1,[0 60], 0)
6.- plot(t,x,-o)



2 gal/min, 2 %
2 gal/min 500 lb agua
14
3) Suponga que tiene dos tanques en serie, como se muestra en la figura. El volumen del
lquido en cada tanque permanece constante a causa del diseo de las lneas de rebase.
Suponga que cada tanque se llena con una solucin que contiene 10 lb de A y que los
tanques contienen 100 gal de solucin acuosa cada uno. S entra agua fresca a la velocidad
de 10 gal/hora. Cul es la concentracin de A en cada tanque al trmino de 3 horas?.
Suponga mezclado completo en cada tanque e ignore cualquier cambio de volumen con la
concentracin.



Solucin:
Los balances de masa de A en los tanques son:

Tanque # 1
dt
dQ
gal
lb Q
h
gal
gal
lb o
h
gal
1 2
100
10 10
=
|
|

\
|
|

\
|

|
|

\
|
|

\
|

Tanque # 2
dt
dQ Q Q
2 2 1
100
10
100
10 = |

\
|
|

\
|

Donde:
2 1
Q y Q son las libras de A en los tanques # 1 y # 2 respectivamente.
100 100
2 1
Q
y
Q
las concentraciones en ellos al tiempo t .
Simplificando,


( )
10
10
2 1 2
1 1
Q Q
dt
dQ
Q
dt
dQ

=
=


Para resolver el sistema de EDO, utilizando MATLAB, siga los pasos siguientes:
1.- Determine las condiciones iniciales en c/u de los tanques. En ste caso son
( ) ( ) 10 0 0
2 1
= = Q Q
2.- Haga unos cambios de variables:
2 2 1 1
X Q y X Q = =
3.- Guarde en archivo-M:
( )|

=
=
; ) 2 ( ) 1 ( * ) 10 / 1 ( ); 10 / 1 ( * ) 1 ( [
) , ( 2
X X X xyd
X t def xyd function

4.- Desde el prompts (>>) de MATLAB, escriba: [t, X]=ode45(def2,[0 3],[10 10])

5.- plot(t,X(:,1),-r,t,X(:,2),-b)





# 1

# 2
10 gal/hora
15


4) Cada uno de los tanques A, B y C son llenados con 1000 galones de agua. Los
trabajadores tienen instrucciones de disolver 2000 lb de sal en cada tanque. Por error, 3000
lb se disuelven en los tanques A y C y nada en B. Se desean obtener todas las
composiciones del 5 % de las 2 lb/ gal especificadas. S las unidades A-B-C se conectan
mediante tres bombas de 50 GPM.
a) Exprese las concentraciones
C B A
C y C C , en trminos de t (tiempo).
b) Encuentre el tiempo ms corto al cual todas las concentraciones estn dentro del
intervalo especificado. Suponga que los tanques tienen un buen mezclado.


Solucin:
Sea A, B y C la cantidad de sal en cada tanque al tiempo t.
Balance de masa en cada uno de los tanques.

Tanque A
|
|

\
|
|

\
|

|
|

\
|
|

\
|
=
gal
lb A gal
gal
lb C gal
dt
dA
1000 min
50
1000 min
50

De igual forma se procede para los tanques B y C.
Simplificando,
Tanque A:
20 20
A C
dt
dA
=
Tanque B:
20 20
B A
dt
dB
=
Tanque C:
20 20
C B
dt
dC
=

Para resolver el sistema de EDO, utilizando MATLAB, siga los pasos siguientes:
1.-Determine las condiciones iniciales de c/u de las EDO: A (0)=C(0)=3000 y B(0)=0
2.- Haga los siguientes cambios de variables:
3 2 1
; ; X C X B X A = = =
3.-Guarde en archivo-M:

( |

=
=
; )) 3 ( ) 2 ( ( * ) 20 / 1 )); 2 ( ) 1 ( ( * ) 20 / 1 ( )); 1 ( ) 3 ( ( * ) 20 / 1 [(
) , ( 3
X X X X X X dX
X t def dX function

4.- Desde el prompts (>>) de MATLAB; escriba:
[t, X]=ode45(def3,[0 54],[3000 0 3000]
5.- plot(t,X(:,1),-o,t,X(:,2),-*,t,X(:,3),-+)

50 gpm 50 gpm
1000 gal 1000 gal 1000 gal
A B C


50 gpm
16

Ejemplos de problemas de aplicacin de balances de fuerzas en estado
no estacionario.
5) Un objeto de masa M se fija al extremo inferior de un sistema amortiguador-resorte. El
extremo superior del resorte se fija a una estructura en reposo. El amortiguador ejerce una
fuerza de
dt
dy
B F
B
= sobre la caja, y el resorte otra fuerza de y K F
K
= donde B y K
son las constantes de amortiguacin y del resorte. Aplicando la Segunda ley de Newton se
obtiene la siguiente ecuacin de segundo orden que describe el movimiento del sistema:

0 ) 0 ( ) 0 (
0
= =
= + +
Y C Y
KY Y B Y M
(1)
Resuelva esta ecuacin diferencial para el caso en que M=0.5Kg B=10Ns/m y =100 N/m.

Resuelva la ecuacin (1) en caso que:
a) M=0.5Kg B=10N.s/m K=100 N/m y C =1
b) M=10Kg B=2.5N.s/m K=8.6 N/m y C= 20

SOLUCIN:
a) El siguiente programa resuelve el sistema de E.D.O de primer orden del sistema masa-
resorte-amortiguador:

Escriba el siguiente programa codificado en Matlab:
B=10;K=100;M=0.5;C=1;
A=[0 1;-K/M -B/M];
B=[0 0] ;
H=[0 0];
D=[0];
Tiempo= 0:0.025:1;
U= ones(size(Tiempo));
X0=[C 0];
[Y,X]= lsim(A,B,H,D,U,Tiempo,X0)
plot(Tiempo,X,-r,Tiempo,Y,-b)

M
K B
PROCEDIMIENTO:
Convierta la ecuacin de segundo orden en un
sistema de ecuaciones de primer orden:
y
M
K
z
M
B
z
z y
=
=

Condiciones iniciales: y(0)= C z(0)= 0
17
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-7
-6
-5
-4
-3
-2
-1
0
1

Solucin grfica utilizando el programa del inciso a)

b) El siguiente programa resuelve el sistema de E.D.O del sistema masa-resorte-
amortiguador

% Este programa resuelve un sistema Masa-resorte-
amortiguador
% mediante una E.D.O de segundo orden con valor inicial.
clear all
B=2.5;K=8.6;M=10;
A=[0 1;-K/M -B/M];
B=[0 0]' ;
H=[0 0];
D=[0];
Tiempo=(0:0.1:5)';
U= ones(size(Tiempo));
X0=[20 0];
[Y,X]= lsim(A,B,H,D,U,Tiempo,X0);
plot(Tiempo,X(:,1),'-r',Tiempo,X(:,2),'-b',Tiempo,Y,'--')
disp([Tiempo X])

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
-20
-15
-10
-5
0
5
10
15
20

Solucin grfica utilizando el programa del inciso b)

18
APLICACIN DEL MTODO DE EULER SIMPLE

EJEMPLO 1 Resolver la siguiente E.D.O por el mtodo de Euler simple:
1 ) 0 ( = + = y y t y

El siguiente programa codificado en Matlab resuelve la E.D.O:
clear,clc,clf
tspan=[0 1];
N=10;y0=1;
Ec=inline('t+y','t','y');
h=(tspan(2)-tspan(1))/N;
t=tspan(1)+[0:N]'*h;
y(:,1)=y0(:)';
for k=1:N
y(:,k+1)=y(:,k) + h*Ec(t(k),y(:,k));
end
disp([t y(:)])
plot(t,y,'o-')


La salida del programa es:
t y
0 1.0000
0.1000 1.1000
0.2000 1.2200
0.3000 1.3620
0.4000 1.5282
0.5000 1.7210
0.6000 1.9431
0.7000 2.1974
0.8000 2.4872
0.9000 2.8159
1.0000 3.1875


















t
Solucin grfica de la E.D.O y= t+y



y

19
APLICACIN DEL MTODO DE EULER MODIFICADO
EJEMPLO 2 Resolver la siguiente E.D.O por el mtodo de Euler modificado:
1 ) 0 ( = + = y y t y

SOLUCIN:
Los siguiente programas codificados en Matlab resuelven la E.D.O:
% Programa nmero 1
clear all,clc
tspan=[0 1];N=10;
f=inline('t+y','t','y');
h=(tspan(2)-tspan(1))/N;
t=tspan(1)+[0:N]'*h;
y0=1;
y(:,1)=y0(:)';
disp(' f1 f2 ')
for k=1:N
f1=f(t(k),y(:,k));f1=f1(:)';
f2=f(t(k)+h,y(:,k)+h*f1);f2=f2(:)';
y(:,k+1) =y(:,k)+ h*(f1+f2)/2;
fprintf(' %10.5f %10.5f\n',f1,f2)
end
disp(' t y ')
disp([t y(:)])
plot(t,y(:),'-o')
title('Solucin de y''=t+y por el Mtodo de Euler Modificado')

% Programa nmero 2
clear all,clc
tspan=[0 1];N=10;
Eq=inline('t+y','t','y');
h=(tspan(2)-tspan(1))/N;
y=1;
disp(' t y f1 f2 ')
for t=0:0.1:1
fprintf('\n %5.5f %5.5f',t,y)
f1=Eq(t,y);
f2=Eq(t+h,y+h*f1);
y=y+h*(f1+f2)/2;
fprintf(' %8.5f %8.5f\n',f1,f2)
end
La salida del programa es:
t y f1 f2

0.00000 1.00000 1.00000 1.20000

0.10000 1.11000 1.21000 1.43100

0.20000 1.24205 1.44205 1.68626

0.30000 1.39847 1.69847 1.96831

0.40000 1.58180 1.98180 2.27998

0.50000 1.79489 2.29489 2.62438

20
APLICACIN DEL MTODO DE RUNGE-KUTTA DE CUARTO ORDEN
EJEMPLO 3 Resolver la siguiente E.D.O por el mtodo de Runge-Kutta de cuarto
orden:
1 ) 0 ( = + = y y t y
El siguiente programa codificado en Matlab resuelve la E.D.O:
% METODO DE RUNGE-KUTTA DE CUARTO ORDEN
clear,clf,clc
tspan=[0 1];
N=10;y0=1;
Eq=inline('t+y','t','y');
h=(tspan(2)-tspan(1))/N;
t=tspan(1) + [0:N]'*h;
y(:,1)=y0(:)';
for k=1:N
k1=Eq(t(k),y(:,k));k1=k1(:)';
k2=Eq(t(k)+h/2,y(:,k)+k1*h/2);k2=k2(:)';
k3=Eq(t(k)+h/2,y(:,k)+k2*h/2);k3=k3(:)';
k4=Eq(t(k)+h,y(:,k)+k3*h);k4=k4(:)';
y(:,k+1)=y(:,k)+(h/6)*(k1+2*k2+2*k3+k4);
end
disp([t y(:)])
plot(t,y,'o-')

La salida del programa es:

t y yanalitica

0 1.0000 1.0000
0.1000 1.1103 1.1103
0.2000 1.2428 1.2428
0.3000 1.3997 1.3997
0.4000 1.5836 1.5836
0.5000 1.7974 1.7974
0.6000 2.0442 2.0442
0.7000 2.3275 2.3275
0.8000 2.6511 2.6511
0.9000 3.0192 3.0192
1.0000 3.4366 3.4366


Solucin grfica de la E.D.O y= t+y


21
EJEMPLO 4 Resolver la siguiente E.D.O por el mtodo de Runge-Kutta de cuarto orden:
y = 2t y y(0)= - 1

El siguiente programa codificado en Matlab resuelve la E.D.O

%Metodo de Runge-Kutta de cuarto orden
% que calcula los parametros k1, k2, k3 Y k4
clear all,clc,clf
Eq=inline('-2*t-y','t','y');% ecuacin diferencial
y=-1; % Condicin inicial
H=0.1;
disp(' Resultados finales ')
disp(' t y k1 k2 k3 k4 ')
for t=0:0.1:1
fprintf('\n %7.5f %7.5f',t,y)
k1=H*Eq(t,y);
k2=H*Eq(t+H/2,y+k1/2);
k3=H*Eq(t+H/2,y+k2/2);
k4=H*Eq(t+H,y+k3);
y= y + (k1 + 2*(k2+k3) + k4)/6;
fprintf('%8.5f %8.5f %8.5f %8.5f\n',k1,k2,k3,k4)
end


La salida del programa es:
Resultados finales
t y k1 k2 k3 k4
0.00000 -1.00000 0.10000 0.08500 0.08575 0.07143
0.10000 -0.91451 0.07145 0.05788 0.05856 0.04560
0.20000 -0.85619 0.04562 0.03334 0.03395 0.02222
0.30000 -0.82246 0.02225 0.01113 0.01169 0.00108
0.40000 -0.81096 0.00110 -0.00896 -0.00846 -0.01806
0.50000 -0.81959 -0.01804 -0.02714 -0.02668 -0.03537
0.60000 -0.84644 -0.03536 -0.04359 -0.04318 -0.05104
0.70000 -0.88976 -0.05102 -0.05847 -0.05810 -0.06521
0.80000 -0.94799 -0.06520 -0.07194 -0.07160 -0.07804
0.90000 -1.01971 -0.07803 -0.08413 -0.08382 -0.08965
1.00000 -1.10364 -0.08964 -0.09515 -0.09488 -0.10015
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
-1.15
-1.1
-1.05
-1
-0.95
-0.9
-0.85
-0.8
-0.75
t
y
dy/dt=-2t-y
y(0) = - 1

Solucion grfica de la E.D.O y= 2t y y(0)= 1


22
EJEMPLO 5 Resolver la siguiente E.D.O de segundo orden por el mtodo de Runge-
Kutta de cuarto orden:

t Y Y Y 2 6 = +
Y(0)=1 Y(0)= -1

SOLUCIN:
Se convierte en un sistema de dos E.D.O de primer orden
Y'=Z ; Z'=2*t+6*y-z
Y(0)=1 Z(0)= -1

El siguiente programa codificado en Matlab resuelve el sistema de E.D.O de primer orden.


clear all,clc
disp(' ')
disp(' | *************************************|')
disp(' | SOLUCIN DE UN SISTEMA DE ECUACIONES |')
disp(' | Y''=Z ; Z''=2*t+6*y-z |')
disp(' |**************************************|')
E1= inline('z','t','z');
E2= inline('2*t+6*y-z','t','y','z');
y=1;z=-1;H=0.1;
disp(' RESULTADOS FINALES ')
disp(' t y z K1 C1 K2 C2 K3 C3 K4 C4 ')
for t=0:H:0.3
fprintf(' \n %5.2f %8.4f %8.4f',t,y,z)
K1=H*E1(t,z);
C1=H*E2(t,y,z);
K2=H*E1(t+H/2,z+C1/2);
C2=H*E2(t+H/2,y+K1/2,z+C1/2);
K3=H*E1(t+H/2,z+C2/2);
C3=H*E2(t+H/2,y+K2/2,z+C2/2);
K4=H*E1(t+H,z+C3);
C4=H*E2(t+H,y+K3,z+C3);
y=y+ (1/6)*(K1+ 2*(K2+K3)+K4);
z=z+ (1/6)*(C1+ 2*(C2+C3)+C4);
fprintf('%8.4f %8.4f %8.4f %8.4f %8.4f %8.4f %8.4f ...
%8.4f\n',K1,C1,K2,C2,K3,C3,K4,C4)
end








23
EJEMPLO 6 SOLUCIN DE UN SISTEMA DE ECUACIONES DIFERENCIALES
Resolver el siguiente sistema de E.D.O de primer orden con la funcin incorporada dsolve
de MATLAB.

= +
= +
2
2
t Y X
t Y Y X

X(0)=1 Y(0)=0

SOLUCIN ANALITICA:
Escriba en la lnea de comando de MATLAB:
>> >> >> >>[x,y]=dsolve('2*Dx+Dy-y=t','Dx+Dy=t^2','x(0)=1','y(0)=0','t')

>> x =

- -- -2*t^2+1/3*t^3+5*exp(-t)+5*t-4
>> >> >> >> pretty(x)

2 3
-2 t + 1/3 t + 5 exp(-t) + 5 t 4 Respuesta Respuesta Respuesta Respuesta para x para x para x para x
y = == =

-5*t+2*t^2-5*exp(-t)+5

>> >> >> >> pretty(y)

2
-5 t + 2 t - 5 exp(-t) + 5 Res Res Res Respuesta puesta puesta puesta para y para y para y para y


















24
PRCTICA 6

ECUACIONES DIFERENCIALES CON VALORES EN LA FRONTERA

MTODO DEL DISPARO

Resuelva
1 ) 1 ( 0 ) 0 ( 2 3
2
2
2
= = + = + + y y t y
dt
dy
t
dt
y d

Paso 1 Descomponga la E.D.O en dos E.D.O de primer orden y gurdelas en el archivo M.
function dy=Ec(t,y)
dy = [y(2);3*t^2+2 y(1) t*y(2)];
Paso 2 Supngase que y(0) = S1=0.40. Aplique el mtodo de R-K-Fehlberg:
[t,y]= ode45(@Ec,[0:0.1:1],[0 0.4]
t y(1) y(2)
0 0 0.4 Para S1= 0.40 R1 = 1.2899
0.1 0.0499 0.5960
0.2 0.1189 0.7842
0.3 0.1189 0.9651
0.4 0.3117 1.1393
0.5 0.4341 1.3079
0.6 0.5732 1.4721
0.7 0.7285 1.6331
0.8 0.8997 1.7922
0.9 1.0869 1.9508
1.0 1.2899 2.1101
Paso 3 Supngase que y(0)=S2=0.1. Aplique el mtodo de R-K-Fehlberg.

[t,y]= ode45(@Ec,[0:0.1:1],[0 0.1])
t y(1) y(2)
0 0 0.1
0.1 0.020 0.2990 Para S2=0.1 R2= 1.0725
0.2 0.0597 0.4961
0.3 0.1191 0.6913
0.4 0.1979 0.8848
0.5 0.2960 1.0770
0.6 0.4133 1.2680
0.7 0.5496 1.4583
0.8 0.7049 1.6481
0.9 0.8792 1.8377
1.0 1.0725 2.0275
Paso 4 Aplique interpolacin lineal con los valores calculados:
9 28 . 2 ) /( ) )( (
2 1 2 1 2 2 3
= + = e R R S S R RD S S
Donde RD= 1 (condicin inicial final)
Paso 5 Aplique el mtodo de R-K-Fehlberg:
[t,y] = ode45(@Ec,[0:0.1:1],[0 -2.2e-9])

RESULTADOS FINALES

t Y(1) Y(2)
0 0 0
0.1 0.01 0.2
0.2 0.04 0.4
0.3 0.09 0.6
0.4 0.16 0.8
0.5 0.25 1.0
0.6 0.36 1.2
0.7 0.49 1.4
0.8 0.64 1.6
0.9 0.81 1.8
1.0 1.0 2.0
25
PRACTICA 7

ECUACIONES DIFERENCIALES IMPLCITAS

INTRODUCCIN
Algunos modelos necesitan una estructura ms general que las E.D.O. ) , ( t x f
dt
dx
= .Con
frecuencia tenemos combinaciones de ecuaciones algebraicas y diferenciales, conocidas
como E.D.A Para tratar estos modelos, considere la forma ms general de las ecuaciones
diferenciales ordinarias implcitas (E.D.O.I): 0 = ) , , ( t x
dt
dx
f .
Las E.D.O.I y E.D.A son casos especiales de esta estructura. Brenan, Campbell y Petzold (
1989)
1
proporciona la existencia y la singularidad de las soluciones para estos modelos,
que son considerablemente ms complejos que las E.D.O. simple. Para este modelo se
requieren las condiciones iniciales de dx/dt y de x, dx/dt(t.)= x0 x(t)=x0 para t= 0 .
Petzold, desarroll un software numrico, DASSL, para las soluciones de las ecuaciones
diferenciales implcitas y ecuaciones diferenciales-algebraicas.
En MATLAB, el programa ode15s, resuelve ecuaciones diferenciales rgidas (stiff). El
siguiente programa ejemplo muestra como usar ode15s para resolver ecuaciones
diferenciales rgidas (stiff).


EJEMPLO 1 Solucin de un conjunto de ecuaciones diferenciales rgidas Solucin de un conjunto de ecuaciones diferenciales rgidas Solucin de un conjunto de ecuaciones diferenciales rgidas Solucin de un conjunto de ecuaciones diferenciales rgidas
( E ( E ( E ( E.D. .D. .D. .D.R RR R ). ). ). ).

Considere las siguientes reacciones irreversibles simples en series:

A
1
K
B
2
K
C

El conjunto de ecuaciones diferenciales para un reactor de mezcla completa son

0 ) 0 ( 0 ) 0 ( 1 ) 0 (
2 2
2 1 2 1
1 1
= = =
= =
= =
= =
C B A
B
C
B A
B
A
A
C C C
C k r
dt
dC
C k C k r r
dt
dC
C k r
dt
dC


Donde: k1 = 1 k2 = 10







26
Programa para resolver el conjunto de ecuaciones diferenciales rgidas.
% solve full model A->B->C
% Implicit Differential Equations
clear all,clf,clc
global k1 k2
k1 = 1;
k2 = 10;
x0 = [1 0 0];
npts = 15;
tfin = 2;
time = linspace(0,tfin,npts)';
tol = sqrt(eps);
opts = odeset('AbsTol', tol, 'RelTol', tol);
[tout,x] = ode15s(@rates,time,x0,opts);
figure(1)
plot(tout,x)
disp(' t Ca Cb Cc ')
disp([tout,x])
Guardar en M-file con el nombre: rates
function dcdt = rates(t, x)
global k1 k2
ca = x(1); cb = x(2); cc = x(3);
r1 = k1*ca; r2 = k2*cb;
dcdt = [-r1; r1-r2; r2];
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Tiempo
C
o
n
c
e
n
t
r
a
c
i

n
Solucin de un sistema de ecuaciones diferenciales rigidas


Ca
Cb
Cc


Solucin grfica del sistema de E.D.O obtenidas de las reacciones en series
A
1
K
B
2
K
C


27
La salida del programa es:
t Ca Cb Cc

0 1.0000 0 0
0.1429 0.8669 0.0697 0.0634
0.2857 0.7515 0.0771 0.1714
0.4286 0.6514 0.0709 0.2777
0.5714 0.5647 0.0624 0.3729
0.7143 0.4895 0.0543 0.4562
0.8571 0.4244 0.0471 0.5285
1.0000 0.3679 0.0409 0.5913
1.1429 0.3189 0.0354 0.6457
1.2857 0.2765 0.0307 0.6928
1.4286 0.2397 0.0266 0.7337
1.5714 0.2077 0.0231 0.7692
1.7143 0.1801 0.0200 0.7999
1.8571 0.1561 0.0173 0.8265
2.0000 0.1353 0.0150 0.8496

Cuando la constante de velocidad para la produccin de una especie son pequeas
comparadas con las constantes de velocidad para su creacin, podemos reducir el modelo
usando la suposicin de cuasi-estado estacionario. En el siguiente programa ejemplo 2,
suponemos que
2 1
k k , donde la especie B es un medio muy reactivo. Por lo tanto, en
vez de resolver la ecuacin de B, simplificamos el modelo suponiendo la concentracin de
B inmediatamente en equilibrio por su valor en estado estacionario, fijando su derivada
con respecto al tiempo igual a cero:
0
2 1
=
B A
C k C k Remplazando la ecuacin diferencial para B con esta restriccin.
Obtenemos el modelo simplificado, conocido como el modelo de ecuaciones diferenciales-
algebraicas ( E.D.A ). En MATLAB, el programa ode15i, resuelve ecuaciones
diferenciales-algebraicas. El siguiente ejemplo muestra como usar ode15i para resolver
ecuaciones diferenciales-algebraicas.

EJEMPLO 2 Solucin de un conjunto de ecuaciones diferenciales-
algebraicas ( E.D.A ).
Considere las siguientes reacciones irreversibles simples en series:
A
1
K
B
2
K
C
El conjunto de ecuaciones diferenciales para un reactor de mezcla
completa son:
1 1
1 2 1 2
2 2
0
(0) 1 (0) 0.1 (0) 0
A
A
A B
C
B
A B C
dC
r k C
dt
r r k C k C
dC
r k C
dt
C C C
= =
= =
= =
= = =


Donde: k1 = 1 k2 = 10


28
Programa para resolver el conjunto de ecuaciones diferenciales-algebraicas (E.D.A).
% solve full model A->B->C
% Differential-Algebraic Equations
clear all,clf,clc
global k1 k2
k1 = 1;
k2 = 10;
npts = 15;
tfin = 2;
time = linspace(0,tfin,npts)';
tol = sqrt(eps);
opts = odeset ('AbsTol', tol, 'RelTol', tol);
x0 = [1 0 0];
% set initial b concentration
x0(2) = k1/k2*x0(1);
% set the initial time derivatives
xdot0 = qssa(0, x0, zeros(3,1));
xdot0(2) = 0;
[tout, x] = ode15i(@qssa, time, x0, xdot0, opts);
figure(2)
plot(tout,x)
disp(' t Ca Cb Cc ')
disp([tout,x])
Guardar en archivo M Guardar en archivo M Guardar en archivo M Guardar en archivo M- -- -file file file file con el nombre de : qssa con el nombre de : qssa con el nombre de : qssa con el nombre de : qssa
function resid = qssa(t, x, xdot)
global k1 k2
ca = x(1); cb = x(2); cc=x(3);
cadot = xdot(1); cbdot = xdot(2); ccdot = xdot(3);
r1 = k1*ca; r2 = k2*cb;
resid = [-cadot - r1; r1 - r2; -ccdot + r2];
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Tiempo
C
o
n
c
e
n
t
r
a
c
i
o
n
Solucin de un sistema de ecuaciones diferenciales-algebraicas
Ca
Cb
Cc

Solucin grfica del sistema de E.D.O obtenidas de las reacciones en series
A
1
K
B
2
K
C

29
La salida del programa es:

t Ca Cb Cc

0 1.0000 0.1000 0
0.1429 0.8669 0.0867 0.1331
0.2857 0.7515 0.0751 0.2485
0.4286 0.6514 0.0651 0.3486
0.5714 0.5647 0.0565 0.4353
0.7143 0.4895 0.0490 0.5105
0.8571 0.4244 0.0424 0.5756
1.0000 0.3679 0.0368 0.6321
1.1429 0.3189 0.0319 0.6811
1.2857 0.2765 0.0276 0.7235
1.4286 0.2397 0.0240 0.7603
1.5714 0.2077 0.0208 0.7923
1.7143 0.1801 0.0180 0.8199
1.8571 0.1561 0.0156 0.8439
2.0000 0.1353 0.0135 0.8647































30
PRCTICA 8
SOLUCIN DE E.D.O POR TRANSFORMADAS DE LAPLACE

OBJETIVO GENERAL:
Resolver ecuaciones diferenciales ordinarias de primero y segundo orden usando las
transformadas de Laplace

OBJETIVOS ESPECIFICOS:
Resolver ecuaciones diferenciales ordinarias por transformadas de Laplace, utilizando
el comando ilaplace de MATLAB.
Hallar la transformada de Laplace de funciones trigonomtricas, algebraicas y
trascendentales, utilizando el comando laplace.

Tema de consulta: Transformadas de Laplace.
Bibliografa:
Raven F. H Mathematics of engineering systems 1 edicin Mc Graw-Hill 1966.
Wunsch A.D Variable compleja con aplicaciones 2 edicin Pearson Educacin 1999.


EJEMPLO 1: SOLUCIN DE UNA E.D.O CON CONDICIN INICIAL. Resolver
por transformadas de Laplace: 1 ) 0 ( 3
2
= = y e y
dt
dy
t


Paso 1 Escriba en la lnea de comandos de MATLAB:
y = laplace(dsolve('Dy-3*y = exp(2*t)','y(0)=1'))
Paso 2 Y= ilaplace(y)
Y =
-exp(2*t)+2*exp(3*t) Respuesta


EJEMPLO 2: SOLUCIN DE UNA E.D.O DE SEGUNDO ORDEN
Resolver por transformada de Laplace: 1 0 ) 0 ( 4 cos 16
2
2
= = = +
dt
dx
x t x
dt
x d

Paso 1 Escriba en la lnea de comandos de MATLAB:
x = laplace(dsolve('D2x + 16*x = cos(4*t)','x(0)=0','Dx(0)=1'))
Paso 2 pretty(x)

16
1
) 16 (
2 2 2
+
+
+ s s
s


Paso 3 X= ilaplace(x)
X =
1/32*16^(1/2)*t*sin(16^(1/2)*t)+1/16*16^(1/2)*sin(16^(1/2)*t)
Paso 4 X= simplify(X)
X =
1/8*sin(4*t)*t+1/4*sin(4*t) Respuesta
31
Laboratorio 3: USO DE LA TRANSFORMADA INVERSA DE LAPLACE

La transformada de Laplace de una ecuacin diferencial es:
2
) 1 (
1
) (
+
=
s s
s Y

a) Determine la transformada inversa de Laplace, y(t) utilizando el comando
ilaplace.
b) Use fracciones parciales para comprobar la solucin y(t) obtenida en a).
Procedimiento:
a) Escriba en la lnea de comandos de MATLAB:
y = ilaplace(sym('1/(s*(s+1)^2)'))
y =
1-(1+t)*exp(-t) Respuesta

b)
2 2
) 1 ( 1 ) 1 (
1
) (
+
+
+
+ =
+
=
s
C
s
B
s
A
s s
s Y

1
1
1
1
1
) 1 (
1
1
2
1
1
2
0
= = |

\
|
=
= |

\
|
=
=
|
|

\
|
+
=
=

S
S
S
S
s
s ds
d
B
s
Lim C
s
Lim A

Remplazando:


2
) 1 (
1
) 1 (
1 1
) (
+

+
=
s s s
s Y
Aplicando la transformada inversa de Laplace:


t
e t t y

+ = ) 1 ( 1 ) (
Respuesta

CASOS DE ESTUDIOS

1. Invierta cada una de las siguientes E.D.O transformadas y compruebe el
resultado, realizndolas manualmente.
10 7
5
) ( )
) 1 (
5 3
) ( )
) 2 (
6
) ( )
) 4 (
4
) ( )
) 4 )( 1 (
) 2 ( 3
) ( )
) 25 6 )( 4 (
100
) ( )
2 2
2
3
2
+ +
=
+
+ +
=
+
=
+
=
+ +
+
=
+ + +
=
s s
s Y f
s s
s s
s Y c
s s
s Y e
s s
s Y b
s s
s
s Y d
s s s
s Y a

2. Use transformada de Laplace para resolver las siguientes E.D.O:

0 ) 0 ( ) 2 ( 2 )
0 ) 0 ( 20 ) 0 ( 50 25 6 )
0 ) 0 ( ) 0 ( 10 7 )
'
' ' ' '
' ' ' '
= = +
= = = + +
= = = + +
y t sen y y c
y y y y y b
y y t y y y a


32
EJEMPLO 4 : SOLUCIN DE SISTEMAS DE ECUACIONES DIFERENCIALES
Resuelva por transformada de Laplace el siguiente sistema de ecuaciones diferenciales:

+ =
=
1 y y
y x
x(0) =1 y(0) = - 1

PROCEDIMIENTO:
Escriba el sistema de ecuaciones diferenciales y las condiciones limites en forma de
matriz:

Paso 1: Para el sistema de ecuaciones:
1
0
1 0
1 0
+

y
x
y
x


Paso 2: Para las condiciones limites:
1
1
) 0 (
) 0 (

=
y
x


Escriba el siguiente cdigo de MATLAB:
% Este programa resuelve un sistema de E.D.O por
transformadas de Laplace
syms s t % declara a s y t como variable simblica.
A= [0 1;0 -1];
B= [1 0]' ;
X0 = [1 -1]' ;
disp ( 'Solucin de un sistema de E.D.O por transformada de
Laplace')
Xs = (s*eye(size(A)) - A)^-1*(X0 + B/s )
disp ( ' Solucin de la transformada inversa de Laplace ')
Xt = ilaplace(Xs) % Transformada inversa de Laplace

Solucion de un sistema de E.D.O por transformadas de Laplace
Xs= 1/s + 1/s/(s+1)*(-1 +1/s)
1/(s + 1)*(-1 +1/s)
Solucin de la transformada inversa de Laplace
Xt = -1 + t + 2*exp(-t)
1 2*exp(-t)

CASOS DE ESTUDIOS
Resolver por transformada de Laplace los siguientes sistemas de ecuaciones diferenciales:
1.-
1 ) 0 ( 0 ) 0 ( 2 = = + =
=
Y x y x y
y x x


2.-
1 ) 0 ( ) 0 (
4
= = =
=
y x x y
y x


3.-
0 ) 0 ( 1 ) 0 ( 2
4
= = + =
+ =
y x y x y
e y x x
t



33
PRACTICA 9

LUGAR DE LAS RACES EN EL PLANO S o Z

OBJETIVO GENERAL:
Localizar las races de una funcin de transferencia en el plano complejo.
OBJETIVOS ESPECFICOS:
> Calcular los Residuos y Polos de una funcin de transferencia usando el comando
residue de Matlab.
> Graficar los Polos y Ceros en el plano s o z usando el comando rlocus(num,den) de Matlab.
> Dibujar el lugar de los Polos y Ceros en un crculo de radio unidad.

Tema de consulta : Transformada de Laplace y el Mtodo de los residuos.
Bibliografa:
Wunsch A. David Variable compleja con Aplicaciones 2 edicin Pearson Educacin 1999.
Churchill R. V y Brown J. W Variable compleja y Aplicaciones 5 edicin Mc Graw-Hill
1992.
Raven F.H Mathematics of engineering systems 1 edicin Mc Graw-Hill 1966.

INTRODUCCIN

Para usar las funciones aqu mencionadas se necesita MATLAB con el paquete de Control de
Sistemas (Control System Toolbox). Para obtener un listado de todas las funciones disponibles,
basta ejecutar en la lnea de comandos de MATLAB:
>> help control
De igual manera, para obtener una descripcin breve del modo de uso de una funcin
especifica, basta ejecutar en la lnea de comandos:
>> help nombre_de_la funcin.

Dada una funcin de transferencia en el dominio de Laplace G(s) o en el dominio discreto de,
G(z), un Cero es cualquier valor de s o z para los cuales la funcin de transferencia es cero. Un
Polo es cualquier valor de s o z para la cual la funcin de transferencia es infinita.

CEROS: 1.- El valor(es) para z donde el numerador de la funcin de transferencia es igual a
cero.
2.- Las frecuencias complejas que hacen que la ganancia de la funcin de
transferencia del filtro sea cero.

POLOS: 1.- El valor(es) para z donde el denominador de la funcin de transferencia es igual
a cero.
2.- Las frecuencias complejas que hacen de la ganancia de la funcin de transferencia
del filtro sea infinita.
Cuando graficamos estos en el plano s o z representamos los Ceros con o y los Polos con
x.




34

INTERPRETACIN GRAFICA :
Concluimos que la magnitud de la funcin de transferencia ser mayor cuando se encuentre
cerca de los Polos y menor cuando se encuentre cerca de los Ceros. Esto nos da un
entendimiento cualitativo de lo que el sistema hace en varias frecuencias y es crucial para la
funcin de estabilidad.


EJEMPLO 1: Localizacin de Polos y Ceros
Encuentre los Polos y Ceros de la funcin de transferencia G(z)=
( )
( )( ) 1 2543 . 0
876 . 0

+
z z
z

y grafique los resultados en el plano z

PROCEDIMIENTO:
Escriba en la lnea de comandos de Matlab:
% Observe que el primer elemento del vector es cero que
%corresponde al trmino de grado 2
num = [0 1 0.876];
% Se escriben los coeficientes del polinomio del denominador
2543 . 0 2543 . 1
2
+ z z
den = [1 -1.2543 0.2543];
[Residuos,Polos] = residue(num,den); % Calcula los Residuos y Polos .
rlocus(num,den); % Grafica los resultados en el plano z
axis([-4 4 -4 4])
ginput(3) % Da resultados numricos de los Polos y Ceros.

A continuacin se muestra la fig 1 con el mapa de Polos y Ceros y los valores calculados
de los Residuos y Polos.


Fig 1 Mapa de Polos y Ceros





35

Residuos =

2.5158
-1.5158

Polos =

1.0000
0.2543



EJEMPLO 2 : EVALUACIN DE INTEGRALES CON CONTORNO

Cul es el valor de
( )( )

+
c
z z
dz
3 1

a) S c es un circulo |z| = 2 ?
b) S c es un circulo |z| = 4 ?
Utilizando el Teorema de los residuos.

PROCEDIMIENTO:
La funcin de transferencia es
3 2
1
) (
2
+
=
z z
z G
Parte (a) .Cuando el radio del circulo es igual a 2
Escriba en la lnea de comandos de Matlab:
num = [0 0 1]; % nicamente se escribe el trmino
independiente
den = [1 2 -3]; % Se escriben los coeficientes del
polinomio del denominador.
[Residuos,Polos] = residue(num,den) ; % calcula los Residuos y Polos.
rlocus(num,den),hold on
z = 0:0.1:2*pi ;
x = sin(z) ;
y = cos(z) ;
plot(x,y,-);
axis([ -4 4 -4 4])
% El siguiente comando calcula los valores de los Polos en la grfica.
ginput(2)

A continuacin se muestra la fig 2 con el Mapa de Polos y Ceros y los valores de los
Residuos y Polos calculados por el programa.

36


Fig 2 Mapa de Polos y Ceros


El nico punto singular de G(z) dentro de c se debe al polo de primer orden igual a 1.0000,
que al aplicar |

\
|
+

3
1
1
z
Lim
Z
obtenemos un Residuo de 0.25. Aplicando el Teorema de
los Residuos
( )( )
( )

=
= =
+
2
2
25 . 0 2
3 1
z
i
i
z z
dz


Parte (b) :Cuando el radio del circulo es igual a 4
En ste caso, dentro de c se encuentran los dos Polos de primer orden, por lo tanto se
tienen en cuenta los dos Residuos calculados. Aplicando el Teorema de los Residuos:

( )( )
( ) 0 25 . 0 25 . 0 2 2
3 1
2
1
4
= + = =
+

=
=
i R i
z z
dz
i
i
z


CASOS DE ESTUDIOS:

1) Encuentre los Polos y Ceros de la funcin de transferencia y grafique los resultados
en el plano s o z

a) G(s) =
( ) 2
2
+
+
s s
s
b) G(s) =
3 2
2
2
+ +
+
s s
s
c) G(z) =
( )
dz
z
e
z
2
1 +


2) Cul es el valor de dz
z z
z
C

+ +
+
5 2
4
2


a) S C es el circulo |z| = 1?
b) S C es el circulo | z +1 i | = 2 ?
c) S C es el circulo | z +1 + i | = 2 ?

Residuos =

-0.2500
0.2500


Polos =

-3.0000
1.0000
37
3) Cul es el valor de


+
C
dz
z z
z
2 3
2
1


a) S C es el circulo | z | = 1 ?
b) S C es el circulo | z 2 1 | = 2 ?
c) Si C es el circulo | z 1 2i| = 2 ?




BIBLIOGRAFIA


1. Nieves A y Domnguez F. Mtodos numricos aplicados a la ingeniera . 2 Edicin
CECSA 2002.
2. Constantinides A y Mostoufi N Numerical methods for chemical engineers with
MATLAB applications 1 Edicin Prentice-Hall 1999.
3. Gerald C.F y Wheatley P.O Analisis numrico con aplicaciones. 7 Edicin Pearson
Educacin 2000.
4. Nakamura S. Anlisis numrico y visualizacin grfica con MATLAB 1 Edicin
Pearson Educacin 1997.
5. L. F. Shampine and S. Thompson Solving ODEs with MATLAB 1 edicin
Cambrigde university Press 2003.
6. Hanselman D. y Littlefield B. Mastering MATLAB 7 Prentice Hall 2005




FIN

Вам также может понравиться