how i solve ApprocimantCoefficientsSIR in MATLAB
3 views (last 30 days)
Show older comments
I want to solve the approximantcoefficientsSIR,but it keep showing the error in line4
alpha=2.73; r=0.0178; I0=7; S0=254; %input parameters
t=0:0.01:6; %time interval 0 to 6 in increments of 0.01
N=25; %number of terms in the approximant, increase until answer stops changing
[A,Sinf,a0,a]=ApproximantCoefficientsSIR(N,alpha,r,S0,I0);
kappa=r*Sinf-alpha;
Ssum=1;
for j=1:N
Ssum=Ssum+A(j)*exp(kappa*t*j); %approximant (equation 4.7a in paper)
end
S=Sinf./Ssum;
plot(t,S,'displayname','S'); hold on
I=alpha/r*log(S/S0)+S0-S+I0;
plot(t,I,'displayname','I');
R=S0+I0-S-I; %b/c S+I+R=constant
plot(t,R,'displayname','R'); xlabel('t'); legend show
0 Comments
Answers (2)
TARUN
on 1 Apr 2025
Edited: TARUN
on 1 Apr 2025
Make sure that ApproximantCoefficientsSIR for approximating the coefficients of the SIR model, is properly installed in MATLAB.
You can run “which ApproximantCoefficientsSIR” command in MATLAB to check if the function is recognized and correctly installed.
Alternatively, you can use ode45 to solve the SIR model.
Feel free to go through this answer to get an idea on how to use ode45to solve SIR model:
Learn more about ode45 here:
0 Comments
Walter Roberson
on 1 Apr 2025
approximantcoefficientsSIR requires the installation of a File Exchange contribution https://www.mathworks.com/matlabcentral/fileexchange/75131-approximantcoefficientssir
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!