"실용적인 응용 프로그램이 있습니까?" 적어도 코드를 확인하고 오류를 바인딩해야합니다.
"이론에서는 이론과 실제가 일치합니다. 실제로는 그렇지 않습니다." Matt의 대답에 따라 수학적으로는 아닙니다. (이미 답변 된대로), 에프( F( x ( t ) ) ) =x(−t) (최대 잠재적 인 배율). 그러나 위의 방정식은 일반적으로 이산 푸리에 변환과 빠른 아바타 FFT를 통해 구현되므로 계산에 유용 할 수 있습니다.
첫 번째 이유는 다른 사람 또는 라이브러리에 의해 코딩 된 푸리에 구현이 데이터에서 수행해야하는 작업을 수행하는지 확인하려는 의지에서 비롯됩니다. 샘플 순서, 스케일링 계수, 입력 유형 (실제, 비트 심도)의 제한 또는 길이는 FFT와 같은 푸리에 구현에 대한 잠재적 인 후속 오류의 원인입니다. 따라서 온 전성 검사로서 구현 된 버전이 적어도 대략 이론적 인 속성을 상속하는지 확인하는 것이 좋습니다. 보시다시피, Machupicchu에서 볼 수 있듯이 실제 입력이 반대로 복구되지는 않습니다. 종종 가상 부분이 정확히 0이 아니며 실제 부분이 예상되는 부분이지만 컴퓨터의 불완전한 계산 으로 인해 상대적 오류가 작습니다. 기계 의존 공차 내 (부동 소수점). 이것은 다음 그림에서 볼 수 있습니다. FFT는 랜덤 32- 샘플 신호에 두 번 적용되고 플립됩니다. 보시다시피 배정 밀도 부동 소수점을 사용하면 오류가 적습니다.
오류가 상대적으로 작지 않으면 사용하는 코드에 실수가있을 수 있습니다.
두 번째는 단층 촬영과 같이 엄청난 양의 데이터 또는 대량의 반복 FFT 계산과 관련이 있습니다. 거기에서, 이전의 작은 상대 오차는 누적되고 전파 될 수 있으며, 심지어 계산의 발산 또는 오차를 유발할 수 있습니다 . 이것은 다음 그림에서 볼 수 있습니다. 그렇게하지 않은 긴 신호를 들면 엑스0 ( 1 전자 6 : 샘플), 우리는 다음 반복을 수행 엑스k + 1= R e ( f( f( f( f( x케이) ) )))
에프최대 | 엑스케이− x0|
보시다시피, 신호의 크기 때문에 오류의 크기 순서가 변경되었습니다. 또한 최대 오차는 꾸준히 증가합니다. 회 반복 한 후에 는 충분히 작습니다. 그러나 -voxel 큐브와 수백만 반복하면이 오류는 무시할 수 없을 것입니다.10001000 × 1000 × 1000
오류의 경계를 정하고 반복에 대한 동작을 평가하면 이러한 동작을 감지하고 적절한 임계 값 또는 반올림을 통해이를 줄일 수 있습니다.
추가 정보: