スペクトル解析実習

練習 5

領域の端で一致しない分布を与えてスペクトルを計算してみましょう.

入力波形の変更

まず, データ点数を 64 にします.

NData = 64

入力に波数 4.5 の波を与えてみましょう.

do j = 0, NData-1
  x_Y(j) = 3.0d0 * sin( 2.0d0*PI/((DelX*dble(NData))/4.5d0)*x_X(j) )
end do

コンパイルと実行

コンパイルして実行してみましょう.

結果の確認

どのようなスペクトルが計算されたか確認してみましょう.

窓関数

スペクトル解析では窓関数を使うことがあります / 使います.

入力波形を与えた後で下のように窓関数をかけてスペクトルを計算してみましょう.

! 窓関数をかける
do j = 0, NData-1
  x_Y(j) = x_Y(j) &
    * ( 0.5d0 + 0.5d0 * cos( 2.0d0*PI/((DelX*dble(NData))*2.0d0)*(x_X(j)-x_X(NData/2) ) ) )
end do

窓関数をかける前とかけた後でスペクトルがどのように変わったか確認してみましょう.

スペクトルはなぜそのように変わったのか考えてみましょう.