Table of Contents
빠른 포니어 트랜스폼(FFT)은 분산 포니어 트랜스폼(DFT)을 컴퓨팅하는 효율적인 알고리즘입니다. Cooley-Tukey 알고리즘은 FFT를 구현하는 가장 일반적인 방법이며, DFT의 반복적인 탈중앙화에 의존합니다. 수학 기반을 이해하는 것은 알고리즘을 효과적으로 활용하고 적용하는 데 도움이됩니다.
FFT의 수학 기초
DFT는 복잡한 숫자의 순서로 주파수 구성 요소로 변환합니다. 그것은 다음과 같이 정의됩니다.
X(k) = ∑]n=0 ]N-1] x(n) e]-2πi kn/N]]]
여기서 x(n)는 입력 순서, X(k)는 주파수 구성 요소이며, N는 순서 길이입니다.
Cooley-Tukey Algorithm의 파생
Cooley-Tukey 알고리즘은 DFT를 더 작은 DFT로 정의하여 순서도와 확률로 분배합니다.
X(k) = ∑n=0 ]N-1] x(n) e]-2πi kn/N]
rewritten는 다음과 같이 일 수 있습니다:
n=0]]N/2-1x(2n)e-2πi 2n k/N + e]-2πi k/N ∑]]LT=0]]]]]]]]]]]]]]]]]]]]]]]]]]][FLT:
이 분리는 O(N2)에서 O(N log N)로 계산된 복잡성을 줄이기 위해 더 작은 DFT의 반복적인 계산을 허용합니다.
Algorithm 신청
FFT 알고리즘은 크기 1의 기본 케이스까지 반복적으로 반복적으로 반복적으로 재발성 분해를 적용합니다. 결과는 복잡한 폭발적인 용어 인 twiddle Factor를 사용하여 결합됩니다.
WN(k) = e-2πi k/N
이 요인은 재조합 중에 더 작은 DFT의 단계를 조정하여 전체 변환의 효율적인 계산을 가능하게합니다.