piątek, 30 czerwca 2017

universal mixed radix-2-3-4-5-7-11 inverse iFFT standard version

Mixed-Radix FFT/iFFT with Phase Shift


https://github.com/rewertynpl/mixed-radix-iFFT

A flexible, open-source C++ implementation of the Mixed-Radix Fast Fourier Transform (FFT) and its inverse (iFFT). Designed for educational purposes, it supports signals of arbitrary composite lengths and includes a unique phase-shift feature.

📖 About The Project

This project provides a standalone C++ implementation of the Mixed-Radix Cooley-Tukey algorithm. Unlike standard Radix-2 FFTs, which require the signal length to be a power of two (2n), this algorithm supports any length N that can be factorized into a product of small prime numbers.

The code is written to be explicit and verbose, serving as a learning tool to demonstrate how "butterfly" computations work for various radixes.

Key Features

  • Mixed-Radix Support: Works with any signal length N factorizable into implemented radixes.
  • Wide Radix Base: Native support for Radix-2, 3, 4, 5, 7, 11, and a generic implementation for primes up to 97.
  • Phase Shift (fi): A unique global parameter allowing for circular signal shifting directly within the frequency domain transform.
  • Verification: Includes a generic O(N2) DFT implementation for accuracy verification.
  • License: MIT License.

Brak komentarzy:

Prześlij komentarz