Excel VBA 数学教室ではアフィリエイトプログラムを利用して商品を紹介しています。

フーリエ級数

フーリエ級数

axb で定義された正規直交関数系
 {ϕ0,ϕ1,ϕn,}
を用意します。すなわちこの関数列は互いの内積について
 (A)(ϕm,ϕn)=abϕm(x)ϕn(x)dx=δmn
という関係を満たしています(* は共役複素数です)。ただし δmnm=n のときに 1, mn のときに 0 となることを意味するクロネッカーのデルタ記号です。このとき axb で定義された関数 f(x) をもってきて
 (B)f(x)=n=0cnϕn(x)
のように展開したとき(必ずしもできるとは限らない)、この展開式を フーリエ級数 といい、係数 cnフーリエ係数 とよびます。上式で ϕm との内積をとると、(A) より
 (f(x),ϕm(x))=n=0cn(ϕn(x),ϕm(x))=n=0cnabϕn(x)ϕm(x)dx=cm
となります。つまり係数 cnf(x)ϕn の内積
 (C)cn=(f(x),ϕm(x))
によって与えられます。そして任意の関数 f(x) に対して
 f(x)=n=0cnϕn(x)
のように展開できるとき、関数系 {ϕn} は完全(完備)であるといいます。つまり関数系 {ϕn} が完全であるということは、その系の中に任意の関数を展開できるできるだけのメンバーが揃っているかどうかということです。以上まとめると、

 axb で定義された関数 f(x) は完全な正規直交関数系 {ϕn} によって
f(x)=n=0cnϕn(x)と展開することができ、その係数 cn
cn=(f(x),ϕn(x))によって与えられます。

この表式が最も一般化されたフーリエ級数の定義です。選んだ関数系が完全であるかどうかという議論は難しいので、ここでは深入りしませんが、条件自体は簡単で
 (D)n=0ϕn(x)ϕn(y)=δ(xy)
が成り立つときに関数系 {ϕn} は完全となります。

複素フーリエ級数

完全な正規直交関数系には色々なものがありますが、普通は πxπ で定義された
 ϕn(x)=einx2π(n=0,±1,±2,)
という関数系を用います。つまり
 {,ei2x2π,eix2π,1,eix2π,ei2x2π,}
という系列です。この関数系はもちろん正規直交条件
 (ϕm,ϕn)=abϕm(x)ϕn(x)dx=δmn
を満たしています(計算して確かめてみてください)。πxπ で定義された任意の関数 f(x)
 f(x)=n=dneinx2πdn=ππf(x)einx2πdx
と展開できます。1/2π が2つあるので、それを係数 cn のほうにまとめてしまえば、
 (E)f(x)=n=cneinx(F)cn=12πππf(x)einxdx
とすっきりした形で表せます。これが普通によく見かけるフーリエ級数の表式です。

任意周期をもつ関数のフーリエ級数展開

f(x)πxπ に限定してしまうと応用範囲が狭いので、f(x) が一般の周期 2L をもつ関数の場合に書き直してみます。もちろん、このとき f(x) について
 f(x+2L)=f(x)
が成り立っています。ここで x=Lt/π という変数変換をほどこすと、
 h(t)=Ltπ
は周期 2π の関数となります。実際に確認してみると
 f(Lπ(t+2π))=f(Ltπ+2L)=Ltπ
確かに周期は 2π となっています。したがって h(t)
 h(t)=n=cneintcn=12πππf(t)eintdt
のようにフーリエ級数展開できます。変数を x=Lt/π に戻すと
 (G)h(t)=n=cnexp(inπxL)(H)cn=12LLLf(x)exp(inπxL)
という表式が得られます。関数 f(x) が実数であるときは、
 cn=cn
という関係が成り立ちます。つまり実関数のフーリエ係数は n が 0 以上のものを計算すれば、cncn の複素共役をとればよいことがわかります。

エクセルや数学に関するコメントをお寄せください