Fast, stable and efficient numerical algorithms for .NET (C#, Visual Basic). Supports numpy and Matlab n-dimensional array style. Free trial licenses are available here: https://ilnumerics.net/download.html.
$ dotnet add package ILNumerics.ComputingThis package is part of ILNumerics Ultimate VS - a powerful framework for technical application development on .NET.
General info about ILNumerics: (specific info about this package are found at the end)
ILNumerics provides packages for the convenient authoring of:
ILNumerics is compatible with all .NET runtimes since .NET Framework 4.6.1., including .NET Core, .NET 8.0. and newer.
We've invested great effort to auto-translate and keep up to date the quasi standard algorithms for all computational routines, including linear algebra, FFT and optimization methods. These purely managed implementations are the first to bring professional robustness and precision to .NET. Hence, ILNumerics runs efficiently on any platform supported by .NET! Optionally, native libraries can be used to replace the managed default implementation. For the Windows platform, such native, optimized libraries are provided, too.
ILNumerics apps are typically much faster than alternatives: faster to implement and faster during execution. We've invented groundbreaking new auto-parallelization techniques which make full use of modern, parallel hardware with unseen automatic efficiency. Further, with ILNumerics the size of your data is not limited by the managed heap. ILNumerics n-dimensional Array<T> bridges the gap from high-level mathematical expressions down to native memory robustly, efficiently, and transparently. Moreover, it allows to connect your data to any 3rd party interface without hassle.
ILNumerics turns .NET into a first class numerical algorithm design platform. This package brings its convenient array based mathematical language. It is fully compatible to Matlab and numpy. Its algorithms run on any architecture supporting .NET. And its execution speed exceeds the speed of FORTRAN and any other sequential language - thanks to our groundbreaking Accelerator Compiler. You focus on the math - we do the rest!
reference the Computing Engine package in your project.
include the following 'using' directives (C#):
using ILNumerics;
using static ILNumerics.ILMath;
using static ILNumerics.Globals;
start writing your numerical codes:
Array<double> A = rand(5,2);
A = cos(A) + 2 * sin(A);
Console.WriteLine(A);
read the beginners guide and start implementing your algorithms!