Mathematics    

ODE 関数のまとめ

初期値 ODE 問題のソルバ

つぎのような、MATLAB初期値問題のソルバがあります。表には、各ソルバを使って解くことのできる問題の種類と各ソルバが使用している手法をリストしています。

ソルバ
解くことのできる問題の種類
手法
ode45
ノンステッフな微分方程式
Runge-Kutta
ode23
ノンステッフな微分方程式
Runge-Kutta
ode113
ノンステッフな微分方程式
Adams
ode15s
ステッフな微分方程式と代数方程式
NDFs (BDFs)
ode23s
ステッフな微分方程式
Rosenbrock
ode23t
中程度のステッフな微分方程式と代数方程式
Trapezoidal rule
ode23tb
ステッフな微分方程式
TR-BDF2

ODE オプションの取り扱い

積分プロパティ名と値を含むOptions構造体がソルバに渡されて、問題の解に影響を与えます。つぎの関数を使って、Options構造体を作成したり、変更したり、アクセスすることができます。

関数
詳細
odeset
ODE ソルバへの入力に対するOptions 構造体の作成と変更
odeget
odesetを使って作成したOptions構造体からプロパティを取得

ODE ソルバ出力関数

出力関数が設定されると、ソルバは、連続的に行なう積分ステップ毎に指定した関数をコールします。ユーザは、odeset を使って、 OutputFcn プロパティのように、これらのサンプル関数の一つを設定でき、また、これらを変更して、ユーザ自身の関数を作成できます。

関数
詳細
odeplot
時系列プロット
odephas2
2次元の位相面プロット
odephas3
3次元の位相面プロット
odeprint
コマンドウインドウにプリント

ODE初期値問題のデモ

これらのデモは、MATLABの中で解くことのできる問題の種類を示しています。MATLABのHelp Browserから、デモ名をクリックして、エディタでデモコードを見ることができます。デモを実行するには、コマンドラインで、demoname と入力してください。

デモ
詳細
amp1dae
ステッフな DAE - 電子回路
ballode
簡単なイベントの生じる位置 - バウンドするボール
batonode
時変、状態に依存した質量行列をもつ ODE - バトンの運動
brussode
ステッフな大規模問題 - 化学反応の拡散作用 (Brusselator)
burgersode
状態量に非常に依存した質量行列をもつODE - メッシュを変更する手法を使って、Burgerの方程式を解く
fem1ode
時変の質量行列をもつステッフな問題 - 有限要素法
fem2ode
定質量行列をもつステッフな問題 - 有限要素法
hb1dae
保存則下でのステッフな DAE 問題
hb1ode
非常に長い区間でステッフな問題を解く - Robertson 化学反応
orbitode
より進んだイベントの生じる位置の検出 - 制約付きの3体問題
rigidode
ノンステッフな問題 - 外力のない剛体の Euler 方程式
vdpode
パラメータ化した van der Pol 方程式 (大きな については、ステッフ)


 ODE問題とDAE問題に対する初期値問題 初期値 ODE 問題の導入