Subscribed unsubscribe Subscribe Subscribe

フーリエ級数展開ライブラリーまとめ

TI-Nspire用フーリエ級数展開ライブラリー

TI-Nspire 用のフーリエ級数展開ライブラリーとして最終的に以下のプログラムができた。FFTは今後の課題とする。

(1)普通のフーリエ展開プログラム(-pi から pi までを 1 周期として解析する)

f:id:ti-nspire:20140921101605j:plain

使い方:

  1. プログラムを実行すると、展開する函数を入力するよう要求されるので、たとえば「x^2」などのように入力する。あらかじめ定義しておいた函数(「g(x)」 など」)も入力できる(piecewise 函数の展開も可)。
  2. 次に次数を入力するよう要求されるので、第何次まで展開するのかを入力する。
  3. 計算結果は以下の各変数に代入される。スペクトル分布を表示したい場合は、x.orders というリスト変数に 「1 から、入力した次数まで」の数列が代入してあるので、それを横軸に使うと便利である。

a0

an(コサイン成分、リスト形式)

bn(サイン成分、リスト形式)

pn(合成した成分、リスト形式)

wave.synthesized(x)には、合成された数式が代入される(そのままグラフに描ける)。

-----------------------------------------------------------------------

(2)DFT プログラム(次数にかかわらずすべて矩形近似で積分する)

f:id:ti-nspire:20140921102605j:plain

使い方:

  1. プログラムを実行すると、解析する 1 周期分の始点、終点(時間、角度など)を入力するよう要求されるので入力する。
  2. 次に、解析する離散データを入力するよう要求されるので、リスト形式で入力する(あらかじめスプレッドシートに入力しておいたデータをコピーするか、そのリスト名を入力するかしたほうが簡単)。
  3. 第何次まで展開するのかを入力するよう要求されるので入力する。
  4. 計算結果については上の(1)と同じである。

--------------------------------------------------------------

Mathematica ならフーリエ展開函数が組込函数として用意してあるので実はわざわざこんなプログラムを作る必要はない。

 

Remove all ads