N88-BASICで波形
正弦波(Sine wave)を合成して
矩形波(Square wave)を表示しました
(4/π)Σsin{(2i-1)2πft}/(2i-1) (i=1,2,…,n)
で計算しています
正弦波の基音(k=1),3倍音(k=3),…を
それぞれk分の1(奇数分の1)にして合成します
k=2i-1(i=1,2,3,…,n)
4/π倍しているのは
基音の1/2波長までの山谷を書き
中心に注目すると
k=1( 山 )中心は山
k=3( 山谷山 )中心は谷
k=5( 山谷山谷山 )中心は山
k=7(山谷山谷山谷山)中心は谷
つまり振幅は
1/1-1/3+1/5-1/7… = Tan-1(1) = π/4 となる
ので4/π倍して正規化します
[ Tan-1(x) = Σ(-1)i-1/(2i-1)・x(2i-1) より
Tan-1(1) = Σ(-1)i-1/(2i-1)
= 1/1-1/3+1/5-1/7…
= π/4 ]
n = 5と500での計算結果を表示しています
NL-BASICとnl~.zip(hakei001.bas)は
以下のリンクからダウンロードできます
Readme.txtを読んで遊んで下さい