## SECTION I. User-callable Routines

```Section I contains the names and purposes of all user-callable CML routines,
arranged by GAMS category.  Those unfamiliar with the GAMS scheme should
consult the document "Guide to the SLATEC Common Mathematical Library".  The
current library has routines in the following GAMS major categories:

A.  Arithmetic, error analysis
A3.  Real
A4.  Complex
A6.  Change of representation
C.  Elementary and special functions
C1.  Integer-valued functions
C2.  Powers, roots, reciprocals
C3.  Polynomials
C4.  Elementary transcendental functions
C5.  Exponential and logarithmic integrals
C7.  Gamma
C8.  Error functions
C9.  Legendre functions
C10.  Bessel functions
C11.  Confluent hypergeometric functions
C14.  Elliptic integrals
C19.  Other special functions
D.  Linear Algebra
D1.  Elementary vector and matrix operations
D2.  Solution of systems of linear equations
D3.  Determinants
D4.  Eigenvalues, eigenvectors
D5.  QR decomposition, Gram-Schmidt orthogonalization
D6.  Singular value decomposition
D7.  Update matrix decompositions
D9.  Overdetermined or underdetermined systems of equations, singular systems, pseudo-inverses
E.  Interpolation
E1.  Univariate data (curve fitting)
E3.  Service routines
F.  Solution of nonlinear equations
F1.  Single equation
F2.  System of equations
F3.  Service routines
G.  Optimization
G2.  Constrained
G4.  Service routines
H.  Differentiation, integration
H1.  Numerical differentiation
H2.  Quadrature (numerical evaluation of definite integrals)
I.  Differential and integral equations
I1.  Ordinary differential equations
I2.  Partial differential equations
J.  Integral transforms
J1.  Fast Fourier transforms
J4.  Hilbert transforms
K.  Approximation
K1.  Least squares (L-2) approximation
K6.  Service routines
L.  Statistics, probability
L5.  Function evaluation
L6.  Pseudo-random number generation
L7.  Experimental design, including analysis of variance
L8.  Regression
N.  Data handling
N1.  Input, output
N6.  Sorting
N8.  Permuting
R.  Service routines
R1.  Machine-dependent constants
R2.  Error checking
R3.  Error handling
Z.  Other

The library contains routines which operate on different types of data but
which are otherwise equivalent.  The names of equivalent routines are listed
vertically before the purpose.  Immediately after each name is a hyphen (-)
and one of the alphabetic characters S, D, C, I, H, L, or A, where
S indicates a single precision routine, D double precision, C complex,
I integer, H character, L logical, and A is a pseudo-type given to routines
that could not reasonably be converted to some other type.

```