Anda di halaman 1dari 29

Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

CAPITULO VII

SISTEMA DE ECUACIONES
DIFERENCIALES ORDINARIAS
7.1 SISTEMAS DE ECUACIONES DIFERENCIALES ORDINARIAS

Sea el sistema de ecuaciones diferenciales del tipo

dY1
a11 (t ) x1 ... a1n (t ) xn f1 (t )
dx
.
.
(7.1)
.
dYn
an1 (t ) x1 ... ann (t ) xn f n (t )
dx
Se denomina sistema lineal de primer orden. Las funciones aij(t), fi(t) se
supondrn continuas en un intervalo dado I = (a, b). Si fi(t) = 0 para todo i = 1, .
. . , n, se dice que el sistema es homogneo.

Y ' M *Y F

f1 (t )
x1 (t ) a11 (t ) ... a1n (t ) .
. . .

F F (t ) .
Y Y (t ) . M M (t ) . . .
. . .
.
x (t ) a (t ) ... a (t ) f (t )
n n1 nn n

Si el sistema es homogneo se escribe as

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 227
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

dY
Y ' M * Y M *Y
dt

Ejemplo asi para un sistema de 2 x2

Condiciones iniciales
d x1 1 - 1 x1 x1 1

dt x2 1 - 2 x2 x 1
2

Para un problema con valor inicial

y ' f ( x, y ), y (a) y 0 , a xb (7.2)

Se resuelve utilizando el mtodo de Runge-Kutta

h
ym1 ym (k1 2k2 2k3 k 4 ) (7.3)
6

Donde
k1 f ( xn , yn )
k2 hf ( xn 0.5h, yn 0.5k1 )
k3 hf ( xn 0.5h, yn 0.5k2 )
k4 hf ( xn h, yn k3 )

Para resolver un sistema de ecuaciones diferenciales se generaliza como sigue,


formamos una particin regular en el intervalo [a, b] con N subintervalos, con
puntos xn = a + nh donde n = 0, 1, . . . ,N y h b a
N
Usamos la notacin yij para denotar una aproximacin a ui(xj) para j = 0, 1, . . . ,n
y para i = 1, 2, . . . ,m.

Las condiciones iniciales (7.15) se expresan como

y1,0 (a) 1 , y 2,0 (a) 2 , ., u m , 0 ( a) m

Suponga que se calcularon Y1,j , Y2,j , . . . , Ym,j , enseguida obtenemos Y1,j+1,


Y2,j+1, . . . , Ym,j+1

Para cada i = 1, 2, . . . ,m
h
yi , j 1 yi , j (k1, j 2k 2, j 2k3, j k4, j )
6

Donde
Para cada i = 1, 2, . . . ,m
---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 228
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

k1, j hfi ( x j , y1, j , y2, j ,...., ym, j )

Para cada i = 1, 2, . . . ,m

1 1 1 1
k 2, j hfi ( x j h, y1, j k1,1 , y2, j k1, 2 ,..., ym, j k1,m )
2 2 2 2

Para cada i = 1, 2, . . . ,m

1 1 1 1
k3, j hfi ( x j h, y1, j k2,1 , y2, j k2, 2 ,..., ym, j k2,m )
2 2 2 2

Para cada i = 1, 2, . . . ,m

1 1 1 1
k 4, j hfi ( x j h, y1, j k3,1 , y2, j k3, 2 ,..., ym, j k3,m )
2 2 2 2

7.1.1 Mtodo de Runge-Kutta de cuarto orden para un sistema no homogneo de


la forma

y ' MY F

Si escribimos (ecuacin 7.13) en forma matricial

a11 ... a1n Y1 f1


. . . .

M . . . Y . F .
. . . .
a Y f
n1 ... ann n n

y ' f ( x, Y ) (7.4)

M = coeficiente del sistema de ecuaciones

Las iteraciones para el Mtodo de Runge-Kutta de cuarto orden para sistemas es:

K1 hf xn , Yn
1 1
K 2 hf xn h, Yn K1
2 2

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 229
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

1 1
K3 hf xn h, Yn K 2
2 2
K4 hf xn h, Yn K3

Yn 1 Yn
1
K1 2K2 2K3 K 4 (7.5)
6
Si es posible escribir la ecuacin (7.13) en forma lineal como

y' MY F

Entonces (7.18) se escribe como:

K1 hMYn F
K
K 2 h M Yn 1 F
2
K
K3 h M Yn 2 F
2
K4 hM Yn K3 F

Yn 1 Yn
1
K1 2K2 2K3 K 4
6

Algoritmo Runge-Kutta cuarto orden para un sistema y ' MY F

Este algoritmo calcula la solucin del problema de valor inicial en puntos equidistantes
x1 = x0 + h , x2 = x0 + 2h, x3 = x0 + 3h, , xN = x0 + Nh, aqu f es tal que (dy/dx=f(x,y)
y(x0) = y0) tiene una solucin nica en [x0, xN].

1. Define: La matriz M, F y la matriz que contiene las condiciones iniciales Y (a)


2. Para n=0,...,N-1, hacer

K1 hMYn F
K
K 2 h M Yn 1 F
2
K
K3 h M Yn 2 F
2
K4 hM Yn K3 F
1
K1 2K2 2K3 K4
Yn 1 Yn
6
Salida xn+1, Yn+1

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 230
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

3. Parar

Practica 7-1

METODO RUNGE-KUTTA

7.1.2 ELABORACION DE PROGRAMA R-K

Tambin puede resolverse este problema creando una funcin auxiliar en un archivo
aparte con el nombre de la funcin. En este caso se opt por llamarla Runge-Kuta. La
misma es una funcin que recibe 6 argumentos: dos funciones definidas previamente (ya
sea por medio de un m-file o por medio del comando inline), los valores iniciales de las
funciones, el tiempo inicial y la longitud de paso; mientras que el resultado que devuelve
es un vector con los valores de la funcin solucin en el periodo inicial ms la longitud
de paso (t0+h). Existen adems dos formas adicionales de resolver un sistema de
ecuaciones diferenciales con Matlab. Una de ellas es creando una rutina que acta dentro
de un mismo programa sin necesidad de crear una funcin auxliar mediante un archivo
*:m.
programa SEDO1.m
clear all
clc;

xx=inline('4*x+2*y', 't','x','y'); % dx/dt=4x+2y,


yy=inline('-x+y', 't','x','y'); % dy/dt=-x+y

t0=0;% Tiempo inicial


tf=0.5;% Tiempo final
n=12;
h=(tf-t0)/n; % intervalo de tiempo
x=100; % condiciones iniciales de x
y=400; % condiciones iniciales de y
t = t0;

X(1,1)=t0;
Y1(1,1)=x;
Y2(1,1)=y;

for i=1:n
u1=h*eval('xx(t,x,y)');
v1=h*eval('yy(t,x,y)');
u2=h*eval('xx(t+h/2,x+u1/2,y+v1/2)');
---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 231
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

v2=h*eval('yy(t+h/2,x+u1/2,y+v1/2)');
u3=h*eval('xx(t+h/2,x+u2/2,y+v2/2)');
v3=h*eval('yy(t+h/2,x+u2/2,y+v2/2)');
u4=h*eval('xx(t+h,x+u3,y+v3)');
v4=h*eval('yy(t+h,x+u3,y+v3)');
x=x+(1/6)*(u1+2*u2+2*u3+u4);
y=y+(1/6)*(v1+2*v2+2*v3+v4);
y1=x;
y2=y;
t1=t0+h;
t0=t1;
X(i+1,1)=t0;
Y1(i+1,1)=y1;
Y2(i+1,1)=y2;
end
disp(' RESULTADOS FINALES ')
disp(' t y1 y2 ')
disp([X,Y1,Y2])
plot(X,Y1(:,1),'-*r',X,Y2(:,1),'-*b','LineWidth',2),grid on
xlabel('Valores de x');
ylabel('Valores de Y1 Y2');
title('METODO DE RUNGE-KUTTA');
legend('y1','y2');

7.1.3 PROGRAMA EN GUIDE MATLAB

Hacemos doble click en el icono GUIDE y abrimos como crear archivo

Paso 1: realizamos el formulario copiando Edit text, axes para el grafico y Push button

Static text: para texto: hacer doble click en la tabla de cdigo y llenar:
String: nombre a poner
Style: texto
Edit text: para ingreso de valores: hacer doble click en la tabla de cdigo y
llenar:
String:
Style:edit
Edit text: para salida de valores: hacer doble click en la tabla de cdigo y
llenar:
String:
Style:edit

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 232
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Paso 2: Completado el formulario, guardar el formulario como, guardar archivo como:


nombre.fig inmediatamente se autogenera el archivo m,

Paso 3: En el archivo generado buscar Push button para cada comando. Digitar el cdigo
del programa en el Push button, despus de la lnea siguiente para el caso y
as sucesivamente.
function varargout = pushbutton1_Callback(h, eventdata, handles, varargin)
funcion=get(handles.edit1,'string');

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 233
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 234
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

function varargout = pushbutton3_Callback(h, eventdata, handles, varargin)

close

Paso 4: Ejecutar haciendo click en la flecha verde


Paso 5: Ingresamos las funciones matemticas:, ingresar el valor inicial de x0, lmite
superior de x como b; y1= , y2 = ; y n= nmero de valores

Practica 7-2

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 235
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

METODO ODE45

7.2 USO DE ODE45 EN SISTEMA DE ECUACIONES DIFERENCIALES


ORDINARIAS

La plataforma Matlab trae incorporados comandos para la resolucin de ecuaciones


diferenciales, llamados ODE. La desventaja de los comandos ODE es que slo pueden
ser usados para la resolucin de ecuaciones de primer oden.

Los comandos ODE

El mtodo trabaja con tolerancia por defecto:


- Tolerancia relativa 1E-3
- Tolerancia absoluta 1E-6

Los valores pueden cambiarse a los deseados. Este comando tiene ms opciones que
pueden ser cambiadas. Estos mtodos son en general de paso variable, lo cual hace que
la solucin se conozca en puntos a lo mejor no deseados. Si se quiere conocer la solucin
en ciertos puntos del intervalo, se puede definir un vector llamado tspan que contiene los
puntos deseados, para luego usarlo en lugar del intervalo [t0 tf] en el comando ODE.

7.2.1 ELABORACION DE PROGRAMA PARA ODE

Del sistema de la forma

y' M * Y F
Procedimiento del programa
Paso 1: digitamos en el archivo m el siguiente programa (como: EDO2.m)

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 236
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Paso 2: digitamos en el archivo m el siguiente programa (ejemplo: SEDO22.m)

Paso 3: Ejecutamos en el programan SEDO22

Mtodo B:

Matlab cuenta adems con comandos predeterminados para resolver cualquier tipo de
ecuaciones diferenciales y sistemas en forma numrica por medio del comando ode45
que requiere la definicin previa del sistema de ecuaciones diferenciales en un archivo
del mismo nombre que el comando con una extensin *.m. Para este caso el caso se utiliz
el nombre dpl para crear el archivo que contiene la definicin del sistema. A continuacin
se exponen los comandos utilizados tanto para la creacin del sistema como para la
utilizacin del mismo junto a su representacin grfica de la solucin:

Paso1: creamos un archivo m, con el nombre EDO3.m


dy: es el sistema de EDO en forma matricial

Aqu digitamos la funcin a evaluar

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 237
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Paso 2: Creamos el siguiente archivo SEDO33

Paso 3: ejecutamos

Mtodo C: Programa en Matlab aplicando ode45 para un sistema de 2x2

a) Primero crearemos el archivo denominado EDO4.m

b) Creamos el archivo SEDO44.m que llama a la rutina ode45

c) Ejecutamos el programa
---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 238
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Mtodo D: Programa en Matlab

clear all
clf
clc
Eq=inline('[-2*x(1);2*x(1)-x(2);x(2)]','t','x');
[t,x]=ode15s(Eq,[0:0.1:2],[1 0 0]);
disp(' RESULTADOS FINALES ')
disp(' t CA CB CC ')
disp([t,x])
plot(t,x(:,1),'-r',t,x(:,2),'-b',t,x(:,3),'-g','LineWidth',2),grid on
title('Solucin de un sistema de ecuaciones reactivas','Fontsize',15);
text(0.2,0.8,'CA');text(0.8,0.1,'CB');text(0.3,0.3,'CC');
xlabel('Tiempo');
ylabel('Concentracin');

Hacer cambio para cada tipo de ejercicio

Practica 7-3

EJERCICIOS RESUELTOS
(1) Ejercicio resuelto: 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 CA, CB y CC 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

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 239
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

1. 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: A=X1; B=X2; C=X3

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.

dA 50 gal C lb 50 gal A lb

dt min 1000 gal min 1000 gal
Tanque A

De igual forma se procede para los tanques B y C.


Simplificando
dA C A
Tanque A
dt 20 20

dB A B
Tanque B
dt 20 20

dC B C

Tanque C dt 20 20

Para resolver el sistema de EDO, utilizando MATLAB, siga los pasos


siguientes:

3. Determine las condiciones iniciales de c/u de las EDO: A(0)= C(0) =3000 y
B(0) =0
4. Haga los siguientes cambios de variables: A=X1; B=X2; C=X3
5. Guarde en archivo-Script:

Usamos el programa

Programa 1: EDO1,m

Aqu digitamos la funcin del problema


---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 240
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

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

Programa 2: SEDO11,m

Solucin

t X1 X2 X3
0.000 3000.00 0.00 3000.00
0.000 3000.00 0.00 3000.00
0.000 3000.00 0.00 3000.00
0.000 3000.00 0.03 2999.97
0.001 3000.00 0.16 2999.84
0.010 3000.00 1.57 2998.43
0.078 2999.98 11.75 2988.27
0.523 2999.00 77.47 2923.53
3.271 2965.93 450.73 2583.33
10.771 2745.47 1203.55 2050.98
18.271 2491.51 1642.82 1865.68
25.771 2288.80 1872.82 1838.39
33.271 2152.33 1978.60 1869.07
40.771 2070.76 2018.18 1911.06
48.271 2026.97 2026.58 1946.45
55.771 2006.15 2022.80 1971.05
60.000 2000.44 2019.01 1980.54

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 241
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Solution del sistema


3000
X1
X2
2500 X2

2000
Solucion X

1500

1000

500

0
0 10 20 30 40 50 60
Tiempo t

(2) Ejercicio resuelto: El conjunto de ecuaciones diferenciales para un reactor de mezcla


completa son:

dCA
r1 k1C A
dt
dCB
r1 r2 k1C A k 2CB
dt

dCC
r2 k 2CB
dt
CA(0)=1

CB(0)=0

CC(0)=0
Donde: k1=2 k2=1

Hallar las distribuciones de concentraciones de CA, CB y CC para un tiempo de 2


segundos, cada intervalo de 0,1s.

Las soluciones analticas son:

C A (t )
e k Bt
C A0

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 242
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

C B (t )
C A0

kB
kC k B

e k B t e kC t
CC (t ) C (t ) C (t )
1 A B
C A0 C A0 C A0

En el programa se hace cambio aqu el intervalo 0,1 y el limite 2,


[t,x]=ode15s(Eq,[0:0.1:2],[1 0 0]);

Solucin: aplicando el mtodo D


Programa en archivo.m

clear all
clf
clc
Eq=inline('[-2*x(1);2*x(1)-x(2);x(2)]','t','x');
[t,x]=ode15s(Eq,[0:0.1:2],[1 0 0]);
disp(' RESULTADOS FINALES ')
disp(' t CA CB CC ')
disp([t,x])
plot(t,x(:,1),'-r',t,x(:,2),'-b',t,x(:,3),'-g','LineWidth',2),grid on
title('Solucin de un sistema de ecuaciones reactivas','Fontsize',15);
text(0.2,0.8,'CA');text(0.8,0.1,'CB');text(0.3,0.3,'CC');
xlabel('Tiempo');
ylabel('Concentracin');

RESULTADOS FINALES
t CA CB CC
0 1.0000 0 0
0.1000 0.8187 0.1722 0.0091
0.2000 0.6703 0.2968 0.0329
0.3000 0.5488 0.3840 0.0672
0.4000 0.4493 0.4420 0.1087
0.5000 0.3679 0.4773 0.1548
0.6000 0.3012 0.4953 0.2036
0.7000 0.2466 0.5000 0.2534
0.8000 0.2018 0.4950 0.3032
0.9000 0.1652 0.4828 0.3521
1.0000 0.1352 0.4654 0.3995
1.1000 0.1107 0.4444 0.4449
1.2000 0.0906 0.4212 0.4882
1.3000 0.0741 0.3968 0.5291
1.4000 0.0607 0.3718 0.5675
1.5000 0.0497 0.3469 0.6034
1.6000 0.0407 0.3224 0.6369
1.7000 0.0333 0.2988 0.6679
---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 243
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

1.8000 0.0272 0.2761 0.6967


1.9000 0.0223 0.2545 0.7232
2.0000 0.0182 0.2341 0.7476

Solucin de un sistema de ecuaciones reactivas


1

0.9

0.8 CA

0.7
Concentracin

0.6

0.5

0.4

0.3 CC

0.2

0.1 CB

0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
Tiempo

(3) Ejercicio resuelto: 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:

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 244
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

10 gal 0 lb 10 gal Q 2 lb dQ1


Tanque 1
h gal h 100 gal dt

Q Q dQ2
Tanque 2 10 1 10 2
100 100 dt

Donde:
Q1 y Q2 son las libras de A en los tanques # 1 y # 2 respectivamente
Q1 Q2
y son las concentraciones de ellos al tiempo t
100 100

Simplificando

dQ1 Q
1
dt 10

dQ2 Q Q2
1
dt 10
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 Q1(0)=10,
Q2 (0)=10
2.- Haga cambios de variables:

Q1=X1 y Q2=X2

Solucin: ejecutamos en el programa ingresando la funcin del problema

function dX=EDO1(t,X)
dX=[(-1/10)*X(1);(1/10)*(X(2)-X(1))];

Programa 2: SEDO11,m

% ALBERTO HUAMANI HUAMANI


% CURSO DE METODOS NUMERICOS EN INGENIERIA DE ALIMENTOS
clear all
clc
[t,X] = ode45('EDO1',[0:0.2:3],[ 10 10]); %solucion%
%[t,X] = ode45('EDO1',[0 60],[ 3000; 0; 3000]);
npts = length(t);
fprintf('\n\n\n t X1 X2\n')
for n = 1:5:npts
fprintf(' %5.3f %6.2f %4.2f\n',t(n),X(n,1),X(n,2))
end

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 245
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

plot(t,X(:,1), '-*', t,X(:,2), 'r*:'), grid on %grafica%


title('Solution del sistema');
xlabel('Tiempo t');
ylabel('Solucion X');
legend('X1','X2')

Salida del programa

t X1 X2
0.000 10.00 10.00
1.000 9.05 10.05
2.000 8.19 10.20
3.000 7.41 10.45

Solution del sistema


10.5
X1
X2
10

9.5
Solucion X

8.5

7.5

7
0 0.5 1 1.5 2 2.5 3
Tiempo t

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 246
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

(4) PROGRAMA DE RESPIRACION EN EL ENVASADO DE FRUTAS Y


HORTALIZAS BAJO ATMOSFERA MODIFICADA

Los factores que influyen en la difusin del gas a travs de la membrana que
constituye el envase son los siguientes:

a) Estructura del polmero


b) Permeabilidad a los gases
c) Espesor
d) Superficie total de intercambio gaseoso
e) Gradiente de presiones parciales o concentraciones del gas en cuestin a un lado
y otro de la membrana
f) Temperatura
g) Humedad relativa
h) Existencia de condensaciones

Figura 1. Estructura del sistema de empacado de un vegetal

1.1 Transferencia de masa a travs del empaque

O2

CO2
O2
O2
Em T
paq HR1
ue
Y1
T Otros
HR2 H 2O CO2
Y2 CO2
H 2O

Figura 3. Esquema de transferencia de masa a travs de un empaque

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 247
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Una vez alcanzada la atmosfera de equilibrio en el interior del envase, para lo que es
preciso que la tasa respiratoria del rgano vegetal se haya estabilizado, el balance de
materia para el oxgeno y dixido de carbono es:

Para el oxgeno:

Ingreso de O2 O2 O2 residual
a travs del = Consumido en el espacio
+
empaque por el vegetal libre del (1)

Ley de empaque
Por
Fick respiracin

Para el dixido de carbono:

CO2 = Produccin + CO2


residual en de CO2 eliminado (2)
el empaque Por Ley de Fick
respiracin

Se puede definir, en trminos de la ley de Fick, como: la velocidad de permeacin, o


cantidad de gas que atraviesa una membrana de seccin unidad, en la unidad de tiempo.
La permeabilidad propiamente dicha de la membrana, se define como la constante de
permeabilidad dividida por el espesor.

Figura 2. Transferencia de masa a travs de una membrana de empaque

