The libraries that are needed by mps-bundle are listed below. The list is rather exhaustive, and depending on your platform you many not need some of them.
is my own version of a fortran to C99 compiler that builds on the old
compiler to C. The resulting code also builds with C++ and is used by
various other libraries. cblapack is a LAPACK+BLAS replacement that works
an ideal world, every computer would ship with an optimized version of
the LAPACK and BLAS libraries for manipulating matrices, solving linear
equations and all other algebraic operations. In many operating systems
this is not possible, or is only available at a high cost. It is for
this reason that my libraries can be built with various alternatives
that are out there:
Atlas is a highly optimized version of
BLAS and some LAPACK routines that is available for Unix-like platforms.
It is computer generated and has to be built for the computer it runs
in, but it allows to use multiple cores.
Veclib is a version of atlas that is built by Apple and distributed with its operating system.
MKL is probably the best one out there, outperforming all alternatives
when using a multithreaded mode, that is, distributing the load on
multiple cores in the same computer.
cblapack is the last
resource. It is a version of LAPACK and BLAS that has been compiled with
my f2c compiler and thus runs on any computer with a modern C compiler.
I use it on the windows platform. Performance is decent for testing and
even some simulations, but you should get something better for
is a very high-level library that mimics Matlab's approach to linear
algebra, introducing multidimensional arrays, operations on those arrays
that include matrix-matrix and matrix-vector multiplication, solving
systems of equations, eigenvalue computations, etc. It has a very clever
copy-on-write scheme that makes it quite memory efficient, and it
profits from the multithreading capabilities of the libraries above, but
it is not thread safe.
is a library that implements rather sophisticated algorithms for
many-body Quantum Mechanics, including Matrix Product States, a relative
of DMRG, which can be used to compute ground states, study time
evolution, solving scattering equations, etc.
As mentioned in the introduction, keeping all these libraries in the same computer and also updating them regularly is a rather inconvenient task. It is for this reason that I created mps-bundle, a wrapper that downloads and installs all those libraries one after another. These pages describe the wrapper.