フーリエ級数:第1回:フーリエ級数展開の心

皆さんテーラー展開はご存知だろう:$
f(x)=a_0+a_1x+a_2x^2+\cdots $。これは見方を変えて

\begin{eqnarray}
f(x)=\sum_{n=0}^\infty a_n\mathbf{e}_n~~~~(\mathbf{e}_n\equiv x^n)
\end{eqnarray}

と書き直してみると、ベクトルでよく登場する基底展開のように見える。ここで高校のベクトルを思い出してみよう。ベクトルの重要な性質は、

「2つのベクトルの和はベクトル」
「ベクトルの定数倍もベクトル」

という2つの性質である。これを抽象的に持ち上げたのが「ベクトル空間」という概念であるが、ここではそんな高尚な概念は必要ない。この2つの性質を満たすものが(取り敢えず)ベクトルである!と思ってもらって良い。さてベクトルには基底というものが取れたことを思い出そう。基底というものが取れるおかげでどんなベクトルもそれらの線型結合で書くことができ、議論がしやすくなったのだった。例えば以下の例を見て欲しい。

\begin{eqnarray}
\begin{pmatrix}
2\\
3\end{pmatrix}=2\begin{pmatrix}
1\\0
\end{pmatrix}
+3\begin{pmatrix}
0\\1
\end{pmatrix}
\end{eqnarray}

二次元ベクトルであれば、x軸方向を向いたベクトルとy軸方向を向いたベクトルで二次元内のベクトルを表現出来た。これはつまり、どんなに複雑に見えるものも、基底ベクトルというシンプルな基準の足し合わせで表現できてしまう、という事である。実はこの話しは関数にも拡張できるのだ。些細な違いと言えば任意のベクトルを表現するために$\underline{基底ベクトル}$が必要だったのに対応して、今の場合相手にするのが関数なので$\underline{基底関数}$のようなものが必要になる。この基底ベクトルというのがフーリエ級数でもポイントになる。

ここでは周期関数に話しを限ろう。周期関数というのは特徴的な性質を持っていて、以下の様な性質がある。例えば周期関数\(\sin xと\cos x\)は周期関数であるが

\begin{eqnarray}
2つの周期関数の和も周期関数&\rightarrow&(例)~\sin x+\cos xも周期関数\\
周期関数の定数倍も周期関数&\rightarrow&~(例)2\sin xも周期関数
\end{eqnarray}

が成り立つ。ここで先程の話しを思い出してもらいたいのだが、これは前述したベクトルの持つ性質と同じであることが分かるだろう。つまり周期関数という関数のグループはベクトルと同じ様な性質を持ってくれている。すると先程の議論で述べたようにベクトルには必ず基底が取れるので、それと同じ要領で周期関数にも”何かしらの基底”を取ることが出来るはずだ!こ”何かしらの基底”での展開こそがフーリエ級数と呼ばれるもので、どんな周期関数\(f(x)\)も実は次のように三角関数の和で書くことが出来る。

\begin{eqnarray}
フーリエ級数:f(x)=a_0&+&a_1\cos x+a_2\cos2x+\cdots\\
&+&b_1\sin x+b_2\sin2x+\cdots
\end{eqnarray}

因みに上の展開は周期\(2\pi\)の周期関数に関する展開の一例である。最初に例を見せておくといいかもしれないので、実際に凄さを見せておこう。\(y=x\)というような明らかに波とは程遠い関数も波の足し合わせで表すことが出来て、\(y=x\)のフーリエ級数を書くと

\begin{eqnarray}
x=2\sin(x)-\sin(2x)+\frac{2}{3}\sin(3x)-\cdots
\end{eqnarray}

の様に書ける。折角なので以下にそのグラフ画像を載せる。上から上記のフーリエ級数で第一項だけプロットしたもの、第三項までプロットしたもの、第五項までプロットしたもの、第七項までプロットしたもの、そして最後には第百項目まで足したものも載せてみた。下に行くにつれてどんどん精度が上がって行く様子が見て取れるだろう。

おまけ:工学的有用性
ここで難しい話しに入る前に何故フーリエ級数が有益か述べておこう。いい例が人間の耳と音声データの輸送である。人間の耳は音を空気の振動として感じている。振動と言うからには様々な周波数の波が重なり合って出来ているのだが、そもそも人間の耳というのは$13000Hz$以上になるとほぼ音を感じないと言ってもいい(モスキート音くらいが限界だろう)。低周波も同じである。ここである音声データ送ることを考えると、それを聞く人間は高周波・低周波を認識出来ないのだから、例えば15000Hzに相当するデータを送っても意味がない。ある意味で無駄が多いデータを送っていることになる。それならば最初から高周波・低周波側の情報を落として送るほうがエコであろう。そのためには元の音声データをフィルターに掛け、データを周波数ごとに分解するのが得策だろう。そうすれば、元の音声データにどれ位の高周波・低周波が入っているのかも分かるし、一度分解してしまえばその無駄な周波数を取り除くのも容易だろう。このように与えられた波のデータを周波数毎に分解する数学的な手法がフーリエ級数であり、このような工学的な側面からもフーリエ級数の重要性が伺える。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です