■ フーリエ解析(16): フーリエ変換を体験しよう (JavaScript版)

 関数 f(t)のフーリエ変換、フーリエ逆変換は次式で定義されます。
  F(ω) = -∞ f (t)e-jωt dt

  f (t) = 1/(2π)-∞ F(ω)e jωt

 次のアプリは、各種の関数 f(t)のフーリエ変換を行い、結果 F(ω)をグラフにして表示します。

 「任意折線」、「任意曲線」を選択した場合は通過点を左から順にクリックして入力します(但し、横軸:-T/2~T/2、縦軸:0~1 の範囲)。
 また、grid入力モードをONにすると、最も近いgrid点が入力されます。

矩形波 3角波 ノコギリ波 台形波  |  表示データ選択 逆変換範囲
半楕円波 正弦波 任意折線 任意曲線  |   
    grid入力


 「逆変換」ボタンを押すと、F(ω)から f(t) へ逆変換します。但し、この時はωの積分範囲を指定します。
 ● 矩形波に対するフーリエ変換とフーリエ逆変換
 矩形波:
   f (t) = 1/T (|t| ≦ T/2),  0 (|t| > T/2)
に対するフーリエ変換を定義式から求めてみましょう。
  F(ω) = -∞ f(t)e-jωt dt

     = -T/2T/2 (1/T)e-jωt dt

     = 1/(-jTω) [ e-jωt]-T/2T/2

     = 1/(-jTω) [ e-jTω/2 - ejTω/2]]

     = sin(Tω/2)/(Tω/2)
従って、F(ω)は実数値であり(虚数部は 0)、これがそのまま(振幅)スペクトルになります。
なお、上式はSinc関数と呼ばれています。

 次に逆変換ですが、F(ω)が偶関数であることから、
  f(t) = 1/(2π)-∞ F(ω)e jωt
     = 1/(2π)-∞ F(ω)cosωt dω
     = 1/(2π)-∞ sin(Tω/2)/(Tω/2) cosωt dω
     = 1/π0 sin(Tω/2)/(Tω/2) cosωt dω

 Tω/2 = x と置くと、ω = 2x/T、dω = 2dx/T であるので、
  f(t) = 1/π0 sinx cos(2xt/T) / x (2/T)dx

     = 2/(πT)0 sinx cos(2xt/T) / x dx

ここで、次の積分公式(Peirce No.500):
  0 [sinx cosax / x] dx

   = π/2 ( |a| < 1 のとき)
     π/4 ( |a| = 1 のとき)
     0   ( |a| > 1 のとき)
を適用すると、a = 2t/T であるので( a = 1 は t = T/2 に相当)、
  f(t) = 1/T   ( |t| < T/2 のとき)
      1/(2T) ( |t| = T/2 のとき)
      0    ( |t| > T/2 のとき)
となり、(不連続点|t| = T/2を除いて)元の関数に戻ります。
ホーム