Question

Sorry for this (extremely basic) question.

I just decided today to try ILNumerics for my relatively simply algorithms that basically refer to simplistic algebra operations and relatively basic optimizations.

My first impression is simply that, - ILNumerics is much easier to understand (than, for instance, Math.Net library), - easy to get used to the syntax, - and casting to other (mostly system types) are much neater vs. other libraries.

I fortunately came accross with the multiply and the transpose, but, I was not such lucky for the INVERSE FUNCTION.

I tried the solution suggested at this link: How to use ILMath.invert function?

Basically, the inverse is calculated as follows:

ILArray<double> A = ILMath.rand(5,5);
ILArray<double> B = ILMath.linsolve(A, ILMath.eye(5, 5));

However, I get the following error when I copy/paste and try the very same approach to calculate the inverse of a matrix:

An unhandled exception of type 'System.DllNotFoundException' occurred in ILNumerics.dll
Additional information: Unable to load DLL 'mkl_custom': 
The specified module could not be found. (Exception from HRESULT: 0x8007007E)

**

What am I doing wrong? What is missing here? How to resolve it?

Any help is appreciated.

Thanks in advance for those dedicating time to this issue.

Was it helpful?

Solution

Simply use the nuget package 'ILNumerics'. This will import all needed binaries into your project and copy the files to the output directory.

@Edit: the nuget packages are no longer maintained. The new ILNumerics Ultimate VS solves the problem even better by installing the binaries right into your System32 folder. This is done once for all projects on the machine. http://ilnumerics.net/download.html

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top