This is the list of software packages, which has been used in for the implementation of the finite element micromagnetics package. Along with the title and URLs are short citations from the websites, which summarize the contents and objective of each package.
- PETSc
The Portable, Extensible Toolkit for Scientific Computation [58]
PETSc is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations. It employs the MPI standard for all message-passing communication.
http://www-fp.mcs.anl.gov/petsc/
- BLAS, CBLAS
Basic Linear Algebra Subprograms [140,141,59]
The BLAS are high quality ``building block'' routines for performing basic vector and matrix operations. Level 1 BLAS do vector-vector operations, Level 2 BLAS do matrix-vector operations, and Level 3 BLAS do matrix-matrix operations.
http://www.netlib.org/blas/
- LAPACK
Linear Algebra PACKage [60]
LAPACK is written in Fortran77 and provides routines for solving systems of simultaneous linear equations, least-squares solutions of linear systems of equations, eigenvalue problems, and singular value problems.
http://www.netlib.org/lapack/
- LINPACK
LINear algebra PACKage [61]
LINPACK is a collection of Fortran subroutines that analyze and solve linear equations and linear least-squares problems.
- MPI, MPICH
The Message Passing Interface (MPI) standard [62]
MPI is a library specification for message-passing, proposed as a standard by a broadly based committee of vendors, implementors, and users.
http://www-unix.mcs.anl.gov/mpi/
MPICH-A Portable Implementation of MPI [63]
MPICH is a freely available, portable implementation of MPI, the Standard for message-passing libraries.
http://www-unix.mcs.anl.gov/mpi/mpich/
- Metis
Family of Multilevel Partitioning Algorithms [64]
Metis is a family of programs for partitioning unstructured graphs and hypergraphs
and computing fill-reducing orderings of sparse matrices.
The underlying algorithms used by Metis are based on the state-of-the-art multilevel
paradigm that has been shown to produce high quality results and scale to very large problems.
http://www-users.cs.umn.edu/~karypis/metis/
- TAO
Toolkit for Advanced Optimization [46]
The Toolkit for Advanced Optimization (TAO) is aimed at the solution of large-scale optimization problems on high-performance architectures. Our main goals are portability, performance, scalable parallelism, and an interface independent of the architecture.
TAO is suitable for both single-processor and massively-parallel architectures. The current version of TAO has algorithms for unconstrained and bound-constrained optimization.
http://www-fp.mcs.anl.gov/tao/index.htm
- VODE
Scott D. Cohen and Alan C. Hindmarsh [142]
Large non-stiff or stiff ordinary differential equation initial-value problem solver
http://www.llnl.gov/CASC/people/hindmarsh/
CVODE
Scott D. Cohen and Alan C. Hindmarsh,
``CVODE, a Stiff/Nonstiff ODE Solver in C'' [51]
available from [143]
http://www.netlib.org/
http://www.netlib.org/ode/cvode.tar.gz
PVODE
PVODE is a portable solver for ordinary differential equation systems.
It is based on robust mathematical algorithms, and targeted at large systems
on parallel machines [48].
G. D. Byrne and A. C. Hindmarsh,
``PVODE, An ODE Solver for Parallel Computers'' [49]
http://www.llnl.gov/CASC/
http://www.llnl.gov/CASC/nsde/
http://www.llnl.gov/CASC/PVODE/
- zlib
A Massively Spiffy Yet Delicately Unobtrusive Compression Library
zlib is designed to be a free, general-purpose, legally unencumbered - that is, not covered by any patents - lossless data-compression library for use on virtually any computer hardware and operating system [65].
http://www.gzip.org/zlib/
- libpng
libpng is the official PNG reference library [66].
http://www.libpng.org/pub/png/libpng.html