Está en la página 1de 22

Universidad Nacional de Colombia

INTRODUCCIÓN AL CONTROL DE PROCESO BIOLÓGICOS


Código 3010632

Cap. 2. Modelado y Simulación


Solución y gráfica de ecuaciones diferenciales en Python

Dr. FERNANDO OROZCO SÁNCHEZ


Ing. Químico M.Sc.
feorozco@unal.edu.co
Of. 21-235
Agenda:
1. ¿Por qué necesitamos usar métodos numéricos?
2. Método de Euler
3. Ejemplo simple: crecimiento microbiano
4. Solución y gráfica de la ecuación diferencial en Python
5. Conclusiones sobre el uso de métodos numéricos
6. Ejercicio: Modelo de oscilaciones glicolíticas
¿Por qué necesitamos usar
métodos numéricos?
¿Por qué necesitamos usar métodos
numéricos?
• En muchas ocasiones la solución
analítica de una ecuación
diferencial es muy difícil de
lograr.
• Los métodos numéricos para
ecuaciones diferenciales
ordinarias permiten encontrar
una solución aproximada de una
forma relativamente fácil.
Método de Euler
Método de Euler
• El método de Euler es un método
numérico para resolver la
ecuación diferencial de primer
orden a partir de un valor inicial
dado.
• Es un procedimiento de
integración numérica, que
permite encontrar una solución
aproximada para resolver
ecuaciones diferenciales
ordinarias (ODE).
Método de Euler

Recordemos de Cálculo
dy
 y ( x )  f ( x , y )
dx
y( x  x )  y( x )
y ( x )  lim
x o x
y( x  x )  y( x )
y ( x ) 
x
y( x  x )  y( x )  y ( x )  x
Método de Euler Interpretación Gráfica

yn1  yn yn1  yn
yn  
xn1  xn x
yn1  yn  x  yn
Método de Euler - Ejemplo
yn+1
Iteración (n) xn yn y'n y'n*Δx yn + y'n*Δx
0
1
2
3
4

dy
 0.3 y
dx Noten que se puede programar
y(0)  10 fácilmente en un ciclo for
x  0.5
deltax 1
ysub(n+1)

Integral, y=exp(-
Iteración xn yn y´n y´n*deltax yn+y´n*deltax xn 0.3x+2.302585)
10 0 9.99999907
1 0 10 -3 -3 7 1 7.40818152
2 1 7 -2.1 -2.1 4.9 2 5.48811585
3 2 4.9 -1.47 -1.47 3.43 3 4.06569622
4 3 3.43 -1.029 -1.029 2.401 4 3.01194184
5 4 2.401 -0.7203 -0.7203 1.6807 5 2.23130139
6 5 1.6807 -0.50421 -0.50421 1.17649 6 1.65298873
7 6 1.17649 -0.352947 -0.352947 0.823543 7 1.22456417 12
8 7 0.823543 -0.2470629 -0.2470629 0.5764801 8 0.90717945
9 8 0.5764801 -0.17294403 -0.17294403 0.40353607 9 0.67205506 yn+y´n*deltax
10 9 0.40353607 -0.12106082 -0.12106082 0.282475249 10 0.49787064
10
Integral, y=exp(-
8 0.3x+2.302585)

y
4

0
0 2 4 6 8 10
x
Ejemplo simple de crecimiento
microbiano
Curva de crecimiento microbiano

dX
   X  kd  X
dt
Solución y gráfica de la ecuación
diferencial en Python
dX
   X  kd  X
dy
Conclusiones sobre el uso de
métodos numéricos
Sobre el método de Euler
• Es una solución aproximada.
• Depende en gran medida del tamaño del paso (dt).
• A menor paso (dt) la solución se aproxima más a la analítica.
• A menor paso (dt) hay mayor consumo de memoria del ordenador y se
requiere una mayor capacidad de procesamiento.
Sobre otros métodos de integración numérica
• Existen métodos numéricos para solución de OEDs más elaborados
que permiten obtener una solución óptima. Es decir, permite
acercarse a la solución analítica sin sacrificar capacidad de computo.
• Casi indistintamente todos estos métodos numéricos dependen de
igual forma del tamaño del paso (dt) por lo que la solución se optimiza
precisamente en la manera como se define el paso (Métodos de paso
variable).
• Estos métodos son más difíciles de programar y en realidad el método
de Euler es más que suficiente para los alcances de este curso.
Ejercicio: Programar un modelo
de oscilaciones glicolíticas
Modelo de Bier, Bakker, & Westerhoff, 2000
Modelo de Bier, Bakker, & Westerhoff, 2000
Es un modelo con dos ecuaciones diferenciales, dos reacciones y una
ecuación constitutiva para cada reacción.
Modelo de Bier, Bakker, & Westerhoff, 2000
Analizar y escribir las unidades
Ecuaciones Parámetros y condiciones iniciales
dGLU vGLU  0.36
 vGLU  r1
dt k1  0.02
dATP
 2r1  r2 k2  6
dt
r1  k1  GLU  ATP K m  13
k2  ATP GLU (0)  4
r2 
K m  ATP ATP (0)  3

También podría gustarte