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

tgt

Advantages of ILNumerics

ILNumerics’ striking performance makes all advantages of the modern managed .NET framework available for the development and implementation of high performance algorithms into enterprise software.

  1. Improved maintainability: the code of numerical algorithms is more readable and future-proof, making it easier to maintain complex modules efficiently, even for large teams.
  2. Using Platform Invoke, .NET seamlessly connects with native modules written in traditional programming languages.
  3. Modern tools for .NET help to optimize code: Profilers, Code Analyzers, Refactoring Tools etc.
  4. .NET’s backend technologies (e.g. database- and network-connectivity) allow developers to integrate numerical modules into complex software architectures.
  5. There is excellent support for Graphical User Interfaces (GUIs) in .NET.
  6. In addition, algorithms developed with ILNumerics offer a wide platform support: they can be executed on both Windows and Linux architectures. MacOS, iOS and Android are on their way.

But that's not all! In addition to the convenience offered by .NET framework, ILNumerics provides its own set of advantages: intuitive array syntax; powerful visualization features; a large collection of built-in functions; the possibility of connecting to professional big data formats, and a seamless integration into Visual Studio.

 

Syntax

LNumerics extends regular .NET-languages with mathematical expressions,. based on the syntax used in popular mathematical prototyping software. This syntax makes it much easier to implement mathematical modules into application code: the code of mathematical prototypes can be used almost 'as is', and numerical algorithms become part of new software applications much faster than ever before.

Thus, ILNumerics’ intuitive syntax not only makes it easier to port mathematical algorithms from tools like Matlab® to .NET; it also offers new possibilities to use .NET as an integrated platform for both the design of mathematical algorithms, and their implementation into application software. Mathematical prototyping and application development merge into a single process.

 

A NAIVE KMEANS ALGORITHM IN ILNUMERICS

Interfacing Professional Data Formats

In order to handle large data in mathematical algorithms, developers need to import and export data to/from their development environment. .NET already brings flexible options: text, binary, SOAP, ODBC, and Office formats. ILNumerics adds interfaces for Matlab® .m files and HDF5 – the quasi industry standard for professional data exchange.

 

Built-In Functions

In order to make it easier to design individual algorithms, ILNumerics offers a large collection of frequently used numerical functions. These built-in functions include trigonometric functions, matrix decompositions, equation solvers, eigenvalues, efficient sorting, and integral transformations.

 

Visualization

Visualization is key to handling complex data. Enabling technical applications for interactive 3D visualizations is another frequently needed, but demanding, task. ILNumerics offers a powerful Visualization API which eases the implementation of complex interactive visualizations for Windows and Linux applications.

 

CAD MODEL IMPLEMENTED WITH ILNUMERICS
(MODEL BY STEPHANE BOUYE)
 

 

ILNumerics' scene graph harnesses a clear and efficient memory management to large, interactive, three-dimensional scenes; for hardware acceleration, OpenGL is used. DirectX is on the way.

 

ILNUMERICS ALLOWS THE CREATION OF HIGH-END PLOTS
WITH FLEXIBLE CONFIGURATIONS
 

 

One focus of the ILNumerics Visualization API is on scientific plotting: ILNumerics includes classes for 2D line plots (including markers, custom dash styles, legends); 2D and 3D contour plots, and surface and mesh plots. All visualizations can be conveniently exported to SVG or bitmap formats. Furthermore, users can assemble custom plots from the ILNumerics scene graph objects.

 

Visual Studio Integration

Visual Studio is possibly the most popular software for developing applications today. Used together with ILNumerics, it becomes an efficient tool for creating numerical software modules. Through ILNumerics’ extended debugging support, the profiles and content of mathematical algorithms can be inspected at run time.

 

DEBUGGING A NUMERICAL ALGORITHM IN VISUAL STUDIO

ILNumerics Ultimate VS extends Visual Studio by several unique tools. Our innovative Array Visualizer improves the debugging experience for big data algorithms and general scientific applications significantly. It allows to inspect the values of even large matrices and other data graphically and interactively during debugging.

 

Keeping the overview about large debug data further cuts down costs for development and maintenance.