前のページから
|
Σは、「そういうのを全部足す」という記号ですから
am = (2/N) Σk=0N-1{ fk cos(2mpk/N) }
なら、
{ fk の値にcos(2mpk/N) をかけたもの }を
k=0 から k=N-1まで足して
am = (2/N){
f0cos(0) +
f1cos(2mp・1/N) +
f2cos(2mp・2/N) +
f3cos(2mp・3/N) + ... +
fN-1cos(2mp・(N-1)/N) }
最後にまとめて(2/N) をかける、というわけです。
|
いろんなmに ついても 考えてみる |
am = (2/N){
f0cos(0) +
f1cos(2mp・1/N) +
f2cos(2mp・2/N) +
f3cos(2mp・3/N) + ... +
fN-1cos(2mp・(N-1)/N) }
のm には 1, 2, 3, ... のような番号が入りますから
a1 = (2/N){
f0cos(0) +
f1cos(2・1p/N) +
f2cos(2・1p・2/N) +
f3cos(2・1p・3/N) + ... +
fN-1cos(2・1p・(N-1)/N) }
a2 = (2/N){
f0cos(0) +
f1cos(2・2p/N) +
f2cos(2・2p・2/N) +
f3cos(2・2p・3/N) + ... +
fN-1cos(2・2p・(N-1)/N) }
a3 = (2/N){
f0cos(0) +
f1cos(2・3p/N) +
f2cos(2・3p・2/N) +
f3cos(2・3p・3/N) + ... +
fN-1cos(2・3p・(N-1)/N) }
m=0 の時だけ、最初のとこが(1/N)
a0 = (1/N){
f0cos(0) +
f1cos(2・0p/N) +
f2cos(2・0p・2/N) +
f3cos(2・0p・3/N) + ... +
fN-1cos(2・0p・(N-1)/N) }
|
実例! N=4個のとき |
実例として、極端に少ないけど、4個で1セットのデータの場合をやってみましょう。
f0 | 5.5 |
f1 | -5.0 |
f2 | 5.3 |
f3 | -5.0 |
4個で1周期の間に、2山入る波が目立ってますね。振幅は5くらいみたいです。てことはa2=5くらいかな
全体がわずかに+にずれているので、多分a0も微妙にプラスでしょう。
個数 N は 4 なので
a0 = (1/4) {
f0 +
f1 +
f2 +
f3 } えっそれだけ? 単に平均してるだけじゃん。実際にデータ入れてみれば
a0 = (1/4) { 5.5 -5.0 + 5.3 -5.0 } = 0.2
a1 = (2/4){
f0cos(0) +
f1cos(2・1p/4) +
f2cos(2・1p・2/4) +
f3cos(2・1p・3/4) }
= (1/2){
f0cos(0) +
f1cos(p/2) +
f2cos(p) +
f3cos(3p/2) }
= (1/2){
f0cos(0) +
f1cos(90°) +
f2cos(180°) +
f3cos(270°) }
= (1/2){
f0 ・1 +
f1 ・0 +
f2 ・(-1) +
f3 ・0 }
= (1/2){
f0 -
f2 } ずいぶん簡単な姿に、、、
= (1/2){ 5.5 - 5.3 }
= 0.1
a2 = (2/4){
f0cos(0) +
f1cos(2・2p/4) +
f2cos(2・2p・2/4) +
f3cos(2・2p・3/4) ) }
= (1/2){
f0cos(0) +
f1cos(p) +
f2cos(2p) +
f3cos(3p) }
= (1/2){
f0 ・1 +
f1 ・(-1) +
f2 ・1 +
f3 ・(-1) }
= (1/2){
f0 -
f1 +
f2 -
f3 }
= (1/2){ 5.5 - (-5.0) + 5.3 - (-5.0) }
= 10.4
あれ!? 振幅は 5くらいのはずじゃなかったっけ、、、
実は
m=0 の時だけでなく、
m= N/2 の時も、最初のとこを(1/N)にしないといけなかったのです。
(理由はここ)
だから正しくは
a2 = (1/4){
f0cos(0) +
f1cos(2・2p/4) +
f2cos(2・2p・2/4) +
f3cos(2・2p・3/4) ) }
= (1/4){ 5.5 - (-5.0) + 5.3 - (-5.0) }
= 5.2
だったのです。
bmなら、単にcosのところをsinにするだけです。
こうして求めた
a0=0.2,
a1=0.1,
a2=5.2,
b1=b2=0 を, x = kd, T=Nd と一緒に最初の展開式
f(x)〜a0
+ a1 cos(2px/T)
+ a2 cos(4px/T)
+ b1 sin(2px/T)
+ b2 sin(4px/T)
に代入すれば、
元の波形を再現する式
f(x)〜0.2 + 0.1 cos(2pk/4) + 5.2 cos(4pk/4)
が得られます。
(この式のグラフを描いてみて、元のデータと合っているか見てね!)
|
|
N=8個の実例へ
m は何番までやればいいのか?
プログラムへ
|
|