The mathematics behind modelling

2 次查看(过去 30 天)
This is my first time using MATLAB and despite reading up on tutorials I am still confused in regards to how to utilise MATLAB. I am trying to simulate a SEIR model, which consists of a system of differential equations, for the spread of dengue fever in MATLAB with the following equations and parameters:
Thank you!!!
  2 个评论
John D'Errico
John D'Errico 2015-12-29
Please stop posting the identical question every hour just because you are in a hurry. I've now deleted most of your replicate questions.
Walter Roberson
Walter Roberson 2015-12-29
There was a Mathworks server problem this morning that prevented people from telling that their question had been posted.

请先登录,再进行评论。

采纳的回答

Josh Meyer
Josh Meyer 2015-12-31
You have a system of 7 coupled ODEs. You will need to code the equations into a function, define the initial conditions and interval for integration, then use an ODE solver such as ODE45 to solve the equations numerically. I got you started on your function, but you'll need to fill in the gaps and double check it:
function dSdt = denguefeverODE(t,S)
% Define parameters
Nh =
Nm =
uh =
um =
Pmh =
Phm =
beta =
nu_h =
epsilon_m =
tau_h =
f =
% Define the equations. Each element in the output contains the answer for
% one equation, so there are 7 components. For ex. S(1) is Sh while dSdt(1)
% is dSh/dt, and S(7) is Im while dSdt(7) is dIm/dt.
dSdt = zeros(7,1);
dSdt(1) = uh*Nh - (beta*Pmh*(S(7)/Nh)+uh)*S(1);
dSdt(2) = beta*Pmh*(S(7)/Nh)*S(1) - (tau_h+uh)*S(2);
.
.
.
dSdt(7) = epsilon_m*S(6) - um*S(7);
Once you are ready to solve, the solver syntax is
tspan = [t0 tf]; % Change to initial and final times
y0 = [a b c d e f g]; % Need 7 initial conditions, 1 for each variable
[t,y] = ode45(@denguefeverODE, tspan, y0)
Then you can see all of the solution components with
plot(t,y)
  6 个评论
Walter Roberson
Walter Roberson 2016-1-7
We need your updated code including the code for denguefeverODE, and you should also post the complete error message including the traceback showing where the error is occurring.
Muse Riveria
Muse Riveria 2016-1-7
编辑:Muse Riveria 2016-3-16
>> denguefeverODE(t, S)
Undefined function or variable 't'.

请先登录,再进行评论。

更多回答(2 个)

Torsten
Torsten 2016-1-7
function main
to = 0;
tf = 100;
tspan = [to tf];
y0 = [5535002 50 50 0 0 0 0 ];
[t,S] = ode45(@denguefeverODE, tspan, y0);
plot(t,S)
title('Human Population Without Control')
xlabel('Time')
ylabel('Susceptible, Exposed, Infected, Recovered')
legend('Susceptible', 'Exposed', 'Infected', 'Recovered')
function dSdt = denguefeverODE(t,S)
Nh = 5535002;
Nm = 33210012;
uh = 0.0045;
um = 0.02941;
Pmh = 0.375;
Phm = 0.750;
beta = 1;
nu_h = 0.1666;
epsilon_m = 0.1;
tau_h = 0.1176;
f = 6;
dSdt = zeros(7,1);
dSdt(1) = uh*Nh - (beta*Pmh*(S(7)/Nh)+uh)*S(1);
dSdt(2) = beta*Pmh*(S(7)/Nh)*S(1) - (tau_h+uh)*S(2);
dSdt(3) = tau_h*S(2)-(nu_h+uh)*S(3);
dSdt(4) = nu_h*S(3)-uh*S(4);
dSdt(5) = um*Nm - (beta*Phm*(S(3)/Nh)+um)*S(5);
dSdt(6) = beta*Phm*(S(3)/Nh)*S(5);
dSdt(7) = epsilon_m*S(6) - um*S(7);
Best wishes
Torsten.
  7 个评论
Muse Riveria
Muse Riveria 2016-1-9
How to modify the equation, the article was used for reference as the data isn't completely applicable to the geographical location that used for this differential system. Would it be a simple task, or would it require the formation of more complicated subsequent equations?
Star Strider
Star Strider 2016-1-10
I doubt the DEs would change, since the epidemiology would be essentially the same, but the parameters likely would. (Islands in the Caribbean might be similar enough to not require any significant changes.) If you’re using them for a more northerly latitude in response to global warming, there are several changes you would have to consider. The human epidemiology would be the same, but you might have to consult with an entomologist with a particular interest in Aedes aegypti to determine what would have to change about the vectors.

请先登录,再进行评论。


MOUSSA DOUMBIA
MOUSSA DOUMBIA 2016-6-6
Can anybody provide me a sample of an optimal control problem with 3 different control functions?

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by