1

私は ode45 を使用していますが、この場合どうすればよいかわかりません。パラメータが時間とともに非常に急速に変化する微分方程式があります。理想的には、tspan を 0:epsilon:10*epsilon のように選択したいと思います。この場合、DE の因子にあるものを考慮して、epsilon は適切に小さいオーダーです。ただし、これは機能せず、MATLAB は初期条件から何も変化しないプロットを表示するだけです。

私はそれを修正するために明らかなことをしました。それは次のとおりです。xdot(t)=10^9*x(t) があるとします。これを xdot(t)=x(t) と書き直して、時間軸を秒ではなくナノ秒とラベル付けします。

MATLAB が単独でこれを実行できるかどうかに興味があります。

4

1 に答える 1

1

ODE オプションを使用して最大時間ステップを設定できます。

opt = odeset('MaxStep',epsilon)
[t,y] = ode45(odeFun,tSpan,y0,opt)

ODE ソルバーをカスタマイズするときに変更できるすべてのオプションのアイデアを得るには、 を参照してくださいdocsearch odeset

于 2013-01-22T16:12:50.650 に答える