SLATEC
SLATEC Common Mathematical Library is a FORTRAN 77 library of over 1400 general purpose mathematical and statistical routines. The code was developed at US Government research laboratories and is therefore public domain software.
"SLATEC" is an acronym for the Sandia, Los Alamos, Air Force Weapons Laboratory Technical Exchange Committee, an organization formed in 1974 to foster the exchange of technical information between the computer centers of three US government laboratories.
Project history and current status
In 1977, the SLATEC Common Mathematical Library Subcommittee decided to construct a library of FORTRAN subprograms to provide portable, non-proprietary, mathematical software that could be used on a variety of computers, including supercomputers, at the three sites. The computers centers of the Lawrence Livermore National Laboratory, the National Bureau of Standards and the Oak Ridge National Laboratory also participated from 1980–81 onwards.The main repository for SLATEC is Netlib. The current version is 4.1. Since then, a very small number of minor corrections has been made without incrementing the version number.
The GNU Scientific Library, initiated in 1996 and stable since 2001, was started with the explicit aim to provide a more modern replacement for SLATEC.
Contents
Each subroutine in SLATEC is tagged as belonging to one of 13 subpackages. Some of these subpackages are also well known as free-standing FORTRAN subprogram libraries, including BLAS, EISPACK, FFTPACK, LINPACK and QUADPACK. The following table shows all subpackages and the number of subroutines they contain:subpackage | number of routines | separately available in Netlib | purpose |
BLAS | 114 | yes | Basic linear algebra |
DASSL | 16 | no | solve differential/algebraic equation systems |
DEPAC | 10 | no | solve ordinary differential equations |
EISPACK | 71 | yes | eigenvalues and eigenvectors |
FFTPACK | 48 | yes | fast Fourier transform |
FISHPACK | 19 | yes | use cyclic reduction to directly solve second- and fourth-order finite difference approximations to separable elliptic Partial Differential Equations in various coordinate systems |
FNLIB | 161 | yes, as 'FN' | special functions |
LINPACK | 128 | yes | linear algebra, outdated |
PCHIP | 41 | no | piecewise cubic Hermite interpolation |
QUADPACK | 59 | yes | numerical integration of one-dimensional functions |
SDRIVE | 36 | no | solve ordinary differential equations |
SLAP | 124 | yes | sparse linear algebra package |
XERROR | 17 | no | error handling |