Variables Globales
Publicado por Dionisio (12 intervenciones) el 06/05/2019 02:33:51
Necesito ayuda con el uso de las variables globales. Lo que ocurre es que quiero cambiar el valor de una variable (la variable es D), que se encuentra de una funcion (la funcion se llama Modeleth) para cambiar el valor original de D con estos nuevos datos: .04 .08 .12 .16 .3.
El objetivo es graficar utilizando hold on para observar y comparar el comportamiento de la grafica.
FUNCION:
ASI TRATO DE CORRER EL SCRIPT;
El objetivo es graficar utilizando hold on para observar y comparar el comportamiento de la grafica.
FUNCION:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function dydt = Modeleth(t,y) %AQUI SE NOMBRA LA FUNCION
So=30; %CONSTATNE: sustrato de alimentacion
D=0; %CONSTATNE: tasa de dilucion
umax=0.2717; %CONSTATNE: velocidad maxima
ks=9.8414; %CONSTATNE: saturacion de sustrato
ki=0.0058; %CONSTATNE: inhibicion por sustrato
kp=0.1054; %CONSTATNE: inhibicion por producto
Yxs=14.08; %CONSTATNE: factor de rendimiento biomasa apartir sustrato
Yps=2.63; %CONSTATNE: factor de rendimiento producto a partir sustrato
ms=-.0126; %CONSTATNE: coeficiente de mantenimiento celular
alpha=6.16; %CONSTATNE: termino asociado al rendimiento
X=y(1); S=y(2); P=y(3); %LA BIOMASA PRIMERA EC. EL SUSTRATO SEGUNDA EC. EL PRODUCT TERCERA EC.
u = (umax*S/(ks+S+((S^2)*ki)))*(1-(P*kp)); %FUNCION DEL MODELO
dXdt = (u-D)*X; %ECUACION DIFERENCIAL
dSdt = ((-Yxs-Yps)*u*X)+(-ms*X)+((So-S)*D); %ECUACION DIFERENCIAL
dPdt=(alpha*u*X)-(D*P); %ECUACION DIFERENCIAL
dydt = [dXdt dSdt dPdt]'; %ECUACIONES EN MATRIZ
ASI TRATO DE CORRER EL SCRIPT;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[t,x]= ode23('Modeleth',[0,100],[0.9 30 2.5]); %BIOMASA SUSTRATO PRODUCTO
subplot(3,2,1), plot(t,x(:,1)); %:1 DICE QUE SE QUIEREN TODOS LOS RENGLONES PERO SOLO LA COLUMNA 1
hold on
global D
D=.04;
[t,x]= ode23('Modeleth',[0,100],[0.9 30 2.5]); %BIOMASA SUSTRATO PRODUCTO
subplot(3,2,1), plot(t,x(:,1)); %:1 DICE QUE SE QUIEREN TODOS LOS RENGLONES PERO SOLO LA COLUMNA 1
hold on
global D
D=.08;
[t,x]= ode23('Modeleth',[0,100],[0.9 30 2.5]);
subplot(3,2,1), plot(t,x(:,1));
hold on
global D
D=.12;
[t,x]= ode23('Modeleth',[0,100],[0.9 30 2.5]);
subplot(3,2,1), plot(t,x(:,1));
hold on
global D
D=.16;
[t,x]= ode23('Modeleth',[0,100],[0.9 30 2.5]);
subplot(3,2,1), plot(t,x(:,1));
hold on
global D
D=.3;
[t,x]= ode23('Modeleth',[0,100],[0.9 30 2.5]);
subplot(3,2,1), plot(t,x(:,1));
Valora esta pregunta
0