半区間展開

同義語:正弦級数余弦級数Fourier正弦級数Fourier余弦級数half-range expansionFourier sine seriesFourier cosine series半区間展開と境界条件

概要

半区間展開(half-range expansions)とは、半区間で与えられた関数を正弦または余弦の級数で表す方法である。奇延長と偶延長によって端点での収束先が変わり、固定端と自由端に対応する基底が選べる。熱の分布や弦の初期形状の展開に使われる。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: Fourier級数, 常微分方程式, 部分積分

区間 $(0,L)$ だけで与えられた関数を三角関数で表すとき、正弦級数と余弦級数の二つが使える。どちらも区間内部では同じ関数を表せるが、区間の外への延長と端での振舞いが違う。正弦は両端で零となり、余弦は両端で導関数が零となる。そのため、どちらを使うかは関数の偶奇だけでなく、解こうとする境界値問題の条件によって決まる。
例えば $f(x)=x$ を $(0,1)$ で与えると、正弦級数は $x=1$ で必ず零になる。これは計算の誤りではない。正弦級数が表す周期的な奇延長は、その端で $1$ から $-1$ へ跳び、和は左右の平均零になる。余弦級数では偶延長の値が端でつながるため、端でも元の値へ収束する。内部の一致と端の一致を区別すると、熱や弦の初期条件を展開する際の注意が明確になる。

半区間展開の定義

正弦展開と余弦展開

$L>0$ とし、$f$ は $[0,L]$ で区分的に連続とする。正弦展開と余弦展開の係数を
$$ B_n=\frac2L\int_0^Lf(x)\sin\frac{n\pi x}{L}\,dx\quad(n\ge1), \qquad A_n=\frac2L\int_0^Lf(x)\cos\frac{n\pi x}{L}\,dx\quad(n\ge0) $$
とする。対応する級数は $\sum_{n\ge1}B_n\sin(n\pi x/L)$ と $A_0/2+\sum_{n\ge1}A_n\cos(n\pi x/L)$ である。

係数はどちらも同じ $f$ の半区間での積分から定まるが、二つの級数が作る全直線上の周期関数は異なる。正弦展開は奇延長、余弦展開は偶延長のFourier級数である。この延長の規則を定義せずに「偶関数だから余弦」と言うのは不十分である。$(0,L)$ しか与えられていない段階では、負の側の値がなく、偶奇を判定できないからである。
正弦展開を使うからといって、元の $f$ の端の値を零と仮定する必要はない。係数は端の一点の値を変えても変わらず、区間内部の表現には影響しない。ただし、端も含めて一様に元の関数へ収束させたい場合には、$f(0)=f(L)=0$ が必要になる。境界条件に適合した初期値を選ぶことと、一般の半区間関数の係数を求めることは別の要求である。

境界条件から固有関数を選ぶ

固定端と自由端の固有関数

$-X''=\lambda X$ を $[0,L]$ で考える。両端Dirichlet条件 $X(0)=X(L)=0$ では、非零解が存在する固有値は $\lambda_n=(n\pi/L)^2$($n\ge1$)で、固有関数は $\sin(n\pi x/L)$ の定数倍である。両端Neumann条件 $X'(0)=X'(L)=0$ では、$\lambda_0=0$ に定数関数、$\lambda_n=(n\pi/L)^2$($n\ge1$)に $\cos(n\pi x/L)$ の定数倍が対応する。

まず固有値が実数かつ非負であることを確かめる。複素の $X$ に対して方程式に $\overline X$ を掛けて積分する。部分積分により
$$ \lambda\int_0^L|X|^2dx=\int_0^L|X'|^2dx-[X'\overline X]_0^L. $$
どちらの境界条件でも最後の項は零である。非零解の二乗積分は正だから、$\lambda$ は実数で $\lambda\ge0$ となる。従って複素や負の固有値を別に探す必要はない。
$\lambda=0$ なら $X=ax+b$ である。Dirichlet条件では $b=0$ と $aL=0$ により零解だけになる。Neumann条件では $a=0$ で、任意の非零定数が残る。次に $\lambda=\mu^2>0$ とすると、一般解は $X=a\cos\mu x+b\sin\mu x$ となる。Dirichlet条件では $a=0$、$b\sin\mu L=0$ であり、非零解には $b\ne0$ が必要だから $\mu L=n\pi$、$n\ge1$ を得る。
Neumann条件では $X'(0)=b\mu=0$ により $b=0$、さらに $X'(L)=-a\mu\sin\mu L=0$ により $\mu L=n\pi$、$n\ge1$ となる。各場合で係数は一つだけ自由に残るため、固有空間は一次元である。求めた関数を式と境界条件に代入すれば、列挙したすべての値が実際に固有値であることも分かる。$\square$

Neumann条件で定数関数を落とすと、一般の初期分布を表せなくなる。定数成分は平均温度や平均変位に対応する。Dirichlet条件の正弦系には定数モードがないが、だから平均のある関数を区間内部で展開できないというわけではない。正弦係数が無限個組み合わさって、内部では定数を表し、端では零になる。
境界条件が片方Dirichlet、片方Neumannなら、$X(0)=0$ により $X=b\sin\mu x$、$X'(L)=0$ により $\cos\mu L=0$ となる。そのため振動数は $\mu_n=(n+1/2)\pi/L$、$n\ge0$ である。この混合系は整数周波数の正弦系と異なる。両端条件のどちらかを変更したら、係数の公式だけでなく固有関数の周波数も変更する必要がある。

延長と収束を正当化する

半区間の級数が表す値

$f$ は $[0,L]$ で区分的に $C^1$ 級で、端に有限な片側極限を持つとする。正弦・余弦級数は $0< x< L$ で $(f(x+)+f(x-))/2$ に収束する。正弦級数の端の値は常に零で、余弦級数の端の和はそれぞれ $f(0+),f(L-)$ となる。$f$ が連続で $f(0)=f(L)=0$ なら、正弦級数は $[0,L]$ で一様に $f$ に収束する。余弦級数は $f$ が連続なら $[0,L]$ で一様に $f$ に収束する。

$0< x< L$ では $F_o(x)=f(x)$、$F_o(-x)=-f(x)$ とし、$F_o(0)=F_o(\pm L)=0$ と定めて周期 $2L$ で延長する。また $F_e(x)=f(|x|)$ を $[-L,L]$ で定めて周期的に延長する。端の一点の値は係数に影響しない。両延長とも有限区分で区分的に $C^1$ 級である。
Fourier級数 の定義「実数の形の Fourier 係数」と注意「周期が $2\pi$ でない場合」により、$F_o$ の余弦係数は零で、その正弦係数は def-hre-expansions の $B_n$ となる。$F_e$ の正弦係数は零で、余弦係数は $A_n$ となる。従って二つの級数は、この二つの延長のFourier級数そのものである。係数の偶奇に関する証明は既存の節を用い、ここでは延長の収束先を確認する。
内部の点では、延長の左右極限は $f$ の左右極限と同じである。Fourier級数 の系「区分的に $C^1$ 級の関数の各点収束」から、両級数ともその平均へ収束する。$F_o$ は零のまわりで極限が $-f(0+),f(0+)$、$L$ のまわりで $f(L-),-f(L-)$ だから、端での平均は零になる。各正弦項を端へ代入しても零であり、一致する。$F_e$ は両端で左右極限が同じなので、端の平均は元の片側極限になる。
$f$ が連続で端が零なら $F_o$ は継ぎ目を含めて連続となる。$f$ が連続なら $F_e$ も継ぎ目を含めて連続となる。そこで Fourier級数 の定理「連続で区分的に $C^1$ 級の関数の一様収束」を各延長に適用する。一周期での一様収束を $[0,L]$ に制限すれば、最後の二つの主張を得る。$\square$

値の連続性と傾きの連続性も区別する。奇延長が連続になるには両端の値が零であればよい。$f$ が $C^1$ 級なら奇延長の一階導関数は端でも左右が一致するが、二階導関数は符号が反転するので、二階まで滑らかにしたい場合には端の二階導関数も零にする。偶延長では値は自動的につながるが、一階導関数が符号反転するため、$C^1$ 級にするには $f'(0)=f'(L)=0$ が要る。

公式の表

条件・目的基底係数根拠
両端の値を零にする$\sin(n\pi x/L)$$B_n$thm-hre-eigenfunctions
両端の傾きを零にする$1,\cos(n\pi x/L)$$A_0/2,A_n$thm-hre-eigenfunctions
左の値・右の傾きを零にする$\sin((n+1/2)\pi x/L)$$\frac2L\int_0^Lf\sin((n+1/2)\pi x/L)$境界条件の計算、$n\ge0$
一般の内部での値を表す正弦または余弦対応する積分thm-hre-convergence
端まで正弦級数を一様収束させる正弦$B_n$連続・区分的 $C^1$・端の値零

三角関数の直交性は Fourier級数 の命題「三角関数系の直交性」を周期 $2L$ に移して用いる。$n\ge1$ の正弦・余弦の二乗積分は $L/2$ で、定数関数の二乗積分は $L$ である。余弦の零モードだけ規格化が違うことが、定数項を $A_0/2$ とする理由である。

計算の手順

  1. 空間区間と境界条件を先に書く。正弦・余弦・混合系のどれが境界条件に適合するかを thm-hre-eigenfunctions で選ぶ。
  2. 初期関数を区分的な式に分け、積分で係数を求める。区分点自身の値と片側極限を混同しない。
  3. 最初の係数を直接積分で確認する。正弦では $n=1$、余弦では $n=0,1$ を確認すると規格化の誤りを見つけやすい。
  4. thm-hre-convergence により内部と端の和を別に記録する。端で不適合な初期値を、端まで連続な解の初期値と見なしてはいけない。
  5. 熱方程式では各係数に減衰因子を掛け、弦では時間の余弦・正弦を掛ける。時間因子は境界条件を変えない。
  6. 無限和の項別微分は、その時間因子を含めた級数で正当化する。初期展開が収束することだけではPDEの解であることはまだ分からない。
    半区間展開を表の形で覚えるときも、なぜその基底を選んだかを一行で記録するとよい。端での値を固定する問題には正弦、流束や傾きを固定する問題には余弦という対応が基本だが、非斉次の境界条件にはそのまま適用できない。先に境界の値を担う定常関数を引き、残りの斉次境界条件へ展開を適用する。この手順は 変数分離法(偏微分方程式) で具体的に扱う。

例題

近似値は小数第6位までである。長さは $L=1$ とする。

一次式の二種類の展開

$f(x)=x$ を $0< x<1$ で表す。正弦係数は $B_n=2(-1)^{n+1}/(n\pi)$、余弦係数は $A_n=2((-1)^n-1)/(n\pi)^2$($n\ge1$)、$A_0/2=1/2$ である。第1係数は $B_1=2/\pi\approx0.636620$、$A_1=-4/\pi^2\approx-0.405285$ となる。

積分を開く

$2\int_0^1x\sin(n\pi x)dx=-2\cos(n\pi)/(n\pi)$。余弦では一回部分積分して$2(\cos(n\pi)-1)/(n\pi)^2$を得る。定数項は$\int_0^1x dx=1/2$である。


内部では両方が $x$ へ収束する。$x=1$ では正弦級数は零、余弦級数は $1$ になる。元の一次式の端の値を再現する目的なら余弦展開が適しているが、零温度境界の初期分布として内部だけを与える目的なら正弦展開も使える。

端で零になる二次式

$f(x)=x(1-x)$ では $B_n=4(1-(-1)^n)/(n^3\pi^3)$ となり、奇数 $n$ だけ残る。$B_1=8/\pi^3\approx0.258012$、$B_3=8/(27\pi^3)\approx0.009556$ である。端の値が零で、奇延長は周期的に $C^1$ 級となる。正弦級数は端を含め一様に $f$ へ収束する。
半区間展開の公式は LebDQ26 §4.4(pp. 218–220)にある。ここでは係数を二回の部分積分で求め、偶数係数の消失を $f(1-x)=f(x)$ の対称性からも確認する。中心に関する対称性と、負の側への奇延長の対称性は別のものなので、混同しない。

平均がある分布の余弦展開

$f(x)=x^2$ では $A_0/2=1/3$、$A_n=4(-1)^n/(n^2\pi^2)$ となる。$A_1=-4/\pi^2\approx-0.405285$ である。定数モードを除いた余弦級数の平均は零であるため、それだけでは $x^2$ を表せない。平均 $1/3$ を加えることが必要である。
偶延長は端で連続だが、右端で傾きの向きが反転する。従って余弦級数自体は一様収束しても、その項別微分が端で元の片側導関数 $2$ を再現するとは限らない。各余弦項の導関数は端で零であり、微分した級数が表すのは左右の傾きの平均である。

混合条件の第1モード

$X(0)=0$、$X'(1)=0$ の第1モードは $X(x)=\sin(\pi x/2)$ で、固有値は $\lambda=\pi^2/4\approx2.467401$ である。両端Dirichlet条件の第1固有値 $\pi^2$ より小さい。$X(1)=1$ なので、これは両端を固定する問題には使えない。値と傾きのどちらを零にするかで、許される最も低い振動数も変わる。

使える条件と反例

外す条件反例成り立たなくなること
端までの正弦一様収束の端条件$f=1$部分和は端で零、元の値との差は $1$
Neumannの零モード$f=1$ を非定数余弦だけで表すすべての係数が零になり平均を失う
境界条件に適合した基底混合条件に $\sin\pi x$右端の導関数が $-\pi$ で零でない
微分の接続条件$x^2$ の偶延長値の収束だけでは端の傾きを再現しない

定数関数の正弦係数は奇数 $n$ で $4/(n\pi)$、偶数では零となる。区間内部で和は $1$ に収束するが、端ではすべての項が零である。したがって $[0,1]$ での元の関数との差の上限は常に少なくとも $1$ であり、端まで一様収束することはない。端を除いた閉区間での収束を否定しているのではなく、端を含めた同じ関数への一様収束を否定している。
Neumannの零モードを忘れた反例は、係数の式から直接確認できる。$2\int_0^1\cos(n\pi x)dx=0$($n\ge1$)なので、非定数係数はすべて零である。残る $A_0/2=1$ を落とせば関数は零になってしまう。境界値問題での固有値 $0$ は、余分な例外ではなく、平均を保持するために必要な解の一部である。

端の適合条件を使い分ける

級数を初期分布として使う場合、端の不適合はどの意味の解を求めるかに関わる。熱方程式では $t>0$ で零境界を満たしつつ、$t\to0+$ では内部や二乗積分の意味で初期値へ近づく解を作れる。初期時刻の端で値が一致しない場合には、端と初期時刻を含む閉領域で連続な解とは呼べない。初期値の近づき方を明示すれば、この区別を保ったまま計算できる。
弦の振動では、奇延長の滑らかさが進行波の表現にも関わる。$f$ が $C^2$ 級で $f(0)=f(L)=f''(0)=f''(L)=0$ なら、その周期的奇延長は $C^2$ 級になり、平行移動した二つの波を直接微分して古典解を作れる。三角形の初期分布では角が残るため、同じ式でも区分的な解として扱う。この違いは 弦の振動 で詳しく説明する。
境界条件そのものが時刻によって動く場合にも、基底の各項が何を満たすかを先に確認する。固定した正弦系の各項は常に端で零であり、係数を時刻によって変えても非零の端の値は作れない。動く境界の値を別の関数に担わせ、残りを斉次境界で展開する必要がある。これは無限個の項を足せば何でも表せるという考えが、境界では通用しない具体例である。
係数の減衰は、延長後の滑らかさから予測する。$x(1-x)$ の奇延長は一階まで滑らかで二階に跳びがあるため、係数は $1/n^3$ となる。$x$ の奇延長は端に値の跳びがあり、係数は $1/n$ となる。$x^2$ の偶延長は値はつながるが傾きに跳びがあり、係数は $1/n^2$ となる。元の区間ではいずれも多項式であることからだけでは、この差を予測できない。
一次式の奇延長・偶延長と半区間の部分和 一次式の奇延長・偶延長と半区間の部分和
左の図は一次式の奇延長と正弦部分和、右の図は偶延長と余弦部分和である。区間内部では同じ一次式へ近づくが、端での和と延長された波形は違う。端に近い部分和の振れを見たら、まず係数の誤りを疑うだけでなく、延長した関数に跳びがあるかを確かめる。

よくある誤り

誤り正しくは理由
半区間の関数を最初から偶奇と呼ぶ延長規則を定める負の側が未定義
正弦級数は端の値も再現する端の和は零各正弦項が零
余弦の定数項を他と同じ規格化にする$A_0/2$ を用いる定数の二乗積分は $L$
混合条件で整数周波数を使う半整数周波数を使う右端の傾きの条件
元の多項式の滑らかさだけを見る延長後の継ぎ目も見る減衰を決める境界項

初期の形と端点の条件を分ける

半区間の関数の端の値と、選んだ固有関数の端の条件は、同じ情報ではない。正弦係数の積分は端点での一つの値を変更しても変わらない。しかし正弦の各項は端で零だから、端の値が非零の連続関数へ閉区間全体で一様に収束することはできない。係数を計算できることと、端点を含めて初期の形を再現できることを分けると、熱や弦の初期条件で起こる不整合を見つけやすい。
余弦系についても、各項の傾きが両端で零になることから、任意の展開の微分の和がその端で零になると結論してはいけない。元の関数が一様に再現されても、その微分の級数の一様収束は別の問題である。一次式の偶延長は連続だが、継ぎ目で傾きが跳ぶ。この例は値の再現に使える余弦級数であっても、端点での傾きまで同じように再現できないことを示す。
両端固定の滑らかな弦では、変位が零であるだけでなく、古典解の二階微分を端まで求める場合に追加の適合が必要になる。奇延長の一階微分は左右で同じになるが、二階微分は符号が反転するため、端点の二階微分が零であることが必要になる。元の関数のどの階数までを延長後に連続にしたいのかを決め、その階数までの左右極限を照合する。
混合境界では、同じ正弦という名前でも周波数が変わる。左で値を零にし、右で傾きを零にするなら、$\sin((n+1/2)\pi x/L)$ を使う。整数の番号の正弦は右端の値を零にするが、傾きは一般に零にしない。境界条件を満たす関数を図の見た目だけで選ぶのではなく、端で値と導関数を直接代入して確認する。
定数モードの有無は、保存される量とも結び付く。自由端の余弦系では定数関数が含まれ、平均を表すことができる。零値の固定端の正弦系には定数関数が固有関数として含まれない。熱の問題では、断熱端の平均温度が残ることと、両端を零温度にしたとき全体が零へ近づくことの違いに、この固有値零の有無が現れる。初期係数を計算するときに平均を落とすと、後の時間発展でもこの違いを失う。
区間の長さを変える場合は、形の係数と固有値をそれぞれ変更する。係数には $2/L$ の規格化が入り、固有値には $1/L^2$ が入る。座標を $x=L\xi$ とすれば積分は単位区間の形になるが、元の関数は $f(L\xi)$ へ変わる。同じ無次元の形を別の長さの区間へ伸ばした場合と、同じ多項式を別の長さで切り取った場合は、係数の依存の仕方が異なる。
半区間展開を採用する理由を記すときは、単に「計算が簡単だから」とせず、各項がどの境界条件を満たすかを示す。その後に係数の積分、級数の収束先、微分を許す条件を順に確認すれば、表から選んだ公式の適用範囲が明らかになる。計算の途中で別の基底に変更する場合にも、初期の形の係数を新しい内積で求め直す必要がある。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する