Scientific Libraries

LIBRARY

DESCRIPTION

ACML The AMD Core Math Library (ACML) is a set of numerical routines tuned specifically for AMD64 platform processors. The routines, which are available via both FORTRAN and C interfaces, include:

    • BLAS – Basic Linear Algebra Subprograms (including Sparse Level 1 BLAS);
    • LAPACK – A comprehensive package of higher-level linear algebra routines;
    • FFT – a set of Fast Fourier Transform routines for real and complex data;
  • RNG – a set of random number generators and statistical distribution functions.
BOOST Boost provides free peer-reviewed portable C++ source libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications
CFITSIO
FITSIO
CFITSIO is a library of C and Fortran subroutines for reading and writing data files in FITS (Flexible Image Transport System) data format. CFITSIO provides simple high-level routines for reading and writing FITS files that insulate the programmer from the internal complexities of the FITS format. CFITSIO also provides many advanced features for manipulating and filtering the information in FITS files.
FFTW FFTW is a comprehensive collection of fast C routines for computing the discrete Fourier transform (DFT) and various special cases thereof.  FFTW supports transforms of data with arbitrary length, rank, multiplicity, and a general memory layout.
GMP GNU MP is a portable library written in C for arbitrary precision arithmetic on integers, rational numbers, and floating-point numbers. It aims to provide the fastest possible arithmetic for all applications that need higher precision than is directly supported by the basic C types. Many applications use just a few hundred bits of precision, but some applications may need thousands or even millions of bits. GMP is designed to give good performance for both, by choosing algorithms based on the sizes of the operands, and by carefully keeping the overhead at a minimum.
GSL The GNU scientific library is a numerical library that includes over 100 functions for doing linear algebra, data fitting, statistics, sorting, random number generation, etc. The library covers a wide range of topics in numerical computing. Routines are available for the following areas:

Complex Numbers            Roots of Polynomials      Special Functions
Vectors and Matrices       Permutations              Combinations
Sorting                    BLAS Support              Linear Algebra
CBLAS Library              Fast Fourier Transforms   Eigensystems
Random Numbers             Quadrature                Random Distributions
Quasi-Random Sequences     Histograms                Statistics
Monte Carlo Integration    N-Tuples                  Differential Equations
Simulated Annealing        Numerical Differentiation Interpolation
Series Acceleration        Chebyshev Approximations  Root-Finding
Discrete Hankel Transforms Least-Squares             Fitting Minimization
IEEE Floating-Point        Physical Constants Basis  Splines Wavelets
ITK The Insight Toolkit is an open-source, cross-platform system that provides developers with an extensive suite of software tools for image analysis. Developed through extreme programming methodologies, ITK employs leading-edge algorithms for registering and segmenting multidimensional data.
MKL The Intel Math Kernel Library offers highly optimized, thread-safe math routines for science, engineering, and financial applications that require maximum performance.  The routines, which are available via both FORTRAN and C/C++ interfaces, include:

    • BLAS – Basic Linear Algebra Subprograms (including Sparse Level 1 BLAS);
    • LAPACK – A comprehensive package of higher-level linear algebra routines;
    • FFT – a set of Fast Fourier Transform routines for real and complex data;
    • PBLAS – Parallel Basic Linear Algebra Subprograms
    • ScaLAPACK routines
    • Vector Mathematical Library (VML) functions
  • Vector Statistical Library (VSL) functions
MUMPS MUMPS (“MUltifrontal Massively Parallel Solver”) is a package for solving systems of linear equations of the form Ax = b, where A is a square sparse matrix that can be either unsymmetric, symmetric positive definite, or general symmetric. MUMPS uses a multifrontal technique which is a direct method based on either the LU or the LDLT factorization of the matrix.
NetCDF The Network Common Data Form, or netCDF, is an interface to a library of data access functions for storing and retrieving data in the form of arrays. An array is an n-dimensional (where n is 0, 1, 2, …) rectangular structure containing items that all have the same data type (e.g., 8-bit character, 32-bit integer). A scalar (simple single value) is a 0-dimensional array.
PGPLOT The PGPLOT Graphics Subroutine Library is a Fortran or C-callable, device-independent graphics package for making simple scientific graphs. It is intended for making graphical images of publication quality with minimum effort on the part of the user. For most applications, the program can be device-independent, and the output can be directed to the appropriate device at run time.