dCi
J i Di (3)
dx
Siendo:

Ji = flujo difusivo del componente i a travs del empaque


---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 248
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Di = coeficiente de difusin del componente i en el empaque


Ci = concentracin del gas disuelto en el empaque
x = direccin normal al empaque

Por otro lado, la ley de Henry establece

Ci Ki Pi (4)
Siendo:

Ki = coeficiente de solubilidad del componente i en la membrana


Pi = presin parcial del componente i

Reemplazando la ecuacin 1 en la ecuacin 2, el desarrollo de la ecuacin 3 y 4, y


despejando la expresin del oxigeno en el espacio libre se tiene:
Cantidad de O2 residual en espacio libre

PO2 P A
M x R O2

(5)
Tiempo L

Cantidad de CO2 residual en espacio libre P P A


CO 2 M x R CO2

(6)
Tiempo L

Donde:

Po2 = permeabilidad del empaque al O2


Pco2 = permeabilidad del empaque al CO2
P = diferencia de presin parcial interna externa
A = Area del empaque
M = Cantidad de producto dentro del empaque (Kg)
RO2 = Tasa de respiracin (mg/kg h)
RCO2 = Tasa de respiracin (mg/kg h)
L = espesor del empaque (cm)

1.2 Consumo de O2 y produccin de CO2 en funcin del tiempo

Este planteamiento describe los cambios en concentracin de O2 y CO2 en funcin del


tiempo (valores obtenidos experimentalmente) y luego estos valores son procesados para
obtener las constantes A, B y C a travs de un anlisis de regresin nolineal de las
siguientes ecuaciones 7 y 8:

O2 t
(7)
A1 * t B1 C1
CO2 t
(8)
A2 * t B2 C 2
Donde:

(O2), (CO2) = concentraciones de oxgeno y bixido de carbono (%).


---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 249
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

t = tiempo (h).
A, B, C = son valores constantes.

Las velocidades de respiracin (consumo de O2 y produccin de CO2 de acuerdo al tiempo


se calculan sustituyendo las derivadas de las ecuaciones 7 y 8 (ecuaciones 9 y 10) en las
ecuaciones 11 y 12 respectivamente.

d O2
A1 C1 t A1 * t B1 1 A1 * t B1 1
1C C
(9)
dt

d CO2
A2 C2 t A2 * t B2 2 A2 * t B2 2
1C C
(10)
dt

RO2

d O2 MO 2 * P * V
dt 100 * R * M * T
(11)

RCO2

d CO2 MCO 2 * P * V
dt 100 * R * M * T
(12)

Donde:
RO2 y RCO2 = velocidad de consumo de O2 y produccin de CO2 respectivamente
(mg/kg h)
MO2 y MCO2 = peso molecular de O2 y CO2 (kg /mol)
P = presin (Pa)
V = volumen del espacio libre del empaque (ml)
R = constante de los gases (6. 236e4 ml mmHg / mol K o 8.314 J/mol K)
M = peso del producto (kg)
T = temperatura (K)

Una vez obtenidos los parmetros de respiracin, la concentracin de gases en funcin


del tiempo en empaques semipermeables se calcula con las siguientes ecuaciones (13 y
14).

dO2 100 PO A O M
PT 0,21 2 *100 RO2
2
(13)
L V 100 V
dt

dCO2 PO2 A CO2 M


100 PT 0 *100 RCO2 (14)
dt L V 100 V
Donde:
Po2 = permeabilidad del empaque al O2 (mg/cm h atm)
Pco2 = permeabilidad del empaque al CO2 (mg/cm h atm)
L = espesor del empaque (cm)
A = Area del empaque (cm2)
M = Cantidad de producto dentro del empaque (Kg)

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 250
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Introduciendo las ecuaciones de Michaelis-Menten en las ecuaciones 13 y 14.

Los parmetros vm, km y ki para el consumo de O2 y produccin del CO2 pueden ser
estimados linealizando la siguiente ecuacin:

v m O2 * O 2
RO2 (15)
CO2
Km O2 1 * O2
Ki

Ecuacin linealizada:

1

1 km 1

1
CO2
vm O2 ki vm
(16)
RO2 v m

Los valores de: vm, km y ki sern obtenidos a partir de la ecuacin 16 para su posterior
uso en los modelos de inhibicin.

Para la modelizacin del efecto inhibidor del CO2 sobre la actividad respiratoria, existen
cuatro modelos de inhibicin:

a) Competitivo

