NEW! MATLAB extensions for numerical solution of Ordinary Differential Equations.
Found this library useful? Please buy some prints of my photographs and support it! Thank you!
This C++ class library encapsulates concepts of vector and different matrices including square, band, symmetric and hermitian ones in Euclidean space of real and complex numbers. It utilizes BLAS and LAPACK Fortran libraries in order to achieve the best numerical performance possible. Along with basic vector and matrix arithmetic it contains different algorithms including norm computations, elementary transformations, solving of linear systems of kind Ax=b and AX=B, singular value decomposition, matrix rank and determinant computation, non-symmetric and symmetric eigenvalue problem (including Cholesky and Bunch-Kaufman factorization), LU factorization, QR, RQ, LQ and QL factorizations, different linear least square problems solutions, square matrix polynomials, square matrix inversion, pseudo (generalized) inversion and square matrix exponent. All these algorithms are implemented for real and complex numbers.
The library is distributed under the Boost Software License, Version 1.0. Current version is 6.0, October 6th, 2010 (see also history of changes and FAQ page). The following compilers and integrated development environments are currently supported:
For older compilers please use versions 5.6.2 and 5.2.
If you want to rebuild Fortran subroutines included into the library, you'll also need the Intel Fortran 11.1 or higher for Win32 and Linux platform (gfortran is also supported under Linux and MingW). The library can be linked with Intel MKL 10.2 or higher, with AMD ACML 4.3.0 or higher and also with native BLAS and LAPACK implementations. Your questions and bug reports are very welcome at ebwwbiw02@sneakemail.com.
cvm.h header only, pdf): libcvm-ia32-6.0.deb and libcvm-em64t-6.0.debLinks to precompiled binaries for Win32, Win32 EM64T and Linux (IA32 and EM64T) platforms are given below (every archive contains both debug and release versions with regression test utilities). They were built using Intel Fortran and C++ compilers 11.1.067 for Windows and Intel Fortran 11.1.073 for Linux. Intel MKL 10.2.6.037 (Windows and Linux) libraries are dynamically linked with MKL binaries (redistributables included). AMD ACML 4.4.0 libraries are dynamically linked with ACML binaries (redistributables included). Native BLAS and LAPACK 3.2.2 libraries are statically linked (Intel Fortran 11.1.073 compiler used under Linux and gfortran 4.5.1 under MinGW):
| Native BLAS and LAPACK | Intel MKL | AMD ACML | AMD ACML MP | |
| Win32 (x86) | cvmlib.6.0.lapack.ia32.zip | cvmlib.6.0.mkl.ia32.zip | cvmlib.6.0.acml.ia32.zip | cvmlib.6.0.acml_mp.ia32.zip |
| Win32 em64t | cvmlib.6.0.lapack.em64t.zip | cvmlib.6.0.mkl.em64t.zip | cvmlib.6.0.acml.em64t.zip | cvmlib.6.0.acml_mp.em64t.zip |
| Win32 em64t int64 | cvmlib.6.0.lapack.em64t.ilp64.zip | cvmlib.6.0.mkl.em64t.ilp64.zip | not provided by AMD | not provided by AMD |
| Linux ia32 | cvmlib.6.0.lapack.ia32.tar.gz | cvmlib.6.0.mkl.ia32.tar.gz | cvmlib.6.0.acml.ia32.tar.gz | cvmlib.6.0.acml_mp.ia32.tar.gz |
| Linux em64t | cvmlib.6.0.lapack.em64t.tar.gz | cvmlib.6.0.mkl.em64t.tar.gz | cvmlib.6.0.acml.em64t.tar.gz | cvmlib.6.0.acml_mp.em64t.tar.gz |
| Linux em64t int64 | cvmlib.6.0.lapack.em64t.ilp64.tar.gz | cvmlib.6.0.mkl.em64t.ilp64.tar.gz | cvmlib.6.0.acml.em64t.ilp64.tar.gz | cvmlib.6.0.acml_mp.em64t.ilp64.tar.gz |
| MinGW ia32 | cvmlib.6.0.lapack.ia32.mingw.tar.gz | |||
| MinGW em64t | cvmlib.6.0.lapack.em64t.mingw.tar.gz | |||
| MinGW em64t int64 | cvmlib.6.0.lapack.em64t.ilp64.mingw.tar.gz |