ILNumerics comes as an Microsoft Installer package which must be installed on a Windows machine. Administrative rights are required for the installation. The installer creates an installation directory on your machine. It contains:
- All binaries needed for the development with ILNumerics
- A documentation folder with a PDF version of the ILNumerics Online Documentation and a CHM file with the class documentation.
- A folder 'Distribution Files' containing all binary files you need for the distribution of own applications developed with ILNumerics.
In addition to that, ILNumerics installs the several assemblies and toolboxes into the GAC. All supported versions of Microsoft Visual Studio which are found at the time of installation will get extended by ILNumerics Ultimate VS. Supported Visual Studio versions are: 2013, 2015, 2017.
Installing Upgrades and Updates
Since version 4.8: if you have started with the trial version of ILNumerics Ultimate VS, you do not need to manually uninstall the trial version and reinstall the full version of ILNumerics Ultimate VS. Instead you can keep working with the version installed. Simply follow the instructions how to activate your seat below.
If you obtained an update, any previous installation of the same major version will get automatically uninstalled. Versions with a smaller major version number must be manually uninstalled before installing the new major version!
After the installation of a new package existing projects which reference the old uninstalled version must be modified: update the list of references to use the newly installed ILNumerics assemblies instead of the older uninstalled ones.
Depending on the new version you may have to adopt the target framework version of your project, too.
ILNumerics' assemblies are found in the Extensions tab of the Visual Studio 'Add Reference' dialog.
Up from version 4.8 all ILNumerics assemblies of the same release share the same version. The most important version information for every assembly:
Assembly version: [Major].[Minor].0.0
File version: [Major].[Minor].[BuildDate].[Revision]
Patches are released with the same [Major].[Minor] version. This simplifies updates of your projects since the assembly version remains the same. Minor or major updates require manual update of the project references.
While in pre-4.8 versions, one may decided not to use a specific version for a project reference, this is no longer necessary. You can target a specific version of the ILNumerics binaries if you do not want your project to automatically use the most up to-date version. (Most projects will not require this and should NOT target a specific version, though):
If you know ILNumerics from the beginning you may remember those huge monolithic ILNumerics.dll (6MB) the library was once made out of. This is gone. Today we provide smaller independent modules. For you this brings the advantage of having to deploy fewer MB to your customers. And we are able to license smaller parts of the ever growing functionality of ILNumerics - individually and independently. Smaller parts cost less, so you pay only for what you really need.
Following modules exist currently:
|ILNumerics.Core||This is the core package. It hosts common types, arrays, enums and delegates and is always needed! The Core package comes as a free add-on to any purchased module.|
|ILNumerics.Computing||The main Computing Engine. This hosts the ILMath, sorting and FFT stuff - most of the basic (built-in) functions. This module is needed by many of the higher level toolboxes.|
|ILNumerics.numpy||numpy semantics for arrays: basic and advanced indexing, 0-dimensional arrays, useful extension methods on numerical arrays... this module realizes compatibility to numpy's arrays.|
|ILNumerics.Drawing||The Visualization Engine. If you create fancy, interactive visualizations this is going to be your friend. The Visualization Engine can be licensed independently. You do not need to license the Computing Engine unless you need it for your ... well: computing stuff.|
|ILNumerics.IO.HDF5||The convenient ILNumerics way of interfacing HDF5 files efficiently.|
|ILNumerics.Toolboxes.MachineLearning||Machine learning functions like knn, em, kmeans, ridge_regression and more are found in here.|
|ILNumerics.Toolboxes.Statistics||Important statistical functionality, like cov, var, mvrpd and popular distribution classes.|
|ILNumerics.Toolboxes.Optimization||Efficient, stable and flexible functions for scalar and nonscalar, nonlinear optimization problems.|
|ILNumerics.Toolboxes.Interpolation||(From version 4.9) Highly optimized and flexible interpolation functions for 1D,2D,3D and N-D gridded and scattered data.|
|ILNumerics.Toolboxes.Drawing2||Extends the Visualization Engine by more high level plot objects.|