2012-05-17 2 views
0

다음 코드의 목적은 다항식을 홀수와 짝수로 나눈 다음 더 작은 다항식에서 재귀 적으로 계수 표현에서 값 표현으로 변환하는 것입니다.고속 푸리에 변환 의사 코드?

function FFT(A, w) 

Input: Coefficient representation of a polynomials A(x) of degree ≤ n-1, where n 
is a power of 2w, an nth root of unity. 

Output: Value representation A(w^0),...,A(w^(n-1)) 

if w = 1; return A(1) 
express A(x) in the form A_e(x^2) and xA_o(x^2) /*where A_e are the even powers and A_o 
the odd.*/ 
call FFT(A_e,w^2) to evaluate A_e at even of powers of w 
call FFT(A_o,w^2) to evaluate A_o at even powers of w 
for j = 0 to n-1; 
    compute A(w^j) = A_e(w^(2j))+w^j(A_o(w^(2j))) 

return A(w^0),...,A(w^(n-1)) 
  1. for 루프는 무엇을 사용하고 있습니까?

  2. 의사 코드가 더 작은 다항식 만 추가하는 이유는 무엇입니까? (A (-x)를 계산하기 위해). 그게 알고리즘이 완전히 기반이 된 것이 아닌가? 반으로 포인트를 줄이기 위해 작은 다항식을 뺀 추가? *

  3. 이유는 "w"의 능력을 평가하고있다 "X"에 반대? 문제는 매우 수학적 때문에이 여기에 속하는 경우

나는 너무 확실하지 않다. 이 질문이 주제와 다르게 느껴지면,이 질문이 더 적절할 것이라고 생각한 사이트로 이동 한 경우 감사하게 생각합니다.

* Psuedocode는 알고리즘에 의해 S. Dasgupta로부터 획득되었습니다. 페이지 71.

답변

0
  1. 루프는 재귀를위한 것입니다.
  2. 음수 x를 추가 할 필요가 없습니다. FFT는 시간 공간에서 주파수 공간으로 변환합니다.
+0

확장 할 수 있습니까? 나는 수학에서 가장 강력한 기반을 가지고 있지 않습니다. 시간이 이것과 관련이 있고 주파수 공간은 무엇입니까? 수학 푸리에 변환/모델에 대한 경험이 없습니다. 이것 만이이 경험입니다. 둘째, 무엇을위한 재귀? A_e와 A_o에서 FFT를 호출하면 재귀가 수행되지 않습니까? – fdh

+2

야, FFT는 모두 수학에 관한거야. 모르는 경우 알고리즘을 이해할 수 없습니다. 푸리에 변환이 무엇인지 알 수 있습니다 - 삼각 함수, 복잡한 변수, 작은 미적분. 일단 그렇게하면 분리 된 알고리즘이 중요한 이유를 알아야합니다. 배경 지식없이 누군가에게 당신에게 설명해달라고 부탁하는 것은 물리학을 이해하지 않고 달에 로켓을 쏘는 법을 누군가에게 묻는 것과 같습니다. – duffymo

+0

나는 수학에 대한 지식이있다. 질문을 담고있는 책은 단결의 뿌리에 대한 정보와 복소수에 관한 정보를 제공합니다. 나는 그 책이 다른 것을 언급하지 않기 때문에 질문에 대답하기에 충분한 수학을 가정했다. 질문에 대답하면서 컴퓨터 과학 측면에 초점을 맞추면서 수학을 제한적으로 사용할 수 있습니까? – fdh