v m O2 * O 2
RO2 (17)
CO2
Km O2 1 * O2
Ki

Donde:
Ki: Constante de inhibicin de oxigeno de Michaelis-Menten (%).

b) Acompetitivo

vm O2 * O2
RO2
CO2 (18)
Km * 1 O2
Ki

Donde:
Ki: Constante de inhibicin de oxigeno de Michaelis-Menten (%).

c) Mixto

vm O2 * O2
RO2 (19)

KmO * 1 CO2 O2 * 1 CO2
KmuCO2
KmcCO2
2

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 251
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Donde:
KmuCO2: constante de Michalis-Menten para la inhibicin mixta de CO2

d) No competitivo

vm O2 * O2
RO2 (20)
CO2
KmO2 O2 * 1
KmnCO2
Donde:
KmnCO2: constante de Michalis-Menten para la inhibicin no competitiva de CO2

En las ecuacin 13 y 14 para el modelo competitivo se tiene:

dO2 100 PO A O M *100 *


PT 0,21 2
2
vmO2 * O 2 (21)
dt L V 100 V CO2
km O2 * 1 O2
ki



dCO 2 PO A CO 2 M
vmO2 * O 2 vmCO2 * CO 2

100 2 PT 0
V *100 *
dt L 100 V CO2 O2
km O 2 1 * O2 km CO 2 1 * CO2
ki kico
(22)

Donde:
Po2 = permeabilidad del empaque al oxigeno (mg/cm h atm)
Pco2 = permeabilidad del empaque al CO2 (mg/cm h atm)
L = espesor del empaque (cm)
A = Area del empaque (cm2)
M = Cantidad de producto dentro del empaque (Kg)
Vmo2: velocidad de respiracin mxima de O2 (consumo)
Vmco2: velocidad de produccin mxima de CO2 (emisin)
KmO2: Constante de respiracin para O2 de Michaelis-Menten (%).
KmCO2: Constante de respiracin para CO2 de Michaelis-Menten (%).
Ki: Constante de inhibicin de O2 de Michaelis-Menten (%).
KiCO: Constante de inhibicin de CO2 de Michaelis-Menten (%).
PT: Presin total (atm) (fuera del envase = dentro del envase) cuando es envasado
a medio ambiente.
O2 = porcentaje de O2 dentro del envase.
CO2 = porcentaje de CO2 dentro del envase.

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 252
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

Realizamos un programa en archivo GUIDE MATLAB, aplicando solucion de metodos


numericos del Sistema de Ecuaciones Diferenciales (21) y (22) por el mtodo de Runge-
Kutta de cuarto orden.

Formulario

Codigo del programa

function pushbutton1_Callback(hObject, eventdata, handles)

M=str2double(get(handles.edit1,'string'));% cantidad de producto dentro del empaque


kg
vmO2=str2double(get(handles.edit2,'string'));% velocidad mxima de o2 (mL/kg h)
kmO2=str2double(get(handles.edit3,'string'));%constante (%O2)
kiO2=str2double(get(handles.edit4,'string'));%constante de inhibicion(%O2)
vmCO2=str2double(get(handles.edit5,'string'));% velocidad mxima de CO2 (mL/kg h)
kmCO2=str2double(get(handles.edit6,'string'));%constante (%CO2)
kiCO2=str2double(get(handles.edit7,'string'));%constante de inhibicion(%CO2)
A=str2double(get(handles.edit8,'string'));% area de empaque
V=str2double(get(handles.edit9,'string'));% volumen de empaque
e=str2double(get(handles.edit10,'string'));% espesor
pmO2=str2double(get(handles.edit11,'string'));% permeabilidad al o2(mL/pulg2 h atm)
pmCO2=str2double(get(handles.edit12,'string'));% permeabilidad al co2(mL/pulg2 h
atm)
T=str2double(get(handles.edit13,'string'));% Temperatura ambiente
O2=str2double(get(handles.edit14,'string'));% porcentaje O2 en atmosfera (yo1 en
EDO)
CO2=str2double(get(handles.edit15,'string'));% porcentaje CO2 en atmosfera (yo2 en
EDO)
tf=str2double(get(handles.edit16,'string'));% Condicion inicial de O2
n=str2double(get(handles.edit17,'string'));% Condicion inicial de CO2
t0=0;% Tiempo inicial
B1=100* pmO2*A/V;
---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 253
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

