Mathematica 9 is now available

Documentation / Mathematica / Mathematicaブック / Mathematicaを使った高等数学 / データの数値処理  /

3.8.4 フーリエ変換

データ解析でよく使われる標準的な解析手法に,フーリエ(Fourier)変換,またはスペクトル解析がある.フーリエ変換の基本は,特定の周波数点や帯域においてデータがどのような強度の信号成分を持つかを調べることにある.

フーリエ変換と逆変換

矩形波のデータを入力する.

In[1]:= {-1, -1, -1, -1, 1, 1, 1, 1}

Out[1]=

データをフーリエ変換する.結果には複素数が入る.

In[2]:= Fourier[%]

Out[2]=

逆フーリエ変換を行う.

In[3]:= InverseFourier[%]

Out[3]=

Fourierはデータの総数が2のベキ乗であるか否かにかかわらず機能する.

In[4]:= Fourier[{1, -1, 1}]

Out[4]=

データ数が200で,ランダムノイズを加えた周期信号データを生成する.

In[5]:= data = Table[ N[Sin[30 2 Pi n/200] + (Random[ ] - 1/2)],
{n, 200} ] ;

このデータを,そのままプロットするとランダムなように見える.

In[6]:= ListPlot[ data, PlotJoined -> True ]

Out[6]=

しかしフーリエ変換を施すと,の位置と,それに対称なの位置にピークが示される.これはもとの信号の周波数成分がの近くにあることを反映している.

In[7]:= ListPlot[ Abs[Fourier[data]], PlotJoined -> True,
PlotRange -> All ]

Out[7]=

Mathematicaでは長さのリストの離散フーリエ変換のデフォルトの定義は である.ゼロ周波数項は得られたリストの最初の位置にあることに注意する.

長さのリスト の逆離散フーリエ変換のデフォルトの定義はである.

科学技術分野では離散フーリエ変換の定義は分野によってさまざまな規約がある.MathematicaのオプションFourierParametersを使用して必要な規約を選択することができる.

さまざまな規約でのFourierParametersの典型的な設定

2次元フーリエ変換

Mathematicaでは,任意次元のデータのフーリエ変換が可能である.次元のデータは,深さがレベルでネストされたリストで指定する.2次元フーリエ変換は画像処理でよく使われる.



Any questions about topics on this page? Click here to get an individual response.Buy NowMore Information
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.