[07-5 Code] Fastest FFT code for Java
This page introduce very fast FFT code for Java. It will execute FFT calculation for 64 kBytes input data in 10ms. Execution result of Test_FFFT class ** test_simple_fft ** 8.0, 0, -2.0+4.82842712474619i, 0, 0, 0, -2.0+0.8284271247461898i, 0, 0, 0, -1.9999999999999998-0.8284271247461898i, 0, 0, 0, -1.9999999999999993-4.82842712474619i, 0, ** test_measure_time ** Execution Time(32kB): 5ms [0]17.4..
07-3. 엑셀에서 FFT 계산하기 (엑셀 자체 FFT 기능)
엑셀에는 FFT 계산을 할 수 있는 기능이 있다. 디폴트 기능으로 오픈되어 있는 것은 아니고, 사용할 수 있도록 몇 가지 설정을 하면 FFT 계산을 할 수 있다. 엑셀에서 FFT 기능 활성화 하기 1. 엑셀 메뉴에서 "파일 - 옵션" 선택하고, "추가 기능"에서 "관리" 부분에서 'Excel 추가 기능'에 대해 "이동" 클릭 2. "추가 기능"에서 "분석 도구 - VBA"를 체크하고 "확인" 버튼 누른다. 이제 엑셀에서 FFT 함수를 사용할 수 있다. 엑셀에서 FFT 기능 사용해서 값 구하기 $y(n)={0,0,0,0,1,1,1,1}$에 대해 FFT를 수행해서 푸리에 변환값 $Y(k)$를 구해보자. 1. $y(n)$값을 아래와 같이 엑셀에 입력한다. 2. 엑셀 메뉴에서 "데이터" 선태하고, 우측 상단에 ..
07-2. FFT 예제를 손으로 풀어보며 이해하기
$y(n)={0,0,0,0,1,1,1,1}$인 값에 대해 FFT 수식을 이용해서 단계별로 손으로 문제를 풀듯이 계산해보자. 먼저 이 값을 DFT 수식을 이용해서 엑셀에서 구해보면 다음과 같다. $$ DFT: \; \; Y(k)=\sum_{n=0}^{N-1}{y(n)e^{-i\frac{2\pi}{N}kn}}, \; \; 0\leq k < N \tag {1} $$ $$ IDFT: \; \; y(n) = \frac{1}{N} \sum_{k=0}^{N-1}Y(k) e^{i\frac{2\pi}{N}kn}, \; \; 0 \le n < N \tag{2} $$ FFT를 이용해서 구해보자. FFT의 수식은, $$ \begin{align}Y(k) = P(k) + W^kQ(k), \; &0 \le k \le {\frac{..