In[]:=
seirCompartments = {[t], ℰ[t], ℐ[t], ℛ[t]};​​seirEquations = ​​ '[t]  -β
[t]

ℐ[t],​​ ℰ'[t]  β
[t]

ℐ[t] - σ ℰ[t],​​ ℐ'[t]  σ ℰ[t] - γ ℐ[t],​​ ℛ'[t]  γ ℐ[t],​​ [0]  s0,​​ ℰ[0]  ex0,​​ ℐ[0]  i0,​​ ℛ[0]  r0​​;​​seirInitialConditions = {s0999999,i01,1000000,r00,ex00};​​seirParameters = β
1
2
, γ
1
10
, σ
3
4
;​​Multicolumn[seirEquations /. seirInitialConditions, 2]
Out[]=
′

[t]-
βℐ[t][t]
1000000
[0]999999
′
ℰ
[t]-σℰ[t]+
βℐ[t][t]
1000000
ℰ[0]0
′
ℐ
[t]σℰ[t]-γℐ[t]
ℐ[0]1
′
ℛ
[t]γℐ[t]
ℛ[0]0
Out[]=
′

[t]-
βℐ[t][t]
1000000
[0]999999
′
ℰ
[t]-σℰ[t]+
βℐ[t][t]
1000000
ℰ[0]0
′
ℐ
[t]σℰ[t]-γℐ[t]
ℐ[0]1
′
ℛ
[t]γℐ[t]
ℛ[0]0
In[]:=
With[{seirSolutions=seirCompartments/.ParametricNDSolve[seirEquations/.seirInitialConditions,seirCompartments,{t,0,100000},{β,γ,σ}]},Manipulate[Show[{Plot[Evaluate@Through[seirSolutions[β,γ,σ]][[{1,4}]],{t,0,tmax},PlotRange{{0,tmax},{0,ymax}}]}],(*paramtersinmodel*){{β,1/2},0,1},{{γ,1/10},0,1},{{σ,3/4},0,1},Delimiter,(*plotrangelimits*){{tmax,100,"\!\(\*SubscriptBox[\(t\), \(max\)]\)"},0,200},{{ymax,1000000,"\!\(\*SubscriptBox[\(y\), \(max\)]\)"},0,1000000},SaveDefinitionsTrue]]
Out[]=
​
β
γ
σ
t
max
y
max
0
20
40
60
80
100
0
200000
400000
600000
800000
1×
6
10