Frequently Asked Questions about dnAnalytics

General
What platforms does dnAnalytics support?
Will the native version of dnAnalytics work with Mac OSX (x86)?

Licensing
Is dnAnalytics GPL compatible?
Can dnAnalytics be used in a closed source, proprietary application?
Can I redistribute the dnAnalytics binaries?

Contributing
Can anyone contribute to the project?
What is a Contributor License Agreement?
Why do you require a Contributor License Agreement?
Does a contributor lose his/her rights to the code they contribute?
Why don't you setup a non-profit organization to maintain the project?

Using dnAnalytics
What options do I have to do equality testing on vectors and matrices?
I'm getting a "System.DllNotFoundException was unhandled" error when using the native version, whats wrong?
When I open dnAnalytics.chm, I get: The page cannot be displayed error or The address is not valid. How can I fix this?

General
What platforms does dnAnalytics support?
The managed version will run any platform that supports .NET 2.0 or later, or the latest version of Mono. The native version will run Windows XP or later, and any x86/x64 Linux distribution that supports Mono.

Will the native version of dnAnalytics work with Mac OSX (x86)?
It should, but hasn't been tested. You need a copy of the Intel MKL for Mac OSX to build the MKL wrapper. If you get dnAnalytics working on a Mac, please let us know.

Licensing
Is dnAnalytics GPL compatible?
Yes.

Can dnAnalytics be used in a closed source/proprietary application?
Yes. The BSD License does not put any restrictions on how you use the library. There maybe some restrictions on redistributing the dnAnalytics' native libraries. Please see licensing question 3.

Can I redistribute the dnAnalytics binaries?
Note: We are not lawyers and the following is not legal advice.
There are no restrictions on redistributing the managed libraries. The native libraries are subject to the Intel Math Kernel Library (MKL) End User Agreement (EULA). Our interpretation of the MKL EULA is that we may distribute the native libraries and users may redistribute them. However, users should consult the MKL EULA and a lawyer. Users can always purchase their own copy of MKL and build the the native libraries on their own.

Contributing
Can anyone contribute to the project?
Yes, as long as they submit a Contributor License Agreement.

What is a Contributor License Agreement?
A Contributor License Agreement is an agreement between the contributor and the dnAnalytics Project where the contributor grants "a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your Contributions and such derivative works" to the dnAnalytics Project.

Why do you require a Contributor License Agreement?
The purpose of the agreement is to clarify copyright ownership and allow us defend any copyright claims.

Does a contributor lose his/her rights to the code they contribute?
No. A contributor retains all rights to their contributed code. The contributor is providing us with a copyright license.

Why don't you setup a non-profit organization to maintain the project?
The size of the project doesn't justify the cost and time needed to setup and maintain a non-profit organization. We may do so in the future.


Using dnAnalytics
What options do I have to do equality testing on vectors and matrices?
There are essentially two types of equality tests you can do on vectors and matrices. Following the .NET guidelines, dnAnalytics allows you to either:
  • Test whether two variables refer to the same vector or matrix on the heap. This can be done using a call to System.Object.ReferenceEquals or the == operator.
  • Test whether two vectors or matrices are equal by pointwise comparing their entries. This can be done using a call to Vector.Equals or Matrix.Equals.

I'm getting a "System.DllNotFoundException was unhandled" error when using the native version, whats wrong?
Under Windows
The two most likely problems are:
1) You don't have the VC++ 9 runtime installed. It can be downloaded from Microsoft:
  • x86 - http://www.microsoft.com/downloads/details.aspx?familyid=9B2DA534-3E03-4391-8A4D-074B9F2BC1BF&displaylang=en
  • x64 - http://www.microsoft.com/downloads/details.aspx?familyid=BD2A6171-E2D6-4230-B809-9A8D7548C1B6&displaylang=en

2) The dnAnalytics native libraries are not in the correct directory. They need to be in one of the following:
  • The same directory as the executable.
  • In a system directory, i.e. c:\windows\system32
  • A directory listed in your PATH

Under Linux
Add the location of libiomp5.so to the LD_LIBRARY_PATH environment variable.

When I open dnAnalytics.chm I get: The page cannot be displayed error or The address is not valid. How can I fix this?
1. Right-click the CHM file, and then click Properties.
2. Click Unblock.
3. Double-click the .chm file to open the file.

Last edited Aug 16, 2009 at 4:16 AM by cuda, version 22

Comments

No comments yet.