Signal Analysis for .NET

The Fast Fourier Transform (FFT) is a core algorithm for many forms of signal analysis. This library provides a robust and general implementation that can handle vectors of any length, even ones that are not powers of two.

In order to transform arrays of complex numbers, this library also implements an efficient and reusable complex number type.

The library is written in 100% managed C# to provide the platform-independence and reliability of managed code.

Only £99

Only £199

Fast

The FFT implementation in this product is much faster than some implementations found in more expensive commercial products like the $395 TransformNET software from Windale Technologies:

Specifically, our implementation maintains optimal O(n log n) complexity for all n, allowing you to transform large data sets without having to worry about performance.

Easy to use

A simple 5-point transform can be calculated in only a few lines of code, as the following self-contained C# program demonstrates:

using FlyingFrog;

namespace CSFFTTest
{
  class Program
  {
    static void print(Complex[] a)
    {
      foreach(Complex z in a) System.Console.Write(Complex.Chop(z) + " ");
      System.Console.Write("\n");
    }
    
    static void Main(string[] args)
    {
      Complex[] a = new Complex[5];
      a[1] = 1;
      a[4] = -1;
      System.Console.Write("a = ");
      print(a);
      FFT.fourier(a);
      System.Console.Write("fourier(a) = ");
      print(a);
      FFT.ifourier(a);
      System.Console.Write("ifourier(fourier(a)) = ");
      print(a);
    }
  }
}

This program produces the following output:

a = 0 1 0 0 -1
fourier(a) = 0 1.90211303259031i 1.17557050458495i -1.17557050458495i -1.90211303259031i
ifourier(fourier(a)) = 0 5 0 0 -5

Our Signal Analysis for .NET library allows you to compute Fourier transforms faster, easier and cheaper than before!

(Note: We are not VAT registered and, therefore, cannot provide VAT receipts)

Mastercard VISA VISA Delta VISA Electron VISA Purchasing JCB Solo Switch