B2=100* pmCO2*A/V;
C=M*100/V;

h=(tf-t0)/n; % intervalo de tiempo (dia)


t = t0;
x=O2; % condiciones iniciales de x B2,C,vmO2,kmO2,kiO2,vmCO2,kmCO2,kiCO2
y=CO2; % condiciones iniciales de y

%dy1 = B1*(0.21-0.01*x)-C* vmO2*x/( kmO2+(1+ y/ kiO2)* x);


%dy2 = B2*(0 -0.01*y)+C*(( vmO2* x/( kmO2+(1+ y/ kiO2)* x))+( vmCO2* y/(
kmCO2+(1+ x/ kiCO2)* y)));

X(1,1)=t0;
Y1(1,1)=x;
Y2(1,1)=y;

for i=1:n
k1=h*[B1*(0.21-0.01*x)-C* vmO2*x/( kmO2+(1+ y/ kiO2)* x)];
R1=h*[B2*(0 -0.01*y)+C*(( vmO2* x/( kmO2+(1+ y/ kiO2)* x))+( vmCO2* y/(
kmCO2+(1+ x/ kiCO2)* y)))];
k2=h*[B1*(0.21-0.01*(x+h/2))-C* vmO2*(x+h/2)/( kmO2+(1+ (y+h/2)/ kiO2)*
(x+h/2))];
R2=h*[B2*(0 -0.01*(y+h/2))+C*(( vmO2* (x+h/2)/( kmO2+(1+ (y+h/2)/ kiO2)*
(x+h/2)))+( vmCO2* (y+h/2)/( kmCO2+(1+ (x+h/2)/ kiCO2)* (y+h/2))))];
k3=h*[B1*(0.21-0.01*(x+h/2))-C* vmO2*(x+h/2)/( kmO2+(1+ (y+h/2)/ kiO2)*
(x+h/2))];
R3=h*[B2*(0 -0.01*(y+h/2))+C*(( vmO2* (x+h/2)/( kmO2+(1+ (y+h/2)/ kiO2)*
(x+h/2)))+( vmCO2* (y+h/2)/( kmCO2+(1+ (x+h/2)/ kiCO2)* (x+h/2))))];
k4=h*[B1*(0.21-0.01*(x+h))-C* vmO2*(x+h)/( kmO2+(1+ (y+h)/ kiO2)* (x+h))];
R4=h*[B2*(0 -0.01*(y+h))+C*(( vmO2* (x+h)/( kmO2+(1+ (y+h)/ kiO2)* (x+h)))+(
vmCO2* (y+h)/( kmCO2+(1+ (x+h)/ kiCO2)* (y+h)))) ];
x=x+(1/6)*(k1+2*k2+2*k3+k4);
y=y+(1/6)*(R1+2*R2+2*R3+R4);
y1=x;
y2=y;

t1=t0+h;
t0=t1;
X(i+1,1)=t0;
Y1(i+1,1)=y1;
Y2(i+1,1)=y2;
end

set(handles.edit18,'string',y1);
set(handles.edit19,'string',y2);
set(handles.edit20,'string',X);
set(handles.edit21,'string',Y1);
set(handles.edit22,'string',Y2);
function pushbutton2_Callback(hObject, eventdata, handles)

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 254
Mtodos numricos en Ingeniera de Alimentos Sistema de Ecuaciones diferenciales Ordinarias

X=str2num(get(handles.edit20,'string'));
Y1=str2num(get(handles.edit21,'string'));
Y2=str2num(get(handles.edit22,'string'));
%plot(X,Y1,'*r',X,Y1,'-',X,Y2,'*b',X,Y2,'-'), grid on, axis equal % ojo arreglar para Y2
plot(X,Y1,'-*r',X,Y2,'-*b'), grid on
xlabel('Tiempo de almacenamiento (dias)');
ylabel('Valores de %O2 %CO2');
title('METODO DE RUNGE-KUTTA');
legend('O2','CO2');

Resultado

---------------------------------------------------------------------------------------------------------------------------------------------
Alberto L.Huaman Huaman 255

Anda mungkin juga menyukai