MxPlot.Extensions.Fft 0.0.5

dotnet add package MxPlot.Extensions.Fft --version 0.0.5
                    
NuGet\Install-Package MxPlot.Extensions.Fft -Version 0.0.5
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MxPlot.Extensions.Fft" Version="0.0.5" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MxPlot.Extensions.Fft" Version="0.0.5" />
                    
Directory.Packages.props
<PackageReference Include="MxPlot.Extensions.Fft" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add MxPlot.Extensions.Fft --version 0.0.5
                    
#r "nuget: MxPlot.Extensions.Fft, 0.0.5"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package MxPlot.Extensions.Fft@0.0.5
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=MxPlot.Extensions.Fft&version=0.0.5
                    
Install as a Cake Addin
#tool nuget:?package=MxPlot.Extensions.Fft&version=0.0.5
                    
Install as a Cake Tool

MxPlot.Extensions.Fft

Preliminary 2D FFT Support for MatrixData (Powered by MathNet.Numerics)

NuGet .NET License

πŸ“¦ About this Package

This package provides a thin wrapper around the 2D FFT functionality of MathNet.Numerics, enabling seamless integration with MatrixData<T>. It is designed to serve as a useful extension for users who require basic FFT capabilities within the MxPlot ecosystem. Although marked as preliminary, the design and API are already stable; remaining work may focus on performance tuning and potential bug fixes.

πŸ” Key Features

  • Uses MathNet.Numerics with native MKL acceleration on x64 platforms for maximum performance.
  • Automatically falls back to a managed 2D FFT implementation on non‑MKL environments (ARM, macOS, Linux).
  • Implements a mathematically consistent ShiftOption model with correct handling of odd-sized transforms.
  • Designed to preserve spatial origin semantics in MatrixData<T> during FFT/IFFT pipelines.
  • Guarantees identical ShiftOption semantics across MKL and managed backends.

πŸ› οΈ Math Kernel Library (MKL) Support and Fallback

When running on x64 Windows and you want the maximum FFT performance, you can enable Intel's Math Kernel Library (MKL) backend for MathNet.Numerics by installing the native runtime package:

dotnet add package MathNet.Numerics.MKL.Win-x64

This NuGet package provides the native MKL binaries for x64 Windows and lets MathNet.Numerics use the optimized MKL FFT implementations. Using MKL typically yields significant speedups for large 2D FFTs on x64 desktop/server CPUs.

If MKL is not installed, or when running on non-x64 architectures (ARM, macOS, Linux, etc.), the extension automatically falls back to MathNet.Numerics' managed FFT implementation. In that case the repository's own 2D FFT helper (managed implementation) is used transparently so that MatrixData<T> users do not need to change their code.

Note: the MKL package is optional β€” the extension works out-of-the-box with the managed backend.

πŸ‘‰ GitHub Repository: u1bx0/MxPlot

πŸ“Š Version History

For the complete changelog and version history, please visit the Releases Page on GitHub.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on MxPlot.Extensions.Fft:

Package Downloads
MxPlot

MxPlot: Multi-Axis Matrix Visualization Library for .NET. This project is currently under active development.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.5 27 2/22/2026
0.0.5-alpha 29 2/21/2026
0.0.4-alpha 36 2/17/2026