Topページ > 波形に変化を与える3
次は 偶数倍音列と奇数倍音列
|
波形に変化を与える(偶関数、奇関数2)
前回「波形に変化を与える(偶関数、奇関数)」は、偶関数、奇関数をウェーブシェーピングに使ってみると、偶関数は、偶数倍音を発生し、奇関数は奇数倍音を発生させるということでした。偶関数は、y軸対称のグラフだったりするので、「y=x^2」のような放物線もそうなんですが、cosθもそうだったりしますね。奇関数はx軸対称と、y軸対称を組み合わせたというか、原点を中心に180度の回転とも考えられるのですが、「y=x^3」のような曲線や、sinθもそうですね。
ところで、前回「波形に変化を与える(偶関数、奇関数)」の最後に書いた「y=x^2」のような偶関数でウェーブシェーピングすると、例えば、x=5の時に、y=25になるので、とても大きな振幅を持つ波形になります。また、yの最小値が0なので、振幅が常に正の範囲でしか変化しない波形になります。これを回避するために、式を「y=ax^2-b」として、グラフの位置をずらすといいかもですよね^^;。yの最小値を-5、最大値を5にするためには、「y=ax^2」が必ず(x、y)=(0、0)を通るというところから、「y=ax^2-5」とすればいいですよね。また、(x、y)=(5、5)も通るということで、それぞれを式に代入して「5=a*5^2-5」…式変形をして「a=10/25=0.4」となります。よって「y=0.4*x^2-5」という数式をウェーブシェーピングで使えば、振幅の範囲が-5≦y≦5となるような波形になってくれそうですね。
これを実際SynthEditの「Waveshaper2」に入れて440Hzのサイン波をウェーブシェーピングすると、その波形と周波数分布は、こんな感じになります。
- 数式「0.4*x^2-5」(偶関数)でウェーブシェーピングした時の波形と周波数分布 -
|
- 数式「0.4*x^2-5」(偶関数)でサイン波440Hzをウェーブシェーピングしたところです。
- 処理後の偶数倍音である、880Hzの音が発生しています。
- 2次関数だと2倍音、4次関数だと2と4倍音、6次関数だと2、4、6倍音という感じになり、
倍音の数が増えていくようです。
- 偶関数でウェーブシェーピングすると偶数倍音を発生します。
|
上はモジュール図なんですが、左の「Oscillator」モジュールから、440Hzのサイン波が供給されます。その下の「Scope2」モジュールがオシレータの波形で、440Hzのサイン波を表示していますね。「Waveshaper2」モジュールで数式「y=0.4*x^2-5」のウェーブシェーピングをして、その右にある「Scope2」モジュールに処理後の波形を表示しています。その波形をみると、振幅の範囲が-5≦y≦5におさまってますね。
周波数分布図ですが、880Hzの部分に音が一つあるだけですけど、これがウェーブシェーピングで発生した音です。偶数倍音なので、基音440Hzの倍の880Hzの音となります。「y=x^2」のような、2次関数だと2倍音、4次関数だと2と4倍音、6次関数だと2、4、6倍音という感じになり、倍音の数が増えていくようです。また、高次倍音になるに従って音量が小さくなります。
Copyright (C) FlawTips All Rights Reserved.
|
|
|