[CRC logo]

Procedures From A Numerical Library in C for Scientists and Engineers

by H.T. Lau (CRC Press, 1995)

see also Information About the Book (and How to Order)

see also Books of Related Interest from CRC Press

see also CRC's Home Page (external link)



0. Utility Procedures

allocate_real_vector
allocate_integer_vector
allocate_real_matrix
allocate_integer_matrix
system_error
free_real_vector
free_integer_vector
free_real_matrix
free_integer_matrix

1. Elementary Procedures

1.1 Real vector and matrix - Initialization
inivec
inimat
inimatd
inisymd
inisymrow
1.2 Real vector and matrix - Duplication
dupvec
dupvecrow
duprowvec
dupveccol
dupcolvec
dupmat
1.3 Real vector
mulvec
mulrow
mulcol
colcst
rowcst
1.4 Real vector vector products
vecvec
matvec
tamvec
matmat
tammat
mattam
seqvec
scaprd1
symmatvec
1.5 Real matrix vector products
fulmatvec
fultamvec
fulsymmatvec
resvec
symresvec
1.6 Real matrix products
hshvecmat
hshcolmat
hshrowmat
hshvectam
hshcoltam
hshrowtam
1.7 Real vector and matrix - Elimination
elmvec
elmcol
elmrow
elmveccol
elmcolvec
elmvecrow
elmrowvec
elmcolrow
elmrowcol
maxelmrow
1.8 Real vector and matrix - Interchanging
ichvec
ichcol
ichrow
ichrowcol
ichseqvec
ichseq
1.9 Real vector and matrix - Rotation
rotcol
rotrow
1.10 Real vector and matrix - Norms
infnrmvec
infnrmrow
infnrmcol
infnrmmat
onenrmvec
onenrmrow
onenrmcol
onenrmmat
absmaxmat
1.11 Real vector and matrix - Scaling
reascl
1.12 Complex vector and matrix - Multiplication
comcolcst
comrowcst
1.13 Complex vector and matrix - Scalar products
commatvec
hshcomcol
hshcomprd (Example)
1.14 Complex vector and matrix - Elimination
elmcomveccol
elmcomcol (Example)
elmcomrowvec
1.15 Complex vector and matrix - Rotation
rotcomcol (Example)
rotcomrow
cshsh2
1.16 Complex vector and matrix - Norms
comeucnrm
1.17 Complex vector and matrix - Scaling
comscl
sclcom
1.18 Complex monadic operations
comabs (Example)
comsqrt (Example)
carpol (Example)
1.19 Complex dyadic operations
commul (Example)
comdiv (Example)
1.20 Long integer arithmetic
lngintadd (Example)
lngintsubtract
lngintmult
lngintdivide (Example)
lngintpower

2. Algebraic Evaluations

2.1 Evaluation of polynomials in Grunert form
pol
taypol
norderpol
derpol (Example)
2.2 Evaluation of general orthogonal polynomials
ortpol
ortpolsym
allortpol (Example)
allortpolsym (Example)
sumortpol
sumortpolsym
2.3 Evaluation of Chebyshev polynomials
chepolsum (Example)
oddchepolsum (Example)
chepol
allchepol (Example)
2.4 Evaluation of Fourier series
sinser
cosser
fouser (Example)
fouser1
fouser2
comfouser
comfouser1
comfouser2
2.5 Evaluation of continued fractions
jfrac (Example)
2.6 Transformation of polynomial representation
polchs (Example)
chspol
polshtchs (Example)
shtchspol
grnnew (Example)
newgrn
lintfmpol (Example)
2.7 Operations on orthogonal polynomials
intchs (Example)

3. Linear Algebra

3.1 Full real general matrices
3.1.1 Preparatory procedures
dec
gsselm
onenrminv
erbelm
gsserb
gssnri
3.1.2 Calculation of determinant
determ (Example)
3.1.3 Solution of linear equations
sol (Example)
decsol (Example)
solelm
gsssol (Example)
gsssolerb (Example)
3.1.4 Matrix inversion
inv
decinv (Example)
inv1
gssinv (Example)
gssinverb (Example)
3.1.5 Iteratively improved solution
itisol
gssitisol (Example)
itisolerb
gssitisolerb (Example)
3.2 Real Symmetric positive definite matrices
3.2.1 Preparatory procedures
chldec2 (Example)
chldec1 (Example)
3.2.2 Calculation of determinant
chldeterm2
chldeterm1
3.2.3 Solution of linear equations
chlsol2
chlsol1
chldecsol2 (Example)
chldecsol1 (Example)
3.2.4 Matrix inversion
chlinv2
chlinv1
chldecinv2 (Example)
chldecinv1 (Example)
3.3 General real symmetric matrices
3.3.1 Preparatory procedure
decsym2
3.3.2 Calculation of determinant
determsym2 (Example)
3.3.3 Solution of linear equations
solsym2
decsolsym2
3.4 Real full rank overdetermined systems
3.4.1 Preparatory procedures
lsqortdec (Example)
lsqdglinv
3.4.2 Least squares solution
lsqsol
lsqortdecsol (Example)
3.4.3 Inverse matrix of normal equations
lsqinv (Example)
3.4.4 Least squares with linear constraints
lsqdecomp (Example)
lsqrefsol
3.5 Other real matrix problems
3.5.1 Solution of overdetermined systems
solsvdund
solund (Example)
3.5.3 Solutions of homogeneous equation
homsolsvd
homsol (Example)
3.5.4 Pseudo-inversion
psdinvsvd
psdinv (Example)
3.6 Real sparse non-symmetric band matrices
3.6.1 Preparatory procedure
decbnd
3.6.2 Calculation of determinant
determbnd
3.6.3 Solution of linear equations
solbnd (Example)
decsolbnd (Example)
3.7 Real sparse non-symmetric tridiagonal matrices
3.7.1 Preparatory procedures
dectri
dectripiv
3.7.2 Solution of linear equations
soltri
decsoltri (Example)
soltripiv (Example)
decsoltripiv (Example)
3.8 Sparse symmetric positive definite band matrices
3.8.1 Preparatory procedure
chldecbnd
3.8.2 Calculation of determinant
chldetermbnd
3.8.3 Solution of linear equations
chlsolbnd (Example)
chldecsolbnd (Example)
3.9 Symmetric positive definite tridiagonal matrices
3.9.1 Preparatory procedure
decsymtri
3.9.2 Solution of linear equations
solsymtri
decsolsymtri
3.10 Sparse real matrices - Iterative methods
conjgrad (Example)
3.11 Similarity transformation
3.11.1 Equilibration - real matrices
eqilbr
baklbr
3.11.2 Equilibration - complex matrices
eqilbrcom (Example)
baklbrcom
3.11.3 To Hessenberg form - real symmetric
tfmsymtri2
baksymtri2
tfmprevec
tfmsymtri1
baksymtri1
3.11.4 To Hessenberg form - real asymmetric
tfmreahes
bakreahes1
bakreahes2
3.11.5 To Hessenberg form - complex Hermitian
hshhrmtri (Example)
hshhrmtrival (Example)
bakhrmtri
3.11.6 To hessenberg form - complex non-Hermitian
hshcomhes
bakcomhes
3.12 Other transformations
3.12.1 To bidiagonal form - real matrices
hshreabid
psttfmmat
pretfmmat
3.13 The (ordinary) eigenvalue problem
3.13.1 Real symmetric tridiagonal matrices
valsymtri (Example)
vecsymtri
qrivalsymtri
qrisymtri
3.13.2 Real symmetric full matrices
eigvalsym2 (Example)
eigsym2
eigvalsym1
eigsym1 (Example)
qrivalsym2
qrisym
qrivalsym1
3.13.3 Symmetric matrices - Auxiliary procedures
mergesort
vecperm
rowperm
3.13.4 Symmetric matrices - Orthogonalization
orthog
3.13.5 Symmetric matrices - Iterative improvement
symeigimp (Example)
3.13.6 Asymmetric matrices in Hessenberg form
reavalqri
reaceches
reaqri
comvalqri (Example)
comveches
3.13.7 Real asymmetric full matrices
reaeigval
reaeig1
reaeig3 (Example)
comeigval (Example)
comeig1
3.13.8 Complex Hermitian matrices
eigvalhrm
eighrm (Example)
qrivalhrm
qrihrm (Example)
3.13.9 Complex upper-Hessenberg matrices
valqricom (Example)
qricom (Example)
3.13.10 Complex full matrices
eigvalcom
eigcom (Example)
3.14 The generalized eigenvalue problem
3.14.1 Real asymmetric matrices
qzival (Example)
qzi (Example)
hshdecmul
hestgl3
hestgl2
hsh2col
hsh3col
hsh2row3
hsh2row2
hsh3row3
hsh3row2
3.15 Singular values
3.15.1 Real bidiagonal matrices
qrisngvalbid
qrisngvaldecbid (Example)
3.15.2 Real full matrices
qrisngval
qrisngvaldec
3.16 Zeros of polynomials
3.16.1 Zeros of general real polynomials
zerpol (Example)
bounds
3.16.2 Zeros of orthogonal polynomials
allzerortpol
lupzerortpol (Example)
selzerortpol (Example)
alljaczer (Example)
alllagzer (Example)
3.16.3 Zeros of complex polynomials
comkwd (Example)

4. Analytic Evaluations

