**第7回第8回の宿題に関する補足 [#sup1]

-[[gnuplotの使い方>Docs/gnuplot]]
-次のようにしておくと軸を描けます.
 gnuplot> set zeroaxis
//- 講義資料に示された問題(1)のデータに
// -2.5 0
// -2.5 0.5
//のように同じx座標の値が2箇所あったりして,変なんじゃないかと思う人がいるかもしれませんが,資料に間違いはありません.折れ線グラフを描こうとしているので…


**第8回の宿題に関する補足 [#sup2]

- gnuplot では円周率 &mathjax{\pi}; は pi と書きます.
  gnuplot> plot [0:1/pi] pi*x
-関数のグラフを描く際には,デフォルトの設定だと横軸の標本化間隔が広すぎて曲線ががたがたして見えるでしょう.デフォルトの標本点数は次のコマンドを実行するとわかります.
 gnuplot> show samples
標本点数を10にするには次のようにします.
 gnuplot> set samples 10
課題のグラフは標本点数を 1000 にして描きましょう.
-フーリエ級数展開を途中で打ち切ったもののグラフを描く際には,次のようにgnuplot上で関数を定義して使うようにすると楽(間違えたときに修正ややり直しがしやすい)かも
#pre{{
gnuplot> f0(t) = 「f0(t)の式」
gnuplot> f1(t) = f0(t) + 「ほげ」 
gnuplot> f2(t) = f1(t) + 「ふが」
gnuplot> f3(t) = ...
gnuplot> plot "tABCDEF.txt" w l, f1(x), f2(x), f3(x)
}}
- gnuplot に与えるコマンドをあらかじめテキストファイルに書いておいて読み込ませることもできます.例えば
#pre{{
set yrange [ -2:2]
plot sin(x)
replot cos(x)
}}
という内容のファイルを hoge.plt という名前で作っておいたとすると,gnuplot で
 gnuplot>  load  "hoge.plt"
とすればok.
-フーリエ級数展開を途中で打ち切ったもののグラフを描く際には,次のようにgnuplot上で関数を定義して使うようにすると楽(間違えたときに修正ややり直しがしやすい)かも
#pre{{
gnuplot> f0(t) = 「f0(t)の式」
gnuplot> f1(t) = f0(t) + 「ほげ」 
gnuplot> f2(t) = f1(t) + 「ふが」
gnuplot> f3(t) = ...
gnuplot> plot "tABCDEF.txt" w l, f1(x), f2(x), f3(x)
}}
-(まにあむけ)上記の関数定義では,引数を複数にすることもできます.また,C言語の三項演算子が使えます.例えば
#pre{{
gnuplot> f(t,a) = t > 0 ? a*t : a*(-t)
gnuplot> plot f(x,2)
}}
とすると,
#mathjax{{
y = a |x|
}}
のグラフを描けます.これをうまく利用すると,場合分けの必要なフーリエ係数を…

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS