フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
webadm | 投稿日時: 2009-8-12 10:08 |
Webmaster 登録日: 2004-11-7 居住地: 投稿: 3086 |
【3】半波整流波のFourier級数展開 3つめの問題は正弦波を半波整流した波形をFourier級数に展開せよというもの。
こんな面倒なことを何故わざわざ苦労してと思うけど、いくつかこれをやらないと気が付かない発見がある。 半波整流波は y(t)=A*sin(ωt) (0≧t≧T/2) =0 (T/2≧t≧T) で表されるとすると、これは対称波でもなく偶関数でもなく奇関数でもない。 Fourier級数展開を y(t)=(1/2)b0+Σ(an*sin(nωt)+bn*cos(nωt))dt とすると b0=(2/T)∫y(t)dt =(2/T)∫A*sin(ωt)dt (0≦t≦T/2) +(2/T)∫0dt (T/2≦t≦T) =(2/ωT)*A*(1-cos(ωT/2)) ここで ωT=2π を代入すると b0=(2/2π)*A*(1-cos(2π/2)) =(1/π)*A*(1-cos(π)) =2*A/π また an=(2/T)∫y(t)*sin(nωt)dt =(2/T)∫A*sin(ωt)*sin(nωt)dt (0≦t≦T/2) +(2/T)∫0*sin(nωt)dt (T/2≦t≦T) ここで疑問なのは正弦波の半周期とその高調波の積の積分がどうなるかである。正弦波の全周期とその高調波の積の積分は0となることは承知の通りである。しかし今回は半周期である。 それぞれの高調波についてプロットしてみることにしよう。 半波整流波と二次の高調波の積をプロットしてみると wxplot2d([sin(t),sin(t)*sin(2*t)], [t,0,%pi])$ どうやらこれは積分は正と負が対称なので0になりそうである。 次ぎに三次の高調波の場合 wxplot2d([sin(t),sin(t)*sin(3*t)], [t,0,%pi])$ これは微妙だな。正の2つのこぶを足し合わせた面積が負の大きな凹みの面積と一致すれば積分は0となるはず。 wxplot2d([sin(t),sin(t)*sin(4*t)], [t,0,%pi])$ どうやら偶数次の高調波との積については積分は0になりそうである。 これはどうやって証明すればいいのだ? そのままanの定積分を計算すると an=(2/T)∫A*sin(ωt)*sin(nωt)dt (0≦t≦T/2) +(2/T)∫0*sin(nωt)dt (T/2≦t≦T) =(2*A/T)∫sin(ωt)*sin(nωt)dt (0≦t≦T/2) =(2*A/T)*(1/2ω)*(sin((n-1)*ωT/2)/(n-1)-sin((n+1)*ωT/2)/(n+1)) (n≠±1) =(A/ωT)*(sin((n-1)*ωT/2)/(n-1)-sin((n+1)*ωT/2)/(n+1)) ここで ωT=2π なので an=(A/2π)*(sin((n-1)*π)/(n-1)-sin((n+1)*π)/(n+1)) =0 (n≠±1) ということでn=1の場合は別途求める必要がある a1=(2/T)∫A*sin(ωt)*sin(ωt)dt (0≦t≦T/2) =(2*A/T)∫(1/2)*(cos(0)-cos(2ωt))dt =(A/T)∫(1-cos(2ωt))dt =(A/T)∫dt-(A/T)∫cos(2ωt)dt (0≦t≦T/2) =(A/T)*(T/2) =A/2 ということになる。 また bn=(2/T)∫y(t)*cos(nωt)dt (0≦t≦T) =(2/T)∫A*sin(ωt)*cos(nωt)dt (0≦t≦T/2) +(2/T)∫0*cos(nωt)dt (T/2≦t≦T) =(2/T)*((A/2ω)*(cos((n-1)*ωT/2)/(n-1)-cos((n+1)*ωT/2)/(n+1)-2/(n^2-1)) =(A/ωT)*(cos((n-1)*ωT/2)/(n-1)-cos((n+1)*ωT/2)/(n+1)-2/(n^2-1)) ここで ωT=2π なので bn=(A/2π)*(cos((n-1)*π)/(n-1)-cos((n+1)*π)/(n+1)-2/(n^2-1)) (n≠±1) =(A/2π)*((-1)^(n-1)/(n-1)-(-1)^(n+1)/(n+1)-2/(n^2-1)) (n≠±1) ここでnが偶数の場合 bn=(A/2π)*(-1/(n-1)+1/(n+1)-2/(n^2-1)) =(A/2π)*(-(n+1)/(n^2-1)+(n-1)/(n^2-1)-2/(n^2-1)) =(A/2π)*(-4/(n^2-1)) =(A/π)*(-2/(n^2-1)) (n=2,4,6,...) nが奇数の場合 bn=(A/2π)*(1/(n-1)-1/(n+1)-2/(n^2-1)) =(A/2π)*((n+1)/(n^2-1)-(n-1)/(n^2-1)-2/(n^2-1)) =(A/2π)*(2/(n^2-1)-2/(n^2-1)) =0 (n=3,5,7,...) ということになる。 一方n=1の場合は b1=(2/T)∫A*sin(ωt)*cos(ωt)dt (0≦t≦T/2) =(2/T)*(A/2ω)*(1-cos(ωT/2)^2) =(A/ωT)*(1-cos(ωT/2)^2) ωT=2π なので b1=(A/2π)*(1-cos(π)^2) =0 従って半波整流波のFourier級数展開は y(t)=(1/2)b0+Σ(an*sin(nωt)+bn*cos(nωt)) =(1/2)*(2*A/π)+(A/2)*sin(ωt)+(A/π)*((-2/3)*cos(2ωt)+(-2/15)*cos(4ωt)+(-2/35)*cos(6ωt)+...) =(A/2)*sin(ωt)+(A/π)*(1-(2/3)*cos(2ωt)-(2/15)*cos(4ωt)-(2/35)*cos(6ωt)+...) ということになる。 六次までの高調波を含めた級数式をプロットしてみると wxplot2d([(-(2*cos(6*t))/35-(2*cos(4*t))/15-(2*cos(2*t))/3+1)/%pi+sin(t)/2], [t,0,4*%pi])$ 半波整流波にかなり近づいている。 なかなか簡単そうに見えて簡単ではない。ましてIQの低いものにとっては躓きの材料満載である。(ほとんど三角関数と微分と積分のおさらいだってのは内緒だよ、判っている人は飛ばして先に進んでよろしい) この他に、T/4だけ位相をずらして波形を偶関数としてFourier級数を求める別解もある。偶関数だと基本波も高調波もすべて偶関数(cos)のみになることはもう知っているよね。 それ以外に全波整流波形と元の正弦波との重ね合わせとして半波整流波形を定義してFourier級数展開するという解法もある。 それらの別解は読者の課題としよう(´∀` ) P.S 著者の解を見ると2カ所不備がある。ひとつはanがn=1以外で一律0となる証明を省略している点。半周期なので全周期の積分とは厳密には異なる。2つ目はbnの式がn=1の場合には一部の分母が0となるため値が不定となるので、別途n=1の場合の式を立てて求めないといけないがそれをせずに一律nが奇数のときはbn=0としている点。 |
フラット表示 | 前のトピック | 次のトピック |
投稿するにはまず登録を | |