4.1 Evaluation of an infinite series
euler (Example)
sumposseries (Example)
4.2 Quadrature
4.2.1 One-dimensional quadrature
qadrat (Example)
integral (Example)
4.2.2 Multidimensional quadrature
tricub (Example)
4.2.3 Gaussian quadrature - General weights
reccof (Example)
gsswts
gsswtssym (Example)
4.2.4 Gaussian quadrature - Special weights
gssjacwghts (Example)
gsslagwghts (Example)
4.3 Numerical differentiation
4.3.1 Calculation with difference formulas
jacobnnf (Example)
jacobnmf (Example)
jacobnbndf (Example)

5. Analytic Problems

5.1 Non-linear equations
5.1.1 Single equation - No derivative available
zeroin (Example)
zeroinrat (Example)
5.1.2 Single equation - Derivative available
zeroinder (Example)
5.1.3 System of equations - No Jacobian matrix
quanewbnd
quanewbnd1 (Example)
5.2 Unconstrained optimization
5.2.1 One variable - No derivative
minin (Example)
5.2.3 One variable - Derivative available
mininder (Example)
5.2.4 More variable - Auxiliary procedures
linemin
rnk1upd
davupd
fleupd
5.2.5 More variables - No derivatives
praxis (Example)
5.2.6 More variables - Gradient available
rnk1min (Example)
flemin
5.3 Overdetermined nonlinear systems
5.3.1 Least squares - With Jacobian matrix
marquardt (Example)
gssnewton (Example)
5.4 Differential equations - Initial value problems
5.4.1 First order - No derivatives right hand side
rk1 (Example)
rke (Example)
rk4a (Example)
rk4na (Example)
rk5na (Example)
multistep (Example)
diffsys (Example)
ark (Example)
efrk (Example)
5.4.2 First Order - Jacobian matrix available
efsirk (Example)
eferk (Example)
liniger1vs (Example)
liniger2 (Example)
gms (Example)
impex (Example)
5.4.3 First Order - Several derivatives available
modifiedtaylor (Example)
eft (Example)
5.4.4 Second order - No derivatives right hand side
rk2 (Example)
rk2n (Example)
rk3 (Example)
rk3n (Example)
5.4.5 Initial boundary value problem
arkmat (Example)
5.5 Two point boundary value problems
5.5.1 Linear methods - Second order self adjoint
femlagsym (Example)
femlag (Example)
femlagspher (Example)
5.5.2 Linear methods - Second order skew adjoint
femlagskew (Example)
5.5.3 Linear methods - Fourth order self adjoint
femhermsym (Example)
5.5.4 Non-linear methods
nonlinfemlagskew (Example)
5.6 Two-dimensional boundary value problems
5.6.1 Elliptic special linear systems
richardson (Example)
elimination (Example)
5.6 Parameter estimation in differential equations
5.6.1 Initial value problems
peide (Example)

6. Special Functions

6.1 Elementary functions
6.1.1 Hyperbolic functions
arcsinh (Example)
arccosh (Example)
arctanh (Example)
6.1.2 Logarithmic functions
logoneplusx (Example)
6.2 Exponential integral
6.2.1 Exponential integral
ei (Example)
eialpha (Example)
enx (Example)
nonexpenx
6.2.2 Sine and cosine integral
sincosint
sincosfg (Example)
6.3 Gamma function
recipgamma (Example)
gamma (Example)
loggamma (Example)
incomgam (Example)
incbeta (Example)
ibpplusn (Example)
ibqplusn (Example)
ixqfix
ixpfix
forward
backward
6.4 Error function
errorfunction (Example)
nonexperfc
inverseerrorfunction (Example)
fresnel (Example)
fg
6.5 Bessel functions of integer order
6.5.1 Besel functions J and Y
bessj0 (Example)
bessj1 (Example)
bessj (Example)
bessy01 (Example)
bessy (Example)
besspq0 (Example)
besspq1
6.5.2 Bessel functions I and K
bessi0 (Example)
bessi1 (Example)
bessi (Example)
bessk01 (Example)
bessk (Example)
nonexpbessi0 (Example)
nonexpbessi1 (Example)
nonexpbessi (Example)
nonexpbessk01 (Example)
nonexpbessk (Example)
6.6 Bessel functions of real order
6.6.1 Bessel functions J and Y
bessjaplusn (Example)
bessya01 (Example)
bessyaplusn (Example)
besspqa01 (Example)
besszeros (Example)
start
6.6.2 Bessel functions I and K
bessiaplusn (Example)
besska01 (Example)
besskaplusn (Example)
nonexpbessiaplusn (Example)
nonexpbesska01
nonexpbesskaplusn (Example)
6.6.3 Spherical Bessel functions
spherbessj (Example)
spherbessy (Example)
spherbessk (Example)
nonexpspherbessi
nonexpspherbessk
6.6.4 Airy functions
airy (Example)
airyzeros (Example)

7. Interpolation and Approximation

7.1 Real data in one dimension
7.1.1 Interpolation with general polynomials
newton (Example)
7.1.2 Approximation in infinity norm
ini (Example)
sndremez (Example)
minmaxpol (Example)