1
私は関数(SIRモデル用)を持っています。そして、この関数を解くスクリプトに、このモデルを適合させようとしているデータと比較します。したがって、フィットを最適化するために関数のパラメータを変更するforループを実行しようとしています。私は手でそれらを変更することなく、ループのために私の(R)及び(a)のパラメータを変更する方法を思ったんだけど:MATLABでode45を使用するときに関数のパラメータを変更する方法
function ydot=epidemic(t,y)
r=0.000001;
a=1/3;
ydot=zeros(3,1);
ydot(1)=-r*y(1)*y(2);
ydot(2)=r*y(1)*y(2)-a*y(2);
ydot(3)=a*y(2);
end
と
[t,y]=ode45('epidemic',[0:222], [70500,1,0])
感謝を
[MATLAB:関数にパラメータを渡すにはどうすればいいですか?](http://stackoverflow.com/questions/2256229/matlab-how-do-i-pass-a-parameter-to-a関数)または[this one](http://stackoverflow.com/questions/7680224/matlab-ode45-how-to-change-a-parameter-inside-it-while-calling-it)を参照してください。 [関連ドキュメント](http://www.mathworks.com/help/matlab/ref/ode45.html#bu3uhuk)および[this](http://www.mathworks.com/help/matlab/math)も参照してください。 /parameterizing-functions.html)。 – horchler