scilab an 辺りで animation が候補に出てくる.割とポピュラーな話題のようだ.
まず今日見つかったのが paramfplot2d 氏.以下サンプルコード,解説などはここを参照する.
この関数は "Animated plot of the function
x
, t
-->f(x,t)
for t=theta(1),theta(2),etc
."とりあえずはサンプルコードを見てみよう.シンプルそうな一個目を見る.
deff('y=f(x,t)','y=t*sin(x)') //関数定義.t sin x の t がじわじわ大きくなる時のアニメーションが表示される.
x=linspace(0,2*%pi,50); //linspace: linearly spaced vector
theta=0:0.05:1; // 刻み
clf;// 一旦画像消す……のだがこの行なくても同じように動く
paramfplot2d(f,x,theta); // 今回の焦点
paramfplot2d の各引数についてはこれでわかりやすい.
3行目を theta=0:0.005:1; と書き換えると動きはもっとのったりする.
step 間の時間調整もなんかあるのかな…また調べとこう.clf; の存在意義はこのコード中最大の謎.
また, linspace linearly spaced vector も便利そう.
この場合は,0~2π を50 個に linear に分けた vector が x となる.一般には
[v]=linspace(x1,x2 [,n])n は省略可能で, default では 100 に設定されている.x とかは複素数で良い.
今日お知り合いになれたのは皆使い所の多そうな人たちである.
No comments:
Post a Comment