Previous: Introduction to plotdf, Up: plotdf [Contents][Index]
[u,v], ...options...) ¶[dxdt,dydt], ...options...) ¶[dudt,dvdt], [u,v], ...options...) ¶2次元xとyに方向場を表示します。
最初の引数は導関数を指定し、式か2つの式のリストでなければいけません。
dydx, dxdt, dydtはxとyに依存する式です。
dvdu, dudt, dvdtはuとvに依存する式です。
それら2つの変数に加えて、
parametersオプションで与えられる数値を持つか(オプション構文法は以下に与えられます)、
slidersオプションで指定される許される値の範囲の
パラメータ一式にも、式は依存するかもしれません。
コマンド内やメニューで選択して、いくつかの他のオプションを与えることができます。
プロット上でクリックしたり、オプションtrajectory_atを使って、
積分曲線を得ることができます。
directionオプションを使って、積分の方向を制御できます。
オプションは、forward, backward, bothのいずれかの値を取り得ます。
nstepsで積分ステップの数を与えることができ、
tstepオプションでそれらの間の時間間隔を設定できます。
積分にはAdams Moulton法が使われます;
4次の適応Runge-Kutta法に切り替えることも可能です。
プロットウィンドウメニュー:
プロットウィンドウのメニューには以下のオプションがあります: Zoom, はマウスの振る舞いを変えて、プロット領域上で左ボタンをクリックすることで ズームインできるようになります。 ある点近くをクリックする毎に、クリックした点を中心にしてプロットが拡大されます。 Shiftキーを押しながらクリックすると、 以前の倍率にズームアウトします。 ある点をクリックした時、軌跡の計算を再開するには、 メニューからIntegrateを選択してください。
メニューの中のオプションConfigを使って, 使用中のODE(s)や様々な他の設定を変えることができます。 構成の変更がされた後、新しい設定を稼働するには、 メニューオプションReplotを選択しなければいけません。 もし、座標の組を Configダイアログメニューの場Trajectory atに入れて、 enterキーを押したら、 既に示されているものに加えて、新しい積分曲線が表示されます。 Replotが選択された時は、 入れられた最後の積分曲線だけが表示されます。
右マウスボタンを押しながらカーソルを動かすと、 プロットを横や上下にドラッグできます。 ステップ数やtの初期値、x, yの中心や範囲のような追加パラメータは、 Configメニューで設定できます。
プロットのコピーは、メニューオプションSaveを使って、 ポストスクリプトファイルとして保存できます。
プロットオプション:
plotdfコマンドはいくつかのコマンドを含むかもしれません。
それぞれのコマンドは複数の項目のリストです。
最初の項目はオプション名で、
残りはオプションに割り当てられる値から成ります。
plotdfが認識するオプションは以下の通りです:
plotdfに与えられたら、
x変数はtに直接比例することになります。
デフォルト値は0.1です。
tstepのステップ回数を定義します。
デフォルト値は100です。
forward―これは増分tstepで独立変数をnsteps回増やします―
backward―これは独立変数を減らします―
またはboth―これは
nsteps回前進、 nsteps回後進で拡げた積分曲線に導きます―
キーワードrightとleftを、
forwardとbackwardの別称として使うことができます。
デフォルト値はbothです。
versus_tが0と異なる任意の値を与えられたら、
二番目のプロットウィンドウが表示されます。
二番目のプロットウィンドウは、
メインプロットウィンドウのメニューに似た別のメニューを含みます。
デフォルト値は0です。
name=valueの列を持つ文字列で与えなければいけません。
name=min:maxの列を持つ文字列で与えなければいけません。
例:
(%i1) plotdf(exp(-x)+y,[trajectory_at,2,-0.1])$
(%i1) plotdf(x-y^2,[xfun,"sqrt(x);-sqrt(x)"],
[trajectory_at,-1,3], [direction,forward],
[y,-5,5], [x,-4,16])$
グラフは関数y = sqrt(x)も表示します。
(%i1) plotdf([v,-k*z/m], [z,v], [parameters,"m=2,k=2"],
[sliders,"m=1:5"], [trajectory_at,6,0])$
(%i1) plotdf([y,-(k*x + c*y + b*x^3)/m],
[parameters,"k=-1,m=1.0,c=0,b=1"],
[sliders,"k=-2:2,m=-1:1"],[tstep,0.1])$
(%i1) plotdf([w,-g*sin(a)/l - b*w/m/l], [a,w],
[parameters,"g=9.8,l=0.5,m=0.3,b=0.05"],
[trajectory_at,1.05,-9],[tstep,0.01],
[a,-10,2], [w,-14,14], [direction,forward],
[nsteps,300], [sliders,"m=0.1:1"], [versus_t,1])$

Previous: Introduction to plotdf, Up: plotdf [Contents][Index]