IMSLŪ Fortran Numerical Math Library
Introduction
The IMSL Fortran Numerical Library
User Background
Getting Started
Finding the Right Routine
Organization of the Documentation
Naming Conventions
Using Library Subprograms
Programming Conventions
Module Usage
Using MPI Routines
Programming Tips
Optional Subprogram Arguments
Optional Data
Overloaded =, /=, etc., for Derived Types
Error Handling
Printing Results
Fortran 90 Constructs
Shared-Memory Multiprocessors and Thread Safety
Using Operators and Generic Functions
Using ScaLAPACK, LAPACK, LINPACK, and EISPACK
Using ScaLAPACK Enhanced Routines
Chapter 1: Linear Systems
Routines
Usage Notes
LIN_SOL_GEN
LIN_SOL_SELF
LIN_SOL_LSQ
LIN_SOL_SVD
LIN_SOL_TRI
LIN_SVD
Parallel Constrained Least-Squares Solvers
PARALLEL_NONNEGATIVE_LSQ
PARALLEL_BOUNDED_LSQ
LSARG
LSLRG
LFCRG
LFTRG
LFSRG
LFIRG
LFDRG
LINRG
LSACG
LSLCG
LFCCG
LFTCG
LFSCG
LFICG
LFDCG
LINCG
LSLRT
LFCRT
LFDRT
LINRT
LSLCT
LFCCT
LFDCT
LINCT
LSADS
LSLDS
LFCDS
LFTDS
LFSDS
LFIDS
LFDDS
LINDS
LSASF
LSLSF
LFCSF
LFTSF
LFSSF
LFISF
LFDSF
LSADH
LSLDH
LFCDH
LFTDH
LFSDH
LFIDH
LFDDH
LSAHF
LSLHF
LFCHF
LFTHF
LFSHF
LFIHF
LFDHF
LSLTR
LSLCR
LSARB
LSLRB
LFCRB
LFTRB
LFSRB
LFIRB
LFDRB
LSAQS
LSLQS
LSLPB
LFCQS
LFTQS
LFSQS
LFIQS
LFDQS
LSLTQ
LSLCQ
LSACB
LSLCB
LFCCB
LFTCB
LFSCB
LFICB
LFDCB
LSAQH
LSLQH
LSLQB
LFCQH
LFTQH
LFSQH
LFIQH
LFDQH
LSLXG
LFTXG
LFSXG
LSLZG
LFTZG
LFSZG
LSLXD
LSCXD
LNFXD
LFSXD
LSLZD
LNFZD
LFSZD
LSLTO
LSLTC
LSLCC
PCGRC
JCGRC
GMRES
ARPACK_SVD
LSQRR
LQRRV
LSBRR
LCLSQ
LQRRR
LQERR
LQRSL
LUPQR
LCHRG
LUPCH
LDNCH
LSVRR
LSVCR
LSGRR
Chapter 2: Eigensystem Analysis
LIN_EIG_SELF
LIN_EIG_GEN
LIN_GEIG_GEN
EVLRG
EVCRG
EPIRG
EVLCG
EVCCG
EPICG
EVLSF
EVCSF
EVASF
EVESF
EVBSF
EVFSF
EPISF
EVLSB
EVCSB
EVASB
EVESB
EVBSB
EVFSB
EPISB
EVLHF
EVCHF
EVAHF
EVEHF
EVBHF
EVFHF
EPIHF
EVLRH
EVCRH
EVLCH
EVCCH
GVLRG
GVCRG
GPIRG
GVLCG
GVCCG
GPICG
GVLSP
GVCSP
GPISP
Eigenvalues and Eigenvectors Computed with ARPACK
The Base Class ARPACKBASE
ARPACK_SYMMETRIC
ARPACK_NONSYMMETRIC
ARPACK_COMPLEX
Chapter 3: Interpolation and Approximation
SPLINE_CONSTRAINTS
SPLINE_VALUES
SPLINE_FITTING
SURFACE_CONSTRAINTS
SURFACE_VALUES
SURFACE_FITTING
CSIEZ
CSINT
CSDEC
CSHER
CSAKM
CSCON
CSPER
CSVAL
CSDER
CS1GD
CSITG
SPLEZ
BSINT
BSNAK
BSOPK
BS2IN
BS3IN
BSVAL
BSDER
BS1GD
BSITG
BS2VL
BS2DR
BS2GD
BS2IG
BS3VL
BS3DR
BS3GD
BS3IG
BSCPP
PPVAL
PPDER
PP1GD
PPITG
QDVAL
QDDER
QD2VL
QD2DR
QD3VL
QD3DR
SURF
SURFND
RLINE
RCURV
FNLSQ
BSLSQ
BSVLS
CONFT
BSLS2
BSLS3
CSSED
CSSMH
CSSCV
RATCH
Chapter 4: Integration and Differentiation
QDAGS
QDAG
QDAGP
QDAG1D
QDAGI
QDAWO
QDAWF
QDAWS
QDAWC
QDNG
TWODQ
QDAG2D
QDAG3D
QAND
QMC
GQRUL
GQRCF
RECCF
RECQR
FQRUL
DERIV
Chapter 5: Differential Equations
IVPRK
IVMRK
IVPAG
BVPFD
BVPMS
DAESL
DASPG
IVOAM
Introduction to Subroutine PDE_1D_MG
PDE_1D_MG
MMOLCH
MOLCH
FEYNMAN_KAC
HQSVAL
FPS2H
FPS3H
SLEIG
SLCNT
Chapter 6: Transforms
FAST_DFT
FAST_2DFT
FAST_3DFT
FFTRF
FFTRB
FFTRI
FFTCF
FFTCB
FFTCI
FSINT
FSINI
FCOST
FCOSI
QSINF
QSINB
QSINI
QCOSF
QCOSB
QCOSI
FFT2D
FFT2B
FFT3F
FFT3B
RCONV
CCONV
RCORL
CCORL
INLAP
SINLP
Chapter 7: Nonlinear Equations
ZPLRC
ZPORC
ZPOCC
ZANLY
ZUNI
ZBREN
ZREAL
NEQNF
NEQNJ
NEQBF
NEQBJ
Chapter 8: Optimization
UVMIF
UVMID
UVMGS
UMINF
UMING
UMIDH
UMIAH
UMCGF
UMCGG
UMPOL
UNLSF
UNLSJ
BCONF
BCONG
BCODH
BCOAH
BCPOL
BCLSF
BCLSJ
BCNLS
READ_MPS
MPS_FREE
DENSE_LP
DLPRS
SLPRS
TRAN
QPROG
LCONF
LCONG
NNLPF
NNLPG
CDGRD
FDGRD
FDHES
GDHES
DDJAC
FDJAC
CHGRD
CHHES
CHJAC
GGUES
Chapter 9: Basic Matrix/Vector Operations
Basic Linear Algebra Subprograms
Programming Notes for BLAS Using NVIDIA
CUBLAS_GET
CUBLAS_SET
CHECK_BUFFER_ALLOCATION
CUDA_ERROR_PRINT
Other Matrix/Vector Operations
CRGRG
CCGCG
CRBRB
CCBCB
CRGRB
CRBRG
CCGCB
CCBCG
CRGCG
CRRCR
CRBCB
CSFRG
CHFCG
CSBRB
CHBCB
TRNRR
MXTXF
MXTYF
MXYTF
MRRRR
MCRCR
HRRRR
BLINF
POLRG
MURRV
MURBV
MUCRV
MUCBV
ARBRB
ACBCB
NRIRR
NR1RR
NR2RR
NR1RB
NR1CB
DISL2
DISL1
DISLI
VCONR
VCONC
Extended Precision Arithmetic
Chapter 10: Linear Algebra Operators and Generic Functions
Matrix Optional Data Changes
Dense Matrix Computations
Dense Matrix Functions
Dense Matrix Parallelism Using MPI
Sparse Matrix Computations
.x.
.tx.
.xt.
.hx.
.xh.
.t.
.h.
.i.
.ix.
.xi.
CHOL
COND
DET
DIAG
DIAGONALS
EIG
EYE
FFT
FFT_BOX
IFFT
IFFT_BOX
isNaN
NaN
NORM
ORTH
RAND
RANK
SVD
UNIT
Chapter 11: Utilities
Usage Notes for ScaLAPACK Utilities
ScaLAPACK_SETUP
ScaLAPACK_GETDIM
ScaLAPACK_READ
ScaLAPACK_WRITE
ScaLAPACK_MAP
ScaLAPACK_UNMAP
ScaLAPACK_EXIT
ERROR_POST
SHOW
WRRRN
WRRRL
WRIRN
WRIRL
WRCRN
WRCRL
WROPT
PGOPT
PERMU
PERMA
SORT_REAL
SVRGN
SVRGP
SVIGN
SVIGP
SVRBN
SVRBP
SVIBN
SVIBP
SRCH
ISRCH
SSRCH
ACHAR
IACHAR
ICASE
IICSR
IIDEX
CVTSI
CPSEC
TIMDY
TDATE
NDAYS
NDYIN
IDYWK
VERML
RAND_GEN
RNGET
RNSET
RNOPT
RNIN32
RNGE32
RNSE32
RNIN64
RNGE64
RNSE64
RNUNF
RNUN
FAURE_INIT
FAURE_FREE
FAURE_NEXT
IUMAG
UMAG
DUMAG
PLOTP
PRIME
CONST
CUNIT
HYPOT
MP_SETUP
Reference Material
Contents
User Errors
ERSET
IERCD and N1RTY
Machine-Dependent Constants
IMACH
AMACH
DMACH
IFNAN(X)
UMACH
Matrix Storage Modes
Reserved Names
Deprecated Features and Renamed Routines
Appendix A: GAMS Index
Description
IMSL MATH LIBRARY
Appendix B: Alphabetical Summary of Routines
Appendix C: References
Appendix D: Benchmarking or Timing Programs
Scalar Program Descriptions
Parallel Program Descriptions
Product Support
Contacting IMSL Support