Review: IMSL C# Numerical Library
IMSL C# Numerical Library
starting at $1695 per user
Visual Numerics, Inc.
San Ramon, Califonia
I first ran into the IMSL numerical libraries during my undergraduate
career -- and that was far too many years ago. Starting from a
Fortran base, the company has been around since 1970, and offers
numerical libraries and visualization tools for Fortran, C, Java, and
now C#. I looked at the just-released C# version, of course.
Installing the product gets you a DLL that contains the code, and an
extensive help file. The code itself is, according to the company, 100%
managed code; no interop here (and certainly there aren't any COM DLLs
hanging around). The help file is in the standard .NET class library
style, and it's well-written and extensive.
So what's in here? You'll find both financial and mathematical
functions. On the financial side, there are a whole batch of bond
functions plus a collection of general-purpose financial functions:
interest payments, MIRR, PPMT, and on at considerable length. The
mathematical functions, though, are the real heart of the package.
The math geeks in the audience will be happy to find FFTs, eigenvalue
analysis, polynomial solutions, time series and correlation, forecasting
and best fit, differential equations, basic statistics, matrix
operations, complex numbers, and plenty more. The odds are fairly good
that if you need something more advanced than this package provides,
you're writing it yourself - though even in that case, the building
blocks here (like a complex number type) will probably help.
The help file is very well written and it also attributes the original
sources for many of the routines that it uses, which brings an even
higher confidence level to the product. Of course, the fact that it's
time-tested for three decades should put you in your comfort zone with
the answers it gives anyhow. In addition to the help, there's a PDF
manual that runs to nearly 700 pages, full of equations and graphs to
illustrate what you can do with this software.
You can register for an evaluation copy of the software on the company's
Web site. Developer licenses are locked to a single machine. You can
also purchase a CPU count based server license for deployment.
Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.