예제: Chirp z 변환
Chirp Z 변환은 샘플링한 신호의 스펙트럼을 구한 후 작은 주파수 간격 전체에 대해 균일한 간격의 주파수 값에서 보간합니다.
사용되는 알고리즘은 Signal Processing Algorithms(Prentice-Hall, Inc.)에서 Samuel Stearns와 Ruth David가 설명한 Chirp Z 변환입니다.
신호 생성
1. 신호 주파수를 정의합니다.
2. exp 및
sin 함수를 사용하여 감쇄하는 싸인파 신호를 정의합니다.
감쇄하는 싸인파 신호는 0으로 감쇄하는 지수 함수와 시간 및 싸인파 함수의 곱입니다.
3. 감쇄하는 신호를 도표화합니다.
주파수가 정규화되므로 샘플링 주파수가 1입니다.
4. dft 함수를 사용하여 신호의
DFT를 계산합니다.
5. 신호의 DFT를 도표화합니다. 세로 마커를 표시하여 첫 번째 피크의 크기와 주파수를 표시합니다.
지수 스펙트럼과 컨볼루션된 싸인파의 주파수에서 피크가 발생합니다.
6. x축 방향으로 주파수 배율을 확대하여 첫 번째 피크를 확대합니다.
7. 주파수 범위 내의 데이터 점 수를 계산합니다.
chirpz
chirpz 함수를 사용하여 데이터 점 수를 늘리고 피크 주위의 스펙트럼을 더 세밀하게 살펴봅니다.
1. 단계 매개변수를 설정하고 chirpz 함수를 사용하여 스펙트럼을 계산합니다.
2. 보간된 스펙트럼의 점 수를 계산합니다.
3. DFT의 첫 번째 피크와 새로운 범위를 사용하는 보간된 스펙트럼을 중첩시킵니다.
0.001의 단계를 사용하면 Chirp z 그래프선에서 동일한 데이터 점 수가 구해지므로 두 그래프선이 동일하게 나타납니다.
4. 단계 크기를 10분의 1로 줄인 다음 두 함수를 다시 계산하고 도표화합니다.
5. 보간된 스펙트럼의 새 점 수를 계산합니다.
6. DFT의 첫 번째 피크와 새로 보간된 스펙트럼을 중첩시킵니다.
도표는 보간된 점 수가 증가하며 스펙트럼 그래프선이 피크 주변에서 더 둥글게 되었음을 보여줍니다.
7. step2를 다시 10분의 1로 줄이고 위 도표에서 효과를 관찰합니다.