Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
ode_root
求解付きの常微分方程式ソルバ
呼び出し手順
y,rd[,w,iw]=ode("root",y0,t0,t [,rtol [,atol]],f [,jac],ng,g [,w,iw])
パラメータ
- y0
 実数ベクトルまたは行列 (初期値).
- t0
 実数スカラー (初期時間).
- t
 実数ベクトル (解を計算する時間).
- f
 外部関数または文字列またはリスト.
- rtol,atol
 実数定数または
yと同じ大きさの実数ベクトル.- jac
 外部関数または文字列またはリスト.
- w,iw
 実数ベクトル.
- ng
 整数.
- g
 外部関数または文字列またはリスト.
説明
この構文により (最初の引数が"root")
    ode は, 状態量y(t)が
	面g(t,y)=0を通過するまで
	微分方程式dy/dt=f(t,y)
	の解を計算します.
g に面の方程式を指定します.
	これは指定した構文を有する外部関数,または
	指定したコール手順を有する
	FortranサブルーチンまたはC関数(文字列)またはリストです.
g が関数の場合,その構文は以下のようにする
	必要があります:
z = g(t,y)
ただし, t はスカラー実数 (時間),
    y は実数ベクトル (状態量). この関数は,
	ng個の拘束条件に対応する
	大きさngのベクトルを返します.
	g が文字列の場合,
	この文字列は, FortranサブルーチンまたはC関数を指しており,
	以下のようなコール手順となります: g(n,t,y,ng,gout).
	ただし, ngは拘束条件の数,
	goutはgの値
	(プログラムの出力)です.
	g は,
    	f と同じ表記のリストです.
	(odeのヘルプ参照).
出力 rd は 1 x k ベクトルです.
    最初のエントリは,停止時間を含んでいます.
	他のエントリは,gのどの要素の符号が変わったのかを
	示すエントリです.
	kが2より大きい場合,1以上の面
	((k-1) 個の面)が同時に符号が変わったことを意味します.
他の引数と他のオプションは,
    odeと同じです.odeのヘルプを参照ください.
例
| << ode_optional_output | Differential Equations, Integration | odedc >> |