2012-05-17 4 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. Что для цикла используется для?

  2. Почему псевдокод только добавляет меньшие многочлены, не нужно ли их вычитать? (для вычисления A (-x)). Разве это не то, на чем основан алгоритм? Добавление и вычитание меньших многочленов для уменьшения точек в полу? *

  3. Почему оцениваются полномочия «w» в отличие от «x»?

Я не слишком уверен, если это принадлежит здесь, так как этот вопрос является довольно математической. Если вы чувствуете, что этот вопрос не соответствует теме, я был бы признателен, если бы вы перенесли его на сайт, где вы считали, что этот вопрос будет более уместным, а просто закрыв его.

* Псевдокод получен от Алгоритмы S. Dasgupta. Page 71.

ответ

0
  1. Цикл предназначен для рекурсии.
  2. Не нужно добавить для отрицательных x; БПФ преобразуется из пространства времени в частоту.
+0

Не могли бы вы расширить? У меня нет самой сильной основы в математике - что пришло время делать это и что такое частотное пространство? Обратите внимание, что у меня нет опыта с математическими преобразованиями/моделями Фурье. Это единственный опыт в этом. Во-вторых, рекурсия для чего? Не вызывает ли FFT на A_e и A_o рекурсию? – fdh

+2

Чувак, БПФ - это все о математике. Если вы этого не знаете, вы не можете понять алгоритм. Это помогает узнать, что такое преобразование Фурье - тригонометрические функции, комплексные переменные, небольшое исчисление. После этого вам нужно знать, почему дискретный алгоритм важен. Попросить кого-нибудь объяснить это вам здесь, без каких-либо предпосылок, это как попросить кого-нибудь рассказать вам, как стрелять ракетой на Луну, не понимая физики. – duffymo

+0

У меня есть некоторые знания в математике. Книга, содержащая вопрос, содержит лишь некоторую информацию о корнях единства и некоторую информацию о комплексных числах. Я предположил, что достаточно математики, чтобы ответить на вопрос, поскольку в книге больше ничего не говорится. Могли бы вы, возможно, использовать математику, ограниченную, однако, сосредоточив внимание на аспекте информатики, отвечая на вопрос? – fdh

Смежные вопросы