Detailed Features
QuickStart Samples
Sample Applications
Get it now!
Download trial version
How to Buy

"The de facto-standard library for linear algebra on the .NET platform is the Extreme Optimization Library."
  - Jon Harrop, author, F# for Scientists

"I have yet to see another package that offers the depth of statistical analysis that Extreme Optimization does, and I must say that I'm impressed with the level of service I've experienced."
  - Henry Oh, RBC Capital Markets

"I have made it my mission to institutionalize the value of good API design.  I strongly believe that this is key to making developers more productive and happy on our platform. It is clear that you value good API design in your work, and take to heart developer productivity and synergy with the .NET framework."
- Brad Abrams,
Lead Program Manager, Microsoft.

More testimonials

New Version 8.1!

Supports .NET 6.0. Try it for free with our fully functional 60-day trial version.

Get from Nuget


Fast Fourier Transforms (FFT's)

Whether you're using C#, Visual Basic (VB.NET), F#, IronPython, the Extreme Optimization Numerical Libraries for .NET make it easy to include FFT functionality in your .NET applications. The Extreme Optimization Numerical Libraries for .NET are a complete math, vector/matrix and statistics package for the Microsoft .NET framework. FFT features include:

  • Real 1D and 2D Fast Fourier Transform.
  • Complex 1D and 2D Fast Fourier Transform.
  • Special code for factors 2, 3, 4, 5, 7 and 11.
  • Real and complex convolution.
  • Choice of managed and native (32bit and 64bit) implementations.

Fast Fourier Transform classes

The classes that implement the Fast Fourier Transform functionality live in the Extreme.Mathematics.SignalProcessing namespace. The principal classes are:

  • FftProvider Provides access to a specific FFT implementation.
  • Fft Represents a one-dimensional (1D) discrete Fourier Transform implementation.
  • Fft2D Represents a two-dimensional (2D) discrete Fourier Transform implementation.
  • ComplexConjugateSignalMatrix Represents a complex matrix that is the Fourier transform of a real matrix.
  • ComplexConjugateSignalVector Represents a complex vector that is the Fourier transform of a real vector.

The Signal Processing section of the Mathematics Library User's Guide explains their use in detail.

Fast Fourier Transforms QuickStart Samples

Our library comes with a large number of QuickStart samples that help you to get started in minutes. The following samples illustrate how to use the FFT functionality:

Project Description View source
Illustrates how to compute the discrete Fourier transform of real and complex signals. C# VB.NET F#

Trial version

If you would like to evaluate the Extreme Optimization Numerical Libraries for .NET, you can download a free, fully functional 60-day trial version. In addition to the code samples discussed here, it includes about 70 other samples as well as complete documentation for the entire library.