A Polymorphic Radix-n Framework for Fast Fourier Transforms

  • Marcin Zalewski
  • Sibylle Schupp
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2890)


We provide a polymorphic framework for radix-n Fast Fourier Transforms (FFTs) where all known kinds of monomoporhic radix-n algorithms can be obtained by specialization. The framework is mathematically based on the Cooley-Tukey mapping, and implemented as a C++ template meta-program. Avoiding run-time overhead, all specializations are performed statically.


Fast Fourier Transform Discrete Fourier Transform Input Sequence Partial Evaluation Recursion Step 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cooley, J.W., Tukey, J.W.: An algorithm for the machine calculation of complex Fourier series. Math. Comp. 19, 297–301 (1965)zbMATHMathSciNetCrossRefGoogle Scholar
  2. 2.
    Dawes, B., Abrahams, D.: Boost,
  3. 3.
    Glück, R., Nakashige, R., Zöchling, R.: Binding-time analysis applied to mathematical algorithms. In: Dolezal, J., Fidler, J. (eds.) System Modelling and Optimization, pp. 137–146. Chapman & Hall, Boca Raton (1995)Google Scholar
  4. 4.
    Lawall, J.: Faster Fourier transforms via automatic program specialization. In: Hatcliff, J., Mogensen, T., Thiemann, P. (eds.) DIKU 1998. LNCS, vol. 1706, pp. 338–355. Springer, Heidelberg (1999)Google Scholar
  5. 5.
    Musser, D., Stepanov, A.: Algorithm-oriented generic libraries. Software-practice and experience 27(7), 623–642 (1994)CrossRefGoogle Scholar
  6. 6.
    Veldhuizen, T.L.: C++ templates as partial evaluation. In: Partial Evaluation and Semantic-Based Program Manipulation, pp. 13–18 (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Marcin Zalewski
    • 1
  • Sibylle Schupp
    • 1
  1. 1.Dept. of Computer ScienceRensselaer Polytechnic Institute (RPI)Troy

Personalised recommendations