Industrial Data Science
in C# and .NET:
Simple. Fast. Reliable.
 
 

ILNumerics - Technical Computing

Modern High Performance Tools for Technical

Computing and Visualization in Industry and Science

ILNumerics Quick Start 

How is ILNumerics distributed?

Since version 6 ILNumerics Ultimate VS is distributed as individual nuget packages and installed from nuget.org. There is no monolitic installer package anymore. This makes it really easy for you to start with ILNumerics: no installation required! 

  1. Uninstall any system-wide ILNumerics package, if any: version 4 or version 5 ? Uninstall it using Windows "Programs & Features" dialog. 
  2. Setup your seat.
    • Add the "ILNumerics Visual Studio Extension" from the Visual Studio Marketplace. You can add the extension directly from Visual Studio, using "Manage Extensions". Make sure to install the latest version matching the major version number of your ILNumerics packages / of your license. 
    • Get your license: free trial licenses can be downloaded from here.  
    • Open Visual Studio -> Tools -> Options -> ILNumerics -> Licenses 
    • Enter your license credentials (email address and license key) and click "Activate / Refresh".  (more)
  3. Create your project in Visual Studio. 
  4. Reference our packages using "Manage Nuget Packages". 
    • Install the required packages:

Which Packages do I need? 

ILNumerics Ultimate VS currently includes 18 nuget packages. However, in your project you will reference only a selection from the following packages. Which packages are required depends on your application: 

ILNumerics.Computing - required for writing numerical algorithms. This is the base package for the ILNumerics Computing Enigine. It ensures all features to be available on all .NET platforms! 

Windows, x64 targets: add the ILNumerics.Core.Native package. It provides optimized, native versions for common tasks, as LAPACK and FFT. They speed things up in the traditional way. 

ILNumerics.Accelerator.Command can be added to your computing project. This optimizes your code using the ILNumerics Accelerator compiler (prerelease). 

ILNumerics.numpy - this package is added by default. It gives full compatibility with numpy's NdArray for ILNumerics n-dimensional arrays.

ILNumerics.Toolboxes.* - several toolboxes for interpolation, optimization, statistics etc.

ILNumerics.IO.HDF5 - efficient high level, interface for the official HDF5 storage format. Runs on Windows and Linux (/x64). 

 

ILNumerics.Drawing - required for creating technical visualizations, charts and plots. This is the entry package for the ILNumerics Visualization Engine. This package will allow you to create static visualizations on any platform supported by .NET. 

ILNumerics.Drawing.Platforms - contains Windows specific controls for Windows.Forms app. All interactive apps reference this package to create fast, interactive visualizations with ILNumerics Visualization Engine, supported by OpenGL and/or GDI+. 

ILNumerics.Toolboxes.Drawing2 - more features and plot types for the Visualization Engine. 

Find a comprehensive list of all ILNumerics modules / packages here.

ILNumerics Compatibility 

Compatibility is one major achievement in version 6: ILNumerics is fully compatible with any platform .NET runs on. No restriction is imposed by native dependencies anymore. All required libraries have been transpiled from their respective FORTRAN repositories into managed code as exact replacements.   

Frameworks

ILNumerics packages multi-target .NET Framework (4.6.1) and .NET Standard (2.1). Hence, they can be used for legacy .NET applications, for .NET Core, and .NET 5 and all higher versions of .NET.

Algorithms 

Linear algebra, n-dimensional arrays, FFT, LVM ... ILNumerics brings the only reliable implementation in the managed world! Our algorithms are direct translations from accepted FORTRAN sources (LAPACK, FFTPACK, MINPACK). Therefore, ILNumerics finally fulfills an old promise: to execute your algorithms on any platform supported by .NET, without giving up on robustness nor precision.

Additionally, for Windows and Linux (x64) platforms one can utilize optimized native libraries (supported by MKL).

Visualizations

The interactive part of ILNumerics Visualization Engine relies on Windows.Forms, which currently is available on Windows desktop targets only. However, the base functionality (scene graph, all plots and 2d/ 3d visualizations, exports to images / svg) can be used on all platforms. 

Development

Currently, code with ILNumerics can be build on Windows. We recommend and support Visual Studio 2017 and higher.

Next steps:

License Activation

Create your first computing module

Create your first drawing module