first steps using dde23

I want to solve the function
function Change = logisticGrowth( t,Population )
Limit=100;
MaxGrowthRate=0.2;
LossRate=0.02;
Density = Population / Limit;
Loss = Population * LossRate;
Change=Population*MaxGrowthRate*(1-Density)-Loss;
end
with a delay of 5 years using
delay=5;
before=2;
timespan=[0 100];
dde23(@logisticGrowth,delay,before,timespan)
and Matlab tells: "Error using logisticGrowth. Too many input arguments."
I appreciate your hints.

 采纳的回答

There is a possible solution.
function solution
delay=5;
before=2; % history
timespan=[0, 100];
Limit=100;
MaxGrowthRate=0.2;
LossRate=0.02;
dde_options = ddeset('RelTol',1e-07);
sol=dde23(@logistic,delay,before,timespan,dde_options,Limit,MaxGrowthRate,LossRate);
plot(sol.x,sol.y)
grid on
title('Logistic Growth with delayed impact of density')
xlabel('t')
ylabel('y')
end
function Change = logistic( t,Population,Z,Limit,MaxGrowthRate,LossRate )
Loss = Population * LossRate;
Change=Population*MaxGrowthRate*(1-Z/Limit)-Loss;
end

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Data Import and Network Parameters 的更多信息

产品

标签

Community Treasure Hunt

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

Start Hunting!

Translated by