라고 하는게 맞는진 모르겠지만
500개의 데이터를 1초에 샘플링 할 경우
500개의 데이터를 넣냐
100개의 데이터를 넣냐에 따라 나오는결과가 달라지는데 이걸 어떻게 해석하냐에 대한 내용
input data
for ( i = 0; i < n; i++ )
{
in[i] = ( double ) sin ( 2.0f * PI * (double)(i * 10) / n);
}
|
500 에 10 주기 니까 500SPS일 경우 10Hz에 peak가 떠야 한다.
500개를 다 넣으면 10Hz 에서 peak가 뜬다.
같은 애를 x축 크기만 조정해서 출력하면 아래처럼 보인다. (오른쪽은 왼쪽의 그래프를 X축에 대해서 5배 확대한 것)
100개만 넣어서 돌리면, 값은 50개만 나오고(100/2+1) peak는 2에서 나온다.
같은 애를 x축 크기만 조정해서 출력하면 아래처럼 보인다. (왼쪽은 오른쪽의 그래프를 X축에 대해서 1/5배로 축소한 것)
상관관계로 보면
샘플링 속도는 동일하고
데이터 갯수가 1/N 만큼 줄어들면
원래 주파수로 환원하기 위해서는 *N을 해야 한다.
위의 경우 1/5 였으니까
주파수는 *5를 해야 정상적으로 나오고
다르게 해석하면 5Hz 의 RBW로 분석 주파수 해상도가 낮아졌다 라고 표현하면 될 듯.
'프로그램 사용 > fft, fftw' 카테고리의 다른 글
pffft fft / ifft 테스트 (0) | 2024.08.01 |
---|---|
fft 결과에 N(입력 샘플 갯수)로 나누는 이유 (0) | 2023.09.21 |
tek.com fft 관련 문서 (0) | 2023.07.19 |
sfft (0) | 2023.07.12 |
fft window type과 진폭 보정계수 (0) | 2023.07.04 |