2次元1階常微分方程式(ODE)のフィールド方向
fchamp(f, t, xr, yr, [arfact, rect, strf]) fchamp(f, t, xr, yr, <opt_args>)
外部ルーチン (関数または文字列) または ODE を記述するリスト.
関数名 f
とすることができ,
この際, f
はy=f(t,xy [p1,..pn])
という型の関数と仮定されます.
f
は大きさ 2 の列ベクトルを返し,
そのベクトルは点 xy=[x,y]
の時刻
t
における方向フィールドf
の値を指定します.
リスト型のオブジェクトlist(f,P1,..Pn)
とすることも可能で,
この場合,f
はy=f(t,xy,p1,..pn)
という型の関数, Pi
はパラメータpi
の値を指定します.
選択された時間.
大きさn1
およびn2
の行ベクトルで,
方向フィールドが計算されるグリッドを定義します.
一連の命令 key1=value1,key2=value2
... を表します.
ただし, key1
,
key2,...
は以下のどれかとします:
arfact
,
rect
, strf
(以下参照).
オプションの引数, champ
参照.
fchamp
は,外部関数f
で定義された
2次元1階常微分方程式(ODE)のフィールド方向を描画する際に使用されます.
![]() | ODEが自律的な場合, 引数 f は不要ですが,
指定する必要があることに注意してください. |
コマンド fchamp()
を入力するとデモを参照できます.
deff("[xdot] = derpol(t,x)",.. ["xd1 = x(2)";.. "xd2 = -x(1) + (1 - x(1)**2)*x(2)";.. "xdot = [ xd1 ; xd2 ]"]) xf= -1:0.1:1; yf= -1:0.1:1; fchamp(derpol,0,xf,yf) | ![]() | ![]() |
deff("[xdot] = derpol(t,x)",.. ["xd1 = x(2)";.. "xd2 = -x(1) + (1 - x(1)**2)*x(2)";.. "xdot = [ xd1 ; xd2 ]"]) xf= -1:0.1:1; yf= -1:0.1:1; clf() fchamp(derpol,0,xf,yf,1,[-2,-2,2,2],"011") | ![]() | ![]() |