SLATEC Common Mathematical Library -- Table of Contents


SECTION II. Subsidiary Routines


Section II contains the names and purposes of all subsidiary CML routines,
arranged in alphabetical order.  Usually these routines are not referenced
directly by library users.  They are listed here so that users will be able
to avoid duplicating names that are used by the CML and for the benefit of
programmers who may be able to use them in the construction of new routines
for the library.
 
          ASYIK     Subsidiary to BESI and BESK
 
          ASYJY     Subsidiary to BESJ and BESY
 
          BCRH      Subsidiary to CBLKTR
 
          BDIFF     Subsidiary to BSKIN
 
          BESKNU    Subsidiary to BESK
 
          BESYNU    Subsidiary to BESY
 
          BKIAS     Subsidiary to BSKIN
 
          BKISR     Subsidiary to BSKIN
 
          BKSOL     Subsidiary to BVSUP
 
          BLKTR1    Subsidiary to BLKTRI
 
          BNFAC     Subsidiary to BINT4 and BINTK
 
          BNSLV     Subsidiary to BINT4 and BINTK
 
          BSGQ8     Subsidiary to BFQAD
 
          BSPLVD    Subsidiary to FC
 
          BSPLVN    Subsidiary to FC
 
          BSRH      Subsidiary to BLKTRI
 
          BVDER     Subsidiary to BVSUP
 
          BVPOR     Subsidiary to BVSUP
 
          C1MERG    Merge two strings of complex numbers.  Each string is
                    ascending by the real part.
 
          C9LGMC    Compute the log gamma correction factor so that
                    LOG(CGAMMA(Z)) = 0.5*LOG(2.*PI) + (Z-0.5)*LOG(Z) - Z
                    + C9LGMC(Z).
 
          C9LN2R    Evaluate LOG(1+Z) from second order relative accuracy so
                    that  LOG(1+Z) = Z - Z**2/2 + Z**3*C9LN2R(Z).
 
          CACAI     Subsidiary to CAIRY
 
          CACON     Subsidiary to CBESH and CBESK
 
          CASYI     Subsidiary to CBESI and CBESK
 
          CBINU     Subsidiary to CAIRY, CBESH, CBESI, CBESJ, CBESK and CBIRY
 
          CBKNU     Subsidiary to CAIRY, CBESH, CBESI and CBESK
 
          CBLKT1    Subsidiary to CBLKTR
 
          CBUNI     Subsidiary to CBESI and CBESK
 
          CBUNK     Subsidiary to CBESH and CBESK
 
          CCMPB     Subsidiary to CBLKTR
 
          CDCOR     Subroutine CDCOR computes corrections to the Y array.
 
          CDCST     CDCST sets coefficients used by the core integrator CDSTP.
 
          CDIV      Compute the complex quotient of two complex numbers.
 
          CDNTL     Subroutine CDNTL is called to set parameters on the first
                    call to CDSTP, on an internal restart, or when the user has
                    altered MINT, MITER, and/or H.
 
          CDNTP     Subroutine CDNTP interpolates the K-th derivative of Y at
                    TOUT, using the data in the YH array.  If K has a value
                    greater than NQ, the NQ-th derivative is calculated.
 
          CDPSC     Subroutine CDPSC computes the predicted YH values by
                    effectively multiplying the YH array by the Pascal triangle
                    matrix when KSGN is +1, and performs the inverse function
                    when KSGN is -1.
 
          CDPST     Subroutine CDPST evaluates the Jacobian matrix of the right
                    hand side of the differential equations.
 
          CDSCL     Subroutine CDSCL rescales the YH array whenever the step
                    size is changed.
 
          CDSTP     CDSTP performs one step of the integration of an initial
                    value problem for a system of ordinary differential
                    equations.
 
          CDZRO     CDZRO searches for a zero of a function F(N, T, Y, IROOT)
                    between the given values B and C until the width of the
                    interval (B, C) has collapsed to within a tolerance
                    specified by the stopping criterion,
                      ABS(B - C) .LE. 2.*(RW*ABS(B) + AE).
 
          CFFTB     Compute the unnormalized inverse of CFFTF.
 
          CFFTF     Compute the forward transform of a complex, periodic
                    sequence.
 
          CFFTI     Initialize a work array for CFFTF and CFFTB.
 
          CFOD      Subsidiary to DEBDF
 
          CHFCM     Check a single cubic for monotonicity.
 
          CHFIE     Evaluates integral of a single cubic for PCHIA
 
          CHKPR4    Subsidiary to SEPX4
 
          CHKPRM    Subsidiary to SEPELI
 
          CHKSN4    Subsidiary to SEPX4
 
          CHKSNG    Subsidiary to SEPELI
 
          CKSCL     Subsidiary to CBKNU, CUNK1 and CUNK2
 
          CMLRI     Subsidiary to CBESI and CBESK
 
          CMPCSG    Subsidiary to CMGNBN
 
          CMPOSD    Subsidiary to CMGNBN
 
          CMPOSN    Subsidiary to CMGNBN
 
          CMPOSP    Subsidiary to CMGNBN
 
          CMPTR3    Subsidiary to CMGNBN
 
          CMPTRX    Subsidiary to CMGNBN
 
          COMPB     Subsidiary to BLKTRI
 
          COSGEN    Subsidiary to GENBUN
 
          COSQB1    Compute the unnormalized inverse of COSQF1.
 
          COSQF1    Compute the forward cosine transform with odd wave numbers.
 
          CPADD     Subsidiary to CBLKTR
 
          CPEVL     Subsidiary to CPZERO
 
          CPEVLR    Subsidiary to CPZERO
 
          CPROC     Subsidiary to CBLKTR
 
          CPROCP    Subsidiary to CBLKTR
 
          CPROD     Subsidiary to BLKTRI
 
          CPRODP    Subsidiary to BLKTRI
 
          CRATI     Subsidiary to CBESH, CBESI and CBESK
 
          CS1S2     Subsidiary to CAIRY and CBESK
 
          CSCALE    Subsidiary to BVSUP
 
          CSERI     Subsidiary to CBESI and CBESK
 
          CSHCH     Subsidiary to CBESH and CBESK
 
          CSROOT    Compute the complex square root of a complex number.
 
          CUCHK     Subsidiary to SERI, CUOIK, CUNK1, CUNK2, CUNI1, CUNI2 and
                    CKSCL
 
          CUNHJ     Subsidiary to CBESI and CBESK
 
          CUNI1     Subsidiary to CBESI and CBESK
 
          CUNI2     Subsidiary to CBESI and CBESK
 
          CUNIK     Subsidiary to CBESI and CBESK
 
          CUNK1     Subsidiary to CBESK
 
          CUNK2     Subsidiary to CBESK
 
          CUOIK     Subsidiary to CBESH, CBESI and CBESK
 
          CWRSK     Subsidiary to CBESI and CBESK
 
          D1MERG    Merge two strings of ascending double precision numbers.
 
          D1MPYQ    Subsidiary to DNSQ and DNSQE
 
          D1UPDT    Subsidiary to DNSQ and DNSQE
 
          D9AIMP    Evaluate the Airy modulus and phase.
 
          D9ATN1    Evaluate DATAN(X) from first order relative accuracy so
                    that DATAN(X) = X + X**3*D9ATN1(X).
 
          D9B0MP    Evaluate the modulus and phase for the J0 and Y0 Bessel
                    functions.
 
          D9B1MP    Evaluate the modulus and phase for the J1 and Y1 Bessel
                    functions.
 
          D9CHU     Evaluate for large Z  Z**A * U(A,B,Z) where U is the
                    logarithmic confluent hypergeometric function.
 
          D9GMIC    Compute the complementary incomplete Gamma function for A
                    near a negative integer and X small.
 
          D9GMIT    Compute Tricomi's incomplete Gamma function for small
                    arguments.
 
          D9KNUS    Compute Bessel functions EXP(X)*K-SUB-XNU(X) and EXP(X)*
                    K-SUB-XNU+1(X) for 0.0 .LE. XNU .LT. 1.0.
 
          D9LGIC    Compute the log complementary incomplete Gamma function
                    for large X and for A .LE. X.
 
          D9LGIT    Compute the logarithm of Tricomi's incomplete Gamma
                    function with Perron's continued fraction for large X and
                    A .GE. X.
 
          D9LGMC    Compute the log Gamma correction factor so that
                    LOG(DGAMMA(X)) = LOG(SQRT(2*PI)) + (X-5.)*LOG(X) - X
                    + D9LGMC(X).
 
          D9LN2R    Evaluate LOG(1+X) from second order relative accuracy so
                    that LOG(1+X) = X - X**2/2 + X**3*D9LN2R(X)
 
          DASYIK    Subsidiary to DBESI and DBESK
 
          DASYJY    Subsidiary to DBESJ and DBESY
 
          DBDIFF    Subsidiary to DBSKIN
 
          DBKIAS    Subsidiary to DBSKIN
 
          DBKISR    Subsidiary to DBSKIN
 
          DBKSOL    Subsidiary to DBVSUP
 
          DBNFAC    Subsidiary to DBINT4 and DBINTK
 
          DBNSLV    Subsidiary to DBINT4 and DBINTK
 
          DBOLSM    Subsidiary to DBOCLS and DBOLS
 
          DBSGQ8    Subsidiary to DBFQAD
 
          DBSKNU    Subsidiary to DBESK
 
          DBSYNU    Subsidiary to DBESY
 
          DBVDER    Subsidiary to DBVSUP
 
          DBVPOR    Subsidiary to DBVSUP
 
          DCFOD     Subsidiary to DDEBDF
 
          DCHFCM    Check a single cubic for monotonicity.
 
          DCHFIE    Evaluates integral of a single cubic for DPCHIA
 
          DCHKW     SLAP WORK/IWORK Array Bounds Checker.
                    This routine checks the work array lengths and interfaces
                    to the SLATEC error handler if a problem is found.
 
          DCOEF     Subsidiary to DBVSUP
 
          DCSCAL    Subsidiary to DBVSUP and DSUDS
 
          DDAINI    Initialization routine for DDASSL.
 
          DDAJAC    Compute the iteration matrix for DDASSL and form the
                    LU-decomposition.
 
          DDANRM    Compute vector norm for DDASSL.
 
          DDASLV    Linear system solver for DDASSL.
 
          DDASTP    Perform one step of the DDASSL integration.
 
          DDATRP    Interpolation routine for DDASSL.
 
          DDAWTS    Set error weight vector for DDASSL.
 
          DDCOR     Subroutine DDCOR computes corrections to the Y array.
 
          DDCST     DDCST sets coefficients used by the core integrator DDSTP.
 
          DDES      Subsidiary to DDEABM
 
          DDNTL     Subroutine DDNTL is called to set parameters on the first
                    call to DDSTP, on an internal restart, or when the user has
                    altered MINT, MITER, and/or H.
 
          DDNTP     Subroutine DDNTP interpolates the K-th derivative of Y at
                    TOUT, using the data in the YH array.  If K has a value
                    greater than NQ, the NQ-th derivative is calculated.
 
          DDOGLG    Subsidiary to DNSQ and DNSQE
 
          DDPSC     Subroutine DDPSC computes the predicted YH values by
                    effectively multiplying the YH array by the Pascal triangle
                    matrix when KSGN is +1, and performs the inverse function
                    when KSGN is -1.
 
          DDPST     Subroutine DDPST evaluates the Jacobian matrix of the right
                    hand side of the differential equations.
 
          DDSCL     Subroutine DDSCL rescales the YH array whenever the step
                    size is changed.
 
          DDSTP     DDSTP performs one step of the integration of an initial
                    value problem for a system of ordinary differential
                    equations.
 
          DDZRO     DDZRO searches for a zero of a function F(N, T, Y, IROOT)
                    between the given values B and C until the width of the
                    interval (B, C) has collapsed to within a tolerance
                    specified by the stopping criterion,
                      ABS(B - C) .LE. 2.*(RW*ABS(B) + AE).
 
          DEFCMN    Subsidiary to DEFC
 
          DEFE4     Subsidiary to SEPX4
 
          DEFEHL    Subsidiary to DERKF
 
          DEFER     Subsidiary to SEPELI
 
          DENORM    Subsidiary to DNSQ and DNSQE
 
          DERKFS    Subsidiary to DERKF
 
          DES       Subsidiary to DEABM
 
          DEXBVP    Subsidiary to DBVSUP
 
          DFCMN     Subsidiary to FC
 
          DFDJC1    Subsidiary to DNSQ and DNSQE
 
          DFDJC3    Subsidiary to DNLS1 and DNLS1E
 
          DFEHL     Subsidiary to DDERKF
 
          DFSPVD    Subsidiary to DFC
 
          DFSPVN    Subsidiary to DFC
 
          DFULMT    Subsidiary to DSPLP
 
          DGAMLN    Compute the logarithm of the Gamma function
 
          DGAMRN    Subsidiary to DBSKIN
 
          DH12      Subsidiary to DHFTI, DLSEI and DWNNLS
 
          DHELS     Internal routine for DGMRES.
 
          DHEQR     Internal routine for DGMRES.
 
          DHKSEQ    Subsidiary to DBSKIN
 
          DHSTRT    Subsidiary to DDEABM, DDEBDF and DDERKF
 
          DHVNRM    Subsidiary to DDEABM, DDEBDF and DDERKF
 
          DINTYD    Subsidiary to DDEBDF
 
          DJAIRY    Subsidiary to DBESJ and DBESY
 
          DLPDP     Subsidiary to DLSEI
 
          DLSI      Subsidiary to DLSEI
 
          DLSOD     Subsidiary to DDEBDF
 
          DLSSUD    Subsidiary to DBVSUP and DSUDS
 
          DMACON    Subsidiary to DBVSUP
 
          DMGSBV    Subsidiary to DBVSUP
 
          DMOUT     Subsidiary to DBOCLS and DFC
 
          DMPAR     Subsidiary to DNLS1 and DNLS1E
 
          DOGLEG    Subsidiary to SNSQ and SNSQE
 
          DOHTRL    Subsidiary to DBVSUP and DSUDS
 
          DORTH     Internal routine for DGMRES.
 
          DORTHR    Subsidiary to DBVSUP and DSUDS
 
          DPCHCE    Set boundary conditions for DPCHIC
 
          DPCHCI    Set interior derivatives for DPCHIC
 
          DPCHCS    Adjusts derivative values for DPCHIC
 
          DPCHDF    Computes divided differences for DPCHCE and DPCHSP
 
          DPCHKT    Compute B-spline knot sequence for DPCHBS.
 
          DPCHNG    Subsidiary to DSPLP
 
          DPCHST    DPCHIP Sign-Testing Routine
 
          DPCHSW    Limits excursion from data for DPCHCS
 
          DPIGMR    Internal routine for DGMRES.
 
          DPINCW    Subsidiary to DSPLP
 
          DPINIT    Subsidiary to DSPLP
 
          DPINTM    Subsidiary to DSPLP
 
          DPJAC     Subsidiary to DDEBDF
 
          DPLPCE    Subsidiary to DSPLP
 
          DPLPDM    Subsidiary to DSPLP
 
          DPLPFE    Subsidiary to DSPLP
 
          DPLPFL    Subsidiary to DSPLP
 
          DPLPMN    Subsidiary to DSPLP
 
          DPLPMU    Subsidiary to DSPLP
 
          DPLPUP    Subsidiary to DSPLP
 
          DPNNZR    Subsidiary to DSPLP
 
          DPOPT     Subsidiary to DSPLP
 
          DPPGQ8    Subsidiary to DPFQAD
 
          DPRVEC    Subsidiary to DBVSUP
 
          DPRWPG    Subsidiary to DSPLP
 
          DPRWVR    Subsidiary to DSPLP
 
          DPSIXN    Subsidiary to DEXINT
 
          DQCHEB    This routine computes the CHEBYSHEV series expansion
                    of degrees 12 and 24 of a function using A
                    FAST FOURIER TRANSFORM METHOD
                    F(X) = SUM(K=1,..,13) (CHEB12(K)*T(K-1,X)),
                    F(X) = SUM(K=1,..,25) (CHEB24(K)*T(K-1,X)),
                    Where T(K,X) is the CHEBYSHEV POLYNOMIAL OF DEGREE K.
 
          DQELG     The routine determines the limit of a given sequence of
                    approximations, by means of the Epsilon algorithm of
                    P.Wynn. An estimate of the absolute error is also given.
                    The condensed Epsilon table is computed. Only those
                    elements needed for the computation of the next diagonal
                    are preserved.
 
          DQFORM    Subsidiary to DNSQ and DNSQE
 
          DQPSRT    This routine maintains the descending ordering in the
                    list of the local error estimated resulting from the
                    interval subdivision process. At each call two error
                    estimates are inserted using the sequential search
                    method, top-down for the largest error estimate and
                    bottom-up for the smallest error estimate.
 
          DQRFAC    Subsidiary to DNLS1, DNLS1E, DNSQ and DNSQE
 
          DQRSLV    Subsidiary to DNLS1 and DNLS1E
 
          DQWGTC    This function subprogram is used together with the
                    routine DQAWC and defines the WEIGHT function.
 
          DQWGTF    This function subprogram is used together with the
                    routine DQAWF and defines the WEIGHT function.
 
          DQWGTS    This function subprogram is used together with the
                    routine DQAWS and defines the WEIGHT function.
 
          DREADP    Subsidiary to DSPLP
 
          DREORT    Subsidiary to DBVSUP
 
          DRKFAB    Subsidiary to DBVSUP
 
          DRKFS     Subsidiary to DDERKF
 
          DRLCAL    Internal routine for DGMRES.
 
          DRSCO     Subsidiary to DDEBDF
 
          DSLVS     Subsidiary to DDEBDF
 
          DSOSEQ    Subsidiary to DSOS
 
          DSOSSL    Subsidiary to DSOS
 
          DSTOD     Subsidiary to DDEBDF
 
          DSTOR1    Subsidiary to DBVSUP
 
          DSTWAY    Subsidiary to DBVSUP
 
          DSUDS     Subsidiary to DBVSUP
 
          DSVCO     Subsidiary to DDEBDF
 
          DU11LS    Subsidiary to DLLSIA
 
          DU11US    Subsidiary to DULSIA
 
          DU12LS    Subsidiary to DLLSIA
 
          DU12US    Subsidiary to DULSIA
 
          DUSRMT    Subsidiary to DSPLP
 
          DVECS     Subsidiary to DBVSUP
 
          DVNRMS    Subsidiary to DDEBDF
 
          DVOUT     Subsidiary to DSPLP
 
          DWNLIT    Subsidiary to DWNNLS
 
          DWNLSM    Subsidiary to DWNNLS
 
          DWNLT1    Subsidiary to WNLIT
 
          DWNLT2    Subsidiary to WNLIT
 
          DWNLT3    Subsidiary to WNLIT
 
          DWRITP    Subsidiary to DSPLP
 
          DWUPDT    Subsidiary to DNLS1 and DNLS1E
 
          DX        Subsidiary to SEPELI
 
          DX4       Subsidiary to SEPX4
 
          DXLCAL    Internal routine for DGMRES.
 
          DXPMU     To compute the values of Legendre functions for DXLEGF.
                    Method: backward mu-wise recurrence for P(-MU,NU,X) for
                    fixed nu to obtain P(-MU2,NU1,X), P(-(MU2-1),NU1,X), ...,
                    P(-MU1,NU1,X) and store in ascending mu order.
 
          DXPMUP    To compute the values of Legendre functions for DXLEGF.
                    This subroutine transforms an array of Legendre functions
                    of the first kind of negative order stored in array PQA
                    into Legendre functions of the first kind of positive
                    order stored in array PQA. The original array is destroyed.
 
          DXPNRM    To compute the values of Legendre functions for DXLEGF.
                    This subroutine transforms an array of Legendre functions
                    of the first kind of negative order stored in array PQA
                    into normalized Legendre polynomials stored in array PQA.
                    The original array is destroyed.
 
          DXPQNU    To compute the values of Legendre functions for DXLEGF.
                    This subroutine calculates initial values of P or Q using
                    power series, then performs forward nu-wise recurrence to
                    obtain P(-MU,NU,X), Q(0,NU,X), or Q(1,NU,X). The nu-wise
                    recurrence is stable for P for all mu and for Q for mu=0,1.
 
          DXPSI     To compute values of the Psi function for DXLEGF.
 
          DXQMU     To compute the values of Legendre functions for DXLEGF.
                    Method: forward mu-wise recurrence for Q(MU,NU,X) for fixed
                    nu to obtain Q(MU1,NU,X), Q(MU1+1,NU,X), ..., Q(MU2,NU,X).
 
          DXQNU     To compute the values of Legendre functions for DXLEGF.
                    Method: backward nu-wise recurrence for Q(MU,NU,X) for
                    fixed mu to obtain Q(MU1,NU1,X), Q(MU1,NU1+1,X), ...,
                    Q(MU1,NU2,X).
 
          DY        Subsidiary to SEPELI
 
          DY4       Subsidiary to SEPX4
 
          DYAIRY    Subsidiary to DBESJ and DBESY
 
          EFCMN     Subsidiary to EFC
 
          ENORM     Subsidiary to SNLS1, SNLS1E, SNSQ and SNSQE
 
          EXBVP     Subsidiary to BVSUP
 
          EZFFT1    EZFFTI calls EZFFT1 with appropriate work array
                    partitioning.
 
          FCMN      Subsidiary to FC
 
          FDJAC1    Subsidiary to SNSQ and SNSQE
 
          FDJAC3    Subsidiary to SNLS1 and SNLS1E
 
          FULMAT    Subsidiary to SPLP
 
          GAMLN     Compute the logarithm of the Gamma function
 
          GAMRN     Subsidiary to BSKIN
 
          H12       Subsidiary to HFTI, LSEI and WNNLS
 
          HKSEQ     Subsidiary to BSKIN
 
          HSTART    Subsidiary to DEABM, DEBDF and DERKF
 
          HSTCS1    Subsidiary to HSTCSP
 
          HVNRM     Subsidiary to DEABM, DEBDF and DERKF
 
          HWSCS1    Subsidiary to HWSCSP
 
          HWSSS1    Subsidiary to HWSSSP
 
          I1MERG    Merge two strings of ascending integers.
 
          IDLOC     Subsidiary to DSPLP
 
          INDXA     Subsidiary to BLKTRI
 
          INDXB     Subsidiary to BLKTRI
 
          INDXC     Subsidiary to BLKTRI
 
          INTYD     Subsidiary to DEBDF
 
          INXCA     Subsidiary to CBLKTR
 
          INXCB     Subsidiary to CBLKTR
 
          INXCC     Subsidiary to CBLKTR
 
          IPLOC     Subsidiary to SPLP
 
          ISDBCG    Preconditioned BiConjugate Gradient Stop Test.
                    This routine calculates the stop test for the BiConjugate
                    Gradient iteration scheme.  It returns a non-zero if the
                    error estimate (the type of which is determined by ITOL)
                    is less than the user specified tolerance TOL.
 
          ISDCG     Preconditioned Conjugate Gradient Stop Test.
                    This routine calculates the stop test for the Conjugate
                    Gradient iteration scheme.  It returns a non-zero if the
                    error estimate (the type of which is determined by ITOL)
                    is less than the user specified tolerance TOL.
 
          ISDCGN    Preconditioned CG on Normal Equations Stop Test.
                    This routine calculates the stop test for the Conjugate
                    Gradient iteration scheme applied to the normal equations.
                    It returns a non-zero if the error estimate (the type of
                    which is determined by ITOL) is less than the user
                    specified tolerance TOL.
 
          ISDCGS    Preconditioned BiConjugate Gradient Squared Stop Test.
                    This routine calculates the stop test for the BiConjugate
                    Gradient Squared iteration scheme.  It returns a non-zero
                    if the error estimate (the type of which is determined by
                    ITOL) is less than the user specified tolerance TOL.
 
          ISDGMR    Generalized Minimum Residual Stop Test.
                    This routine calculates the stop test for the Generalized
                    Minimum RESidual (GMRES) iteration scheme.  It returns a
                    non-zero if the error estimate (the type of which is
                    determined by ITOL) is less than the user specified
                    tolerance TOL.
 
          ISDIR     Preconditioned Iterative Refinement Stop Test.
                    This routine calculates the stop test for the iterative
                    refinement iteration scheme.  It returns a non-zero if the
                    error estimate (the type of which is determined by ITOL)
                    is less than the user specified tolerance TOL.
 
          ISDOMN    Preconditioned Orthomin Stop Test.
                    This routine calculates the stop test for the Orthomin
                    iteration scheme.  It returns a non-zero if the error
                    estimate (the type of which is determined by ITOL) is
                    less than the user specified tolerance TOL.
 
          ISSBCG    Preconditioned BiConjugate Gradient Stop Test.
                    This routine calculates the stop test for the BiConjugate
                    Gradient iteration scheme.  It returns a non-zero if the
                    error estimate (the type of which is determined by ITOL)
                    is less than the user specified tolerance TOL.
 
          ISSCG     Preconditioned Conjugate Gradient Stop Test.
                    This routine calculates the stop test for the Conjugate
                    Gradient iteration scheme.  It returns a non-zero if the
                    error estimate (the type of which is determined by ITOL)
                    is less than the user specified tolerance TOL.
 
          ISSCGN    Preconditioned CG on Normal Equations Stop Test.
                    This routine calculates the stop test for the Conjugate
                    Gradient iteration scheme applied to the normal equations.
                    It returns a non-zero if the error estimate (the type of
                    which is determined by ITOL) is less than the user
                    specified tolerance TOL.
 
          ISSCGS    Preconditioned BiConjugate Gradient Squared Stop Test.
                    This routine calculates the stop test for the BiConjugate
                    Gradient Squared iteration scheme.  It returns a non-zero
                    if the error estimate (the type of which is determined by
                    ITOL) is less than the user specified tolerance TOL.
 
          ISSGMR    Generalized Minimum Residual Stop Test.
                    This routine calculates the stop test for the Generalized
                    Minimum RESidual (GMRES) iteration scheme.  It returns a
                    non-zero if the error estimate (the type of which is
                    determined by ITOL) is less than the user specified
                    tolerance TOL.
 
          ISSIR     Preconditioned Iterative Refinement Stop Test.
                    This routine calculates the stop test for the iterative
                    refinement iteration scheme.  It returns a non-zero if the
                    error estimate (the type of which is determined by ITOL)
                    is less than the user specified tolerance TOL.
 
          ISSOMN    Preconditioned Orthomin Stop Test.
                    This routine calculates the stop test for the Orthomin
                    iteration scheme.  It returns a non-zero if the error
                    estimate (the type of which is determined by ITOL) is
                    less than the user specified tolerance TOL.
 
          IVOUT     Subsidiary to SPLP
 
          J4SAVE    Save or recall global variables needed by error
                    handling routines.
 
          JAIRY     Subsidiary to BESJ and BESY
 
          LA05AD    Subsidiary to DSPLP
 
          LA05AS    Subsidiary to SPLP
 
          LA05BD    Subsidiary to DSPLP
 
          LA05BS    Subsidiary to SPLP
 
          LA05CD    Subsidiary to DSPLP
 
          LA05CS    Subsidiary to SPLP
 
          LA05ED    Subsidiary to DSPLP
 
          LA05ES    Subsidiary to SPLP
 
          LMPAR     Subsidiary to SNLS1 and SNLS1E
 
          LPDP      Subsidiary to LSEI
 
          LSAME     Test two characters to determine if they are the same
                    letter, except for case.
 
          LSI       Subsidiary to LSEI
 
          LSOD      Subsidiary to DEBDF
 
          LSSODS    Subsidiary to BVSUP
 
          LSSUDS    Subsidiary to BVSUP
 
          MACON     Subsidiary to BVSUP
 
          MC20AD    Subsidiary to DSPLP
 
          MC20AS    Subsidiary to SPLP
 
          MGSBV     Subsidiary to BVSUP
 
          MINSO4    Subsidiary to SEPX4
 
          MINSOL    Subsidiary to SEPELI
 
          MPADD     Subsidiary to DQDOTA and DQDOTI
 
          MPADD2    Subsidiary to DQDOTA and DQDOTI
 
          MPADD3    Subsidiary to DQDOTA and DQDOTI
 
          MPBLAS    Subsidiary to DQDOTA and DQDOTI
 
          MPCDM     Subsidiary to DQDOTA and DQDOTI
 
          MPCHK     Subsidiary to DQDOTA and DQDOTI
 
          MPCMD     Subsidiary to DQDOTA and DQDOTI
 
          MPDIVI    Subsidiary to DQDOTA and DQDOTI
 
          MPERR     Subsidiary to DQDOTA and DQDOTI
 
          MPMAXR    Subsidiary to DQDOTA and DQDOTI
 
          MPMLP     Subsidiary to DQDOTA and DQDOTI
 
          MPMUL     Subsidiary to DQDOTA and DQDOTI
 
          MPMUL2    Subsidiary to DQDOTA and DQDOTI
 
          MPMULI    Subsidiary to DQDOTA and DQDOTI
 
          MPNZR     Subsidiary to DQDOTA and DQDOTI
 
          MPOVFL    Subsidiary to DQDOTA and DQDOTI
 
          MPSTR     Subsidiary to DQDOTA and DQDOTI
 
          MPUNFL    Subsidiary to DQDOTA and DQDOTI
 
          OHTROL    Subsidiary to BVSUP
 
          OHTROR    Subsidiary to BVSUP
 
          ORTHO4    Subsidiary to SEPX4
 
          ORTHOG    Subsidiary to SEPELI
 
          ORTHOL    Subsidiary to BVSUP
 
          ORTHOR    Subsidiary to BVSUP
 
          PASSB     Calculate the fast Fourier transform of subvectors of
                    arbitrary length.
 
          PASSB2    Calculate the fast Fourier transform of subvectors of
                    length two.
 
          PASSB3    Calculate the fast Fourier transform of subvectors of
                    length three.
 
          PASSB4    Calculate the fast Fourier transform of subvectors of
                    length four.
 
          PASSB5    Calculate the fast Fourier transform of subvectors of
                    length five.
 
          PASSF     Calculate the fast Fourier transform of subvectors of
                    arbitrary length.
 
          PASSF2    Calculate the fast Fourier transform of subvectors of
                    length two.
 
          PASSF3    Calculate the fast Fourier transform of subvectors of
                    length three.
 
          PASSF4    Calculate the fast Fourier transform of subvectors of
                    length four.
 
          PASSF5    Calculate the fast Fourier transform of subvectors of
                    length five.
 
          PCHCE     Set boundary conditions for PCHIC
 
          PCHCI     Set interior derivatives for PCHIC
 
          PCHCS     Adjusts derivative values for PCHIC
 
          PCHDF     Computes divided differences for PCHCE and PCHSP
 
          PCHKT     Compute B-spline knot sequence for PCHBS.
 
          PCHNGS    Subsidiary to SPLP
 
          PCHST     PCHIP Sign-Testing Routine
 
          PCHSW     Limits excursion from data for PCHCS
 
          PGSF      Subsidiary to CBLKTR
 
          PIMACH    Subsidiary to HSTCSP, HSTSSP and HWSCSP
 
          PINITM    Subsidiary to SPLP
 
          PJAC      Subsidiary to DEBDF
 
          PNNZRS    Subsidiary to SPLP
 
          POISD2    Subsidiary to GENBUN
 
          POISN2    Subsidiary to GENBUN
 
          POISP2    Subsidiary to GENBUN
 
          POS3D1    Subsidiary to POIS3D
 
          POSTG2    Subsidiary to POISTG
 
          PPADD     Subsidiary to BLKTRI
 
          PPGQ8     Subsidiary to PFQAD
 
          PPGSF     Subsidiary to CBLKTR
 
          PPPSF     Subsidiary to CBLKTR
 
          PPSGF     Subsidiary to BLKTRI
 
          PPSPF     Subsidiary to BLKTRI
 
          PROC      Subsidiary to CBLKTR
 
          PROCP     Subsidiary to CBLKTR
 
          PROD      Subsidiary to BLKTRI
 
          PRODP     Subsidiary to BLKTRI
 
          PRVEC     Subsidiary to BVSUP
 
          PRWPGE    Subsidiary to SPLP
 
          PRWVIR    Subsidiary to SPLP
 
          PSGF      Subsidiary to BLKTRI
 
          PSIXN     Subsidiary to EXINT
 
          PYTHAG    Compute the complex square root of a complex number without
                    destructive overflow or underflow.
 
          QCHEB     This routine computes the CHEBYSHEV series expansion
                    of degrees 12 and 24 of a function using A
                    FAST FOURIER TRANSFORM METHOD
                    F(X) = SUM(K=1,..,13) (CHEB12(K)*T(K-1,X)),
                    F(X) = SUM(K=1,..,25) (CHEB24(K)*T(K-1,X)),
                    Where T(K,X) is the CHEBYSHEV POLYNOMIAL OF DEGREE K.
 
          QELG      The routine determines the limit of a given sequence of
                    approximations, by means of the Epsilon algorithm of
                    P. Wynn. An estimate of the absolute error is also given.
                    The condensed Epsilon table is computed. Only those
                    elements needed for the computation of the next diagonal
                    are preserved.
 
          QFORM     Subsidiary to SNSQ and SNSQE
 
          QPSRT     Subsidiary to QAGE, QAGIE, QAGPE, QAGSE, QAWCE, QAWOE and
                    QAWSE
 
          QRFAC     Subsidiary to SNLS1, SNLS1E, SNSQ and SNSQE
 
          QRSOLV    Subsidiary to SNLS1 and SNLS1E
 
          QS2I1D    Sort an integer array, moving an integer and DP array.
                    This routine sorts the integer array IA and makes the same
                    interchanges in the integer array JA and the double pre-
                    cision array A.  The array IA may be sorted in increasing
                    order or decreasing order.  A slightly modified QUICKSORT
                    algorithm is used.
 
          QS2I1R    Sort an integer array, moving an integer and real array.
                    This routine sorts the integer array IA and makes the same
                    interchanges in the integer array JA and the real array A.
                    The array IA may be sorted in increasing order or decreas-
                    ing order.  A slightly modified QUICKSORT algorithm is
                    used.
 
          QWGTC     This function subprogram is used together with the
                    routine QAWC and defines the WEIGHT function.
 
          QWGTF     This function subprogram is used together with the
                    routine QAWF and defines the WEIGHT function.
 
          QWGTS     This function subprogram is used together with the
                    routine QAWS and defines the WEIGHT function.
 
          R1MPYQ    Subsidiary to SNSQ and SNSQE
 
          R1UPDT    Subsidiary to SNSQ and SNSQE
 
          R9AIMP    Evaluate the Airy modulus and phase.
 
          R9ATN1    Evaluate ATAN(X) from first order relative accuracy so that
                    ATAN(X) = X + X**3*R9ATN1(X).
 
          R9CHU     Evaluate for large Z  Z**A * U(A,B,Z) where U is the
                    logarithmic confluent hypergeometric function.
 
          R9GMIC    Compute the complementary incomplete Gamma function for A
                    near a negative integer and for small X.
 
          R9GMIT    Compute Tricomi's incomplete Gamma function for small
                    arguments.
 
          R9KNUS    Compute Bessel functions EXP(X)*K-SUB-XNU(X) and EXP(X)*
                    K-SUB-XNU+1(X) for 0.0 .LE. XNU .LT. 1.0.
 
          R9LGIC    Compute the log complementary incomplete Gamma function
                    for large X and for A .LE. X.
 
          R9LGIT    Compute the logarithm of Tricomi's incomplete Gamma
                    function with Perron's continued fraction for large X and
                    A .GE. X.
 
          R9LGMC    Compute the log Gamma correction factor so that
                    LOG(GAMMA(X)) = LOG(SQRT(2*PI)) + (X-.5)*LOG(X) - X
                    + R9LGMC(X).
 
          R9LN2R    Evaluate LOG(1+X) from second order relative accuracy so
                    that LOG(1+X) = X - X**2/2 + X**3*R9LN2R(X).
 
          RADB2     Calculate the fast Fourier transform of subvectors of
                    length two.
 
          RADB3     Calculate the fast Fourier transform of subvectors of
                    length three.
 
          RADB4     Calculate the fast Fourier transform of subvectors of
                    length four.
 
          RADB5     Calculate the fast Fourier transform of subvectors of
                    length five.
 
          RADBG     Calculate the fast Fourier transform of subvectors of
                    arbitrary length.
 
          RADF2     Calculate the fast Fourier transform of subvectors of
                    length two.
 
          RADF3     Calculate the fast Fourier transform of subvectors of
                    length three.
 
          RADF4     Calculate the fast Fourier transform of subvectors of
                    length four.
 
          RADF5     Calculate the fast Fourier transform of subvectors of
                    length five.
 
          RADFG     Calculate the fast Fourier transform of subvectors of
                    arbitrary length.
 
          REORT     Subsidiary to BVSUP
 
          RFFTB     Compute the backward fast Fourier transform of a real
                    coefficient array.
 
          RFFTF     Compute the forward transform of a real, periodic sequence.
 
          RFFTI     Initialize a work array for RFFTF and RFFTB.
 
          RKFAB     Subsidiary to BVSUP
 
          RSCO      Subsidiary to DEBDF
 
          RWUPDT    Subsidiary to SNLS1 and SNLS1E
 
          S1MERG    Merge two strings of ascending real numbers.
 
          SBOLSM    Subsidiary to SBOCLS and SBOLS
 
          SCHKW     SLAP WORK/IWORK Array Bounds Checker.
                    This routine checks the work array lengths and interfaces
                    to the SLATEC error handler if a problem is found.
 
          SCLOSM    Subsidiary to SPLP
 
          SCOEF     Subsidiary to BVSUP
 
          SDAINI    Initialization routine for SDASSL.
 
          SDAJAC    Compute the iteration matrix for SDASSL and form the
                    LU-decomposition.
 
          SDANRM    Compute vector norm for SDASSL.
 
          SDASLV    Linear system solver for SDASSL.
 
          SDASTP    Perform one step of the SDASSL integration.
 
          SDATRP    Interpolation routine for SDASSL.
 
          SDAWTS    Set error weight vector for SDASSL.
 
          SDCOR     Subroutine SDCOR computes corrections to the Y array.
 
          SDCST     SDCST sets coefficients used by the core integrator SDSTP.
 
          SDNTL     Subroutine SDNTL is called to set parameters on the first
                    call to SDSTP, on an internal restart, or when the user has
                    altered MINT, MITER, and/or H.
 
          SDNTP     Subroutine SDNTP interpolates the K-th derivative of Y at
                    TOUT, using the data in the YH array.  If K has a value
                    greater than NQ, the NQ-th derivative is calculated.
 
          SDPSC     Subroutine SDPSC computes the predicted YH values by
                    effectively multiplying the YH array by the Pascal triangle
                    matrix when KSGN is +1, and performs the inverse function
                    when KSGN is -1.
 
          SDPST     Subroutine SDPST evaluates the Jacobian matrix of the right
                    hand side of the differential equations.
 
          SDSCL     Subroutine SDSCL rescales the YH array whenever the step
                    size is changed.
 
          SDSTP     SDSTP performs one step of the integration of an initial
                    value problem for a system of ordinary differential
                    equations.
 
          SDZRO     SDZRO searches for a zero of a function F(N, T, Y, IROOT)
                    between the given values B and C until the width of the
                    interval (B, C) has collapsed to within a tolerance
                    specified by the stopping criterion,
                      ABS(B - C) .LE. 2.*(RW*ABS(B) + AE).
 
          SHELS     Internal routine for SGMRES.
 
          SHEQR     Internal routine for SGMRES.
 
          SLVS      Subsidiary to DEBDF
 
          SMOUT     Subsidiary to FC and SBOCLS
 
          SODS      Subsidiary to BVSUP
 
          SOPENM    Subsidiary to SPLP
 
          SORTH     Internal routine for SGMRES.
 
          SOSEQS    Subsidiary to SOS
 
          SOSSOL    Subsidiary to SOS
 
          SPELI4    Subsidiary to SEPX4
 
          SPELIP    Subsidiary to SEPELI
 
          SPIGMR    Internal routine for SGMRES.
 
          SPINCW    Subsidiary to SPLP
 
          SPINIT    Subsidiary to SPLP
 
          SPLPCE    Subsidiary to SPLP
 
          SPLPDM    Subsidiary to SPLP
 
          SPLPFE    Subsidiary to SPLP
 
          SPLPFL    Subsidiary to SPLP
 
          SPLPMN    Subsidiary to SPLP
 
          SPLPMU    Subsidiary to SPLP
 
          SPLPUP    Subsidiary to SPLP
 
          SPOPT     Subsidiary to SPLP
 
          SREADP    Subsidiary to SPLP
 
          SRLCAL    Internal routine for SGMRES.
 
          STOD      Subsidiary to DEBDF
 
          STOR1     Subsidiary to BVSUP
 
          STWAY     Subsidiary to BVSUP
 
          SUDS      Subsidiary to BVSUP
 
          SVCO      Subsidiary to DEBDF
 
          SVD       Perform the singular value decomposition of a rectangular
                    matrix.
 
          SVECS     Subsidiary to BVSUP
 
          SVOUT     Subsidiary to SPLP
 
          SWRITP    Subsidiary to SPLP
 
          SXLCAL    Internal routine for SGMRES.
 
          TEVLC     Subsidiary to CBLKTR
 
          TEVLS     Subsidiary to BLKTRI
 
          TRI3      Subsidiary to GENBUN
 
          TRIDQ     Subsidiary to POIS3D
 
          TRIS4     Subsidiary to SEPX4
 
          TRISP     Subsidiary to SEPELI
 
          TRIX      Subsidiary to GENBUN
 
          U11LS     Subsidiary to LLSIA
 
          U11US     Subsidiary to ULSIA
 
          U12LS     Subsidiary to LLSIA
 
          U12US     Subsidiary to ULSIA
 
          USRMAT    Subsidiary to SPLP
 
          VNWRMS    Subsidiary to DEBDF
 
          WNLIT     Subsidiary to WNNLS
 
          WNLSM     Subsidiary to WNNLS
 
          WNLT1     Subsidiary to WNLIT
 
          WNLT2     Subsidiary to WNLIT
 
          WNLT3     Subsidiary to WNLIT
 
          XERBLA    Error handler for the Level 2 and Level 3 BLAS Routines.
 
          XERCNT    Allow user control over handling of errors.
 
          XERHLT    Abort program execution and print error message.
 
          XERPRN    Print error messages processed by XERMSG.
 
          XERSVE    Record that an error has occurred.
 
          XPMU      To compute the values of Legendre functions for XLEGF.
                    Method: backward mu-wise recurrence for P(-MU,NU,X) for
                    fixed nu to obtain P(-MU2,NU1,X), P(-(MU2-1),NU1,X), ...,
                    P(-MU1,NU1,X) and store in ascending mu order.
 
          XPMUP     To compute the values of Legendre functions for XLEGF.
                    This subroutine transforms an array of Legendre functions
                    of the first kind of negative order stored in array PQA
                    into Legendre functions of the first kind of positive
                    order stored in array PQA. The original array is destroyed.
 
          XPNRM     To compute the values of Legendre functions for XLEGF.
                    This subroutine transforms an array of Legendre functions
                    of the first kind of negative order stored in array PQA
                    into normalized Legendre polynomials stored in array PQA.
                    The original array is destroyed.
 
          XPQNU     To compute the values of Legendre functions for XLEGF.
                    This subroutine calculates initial values of P or Q using
                    power series, then performs forward nu-wise recurrence to
                    obtain P(-MU,NU,X), Q(0,NU,X), or Q(1,NU,X). The nu-wise
                    recurrence is stable for P for all mu and for Q for mu=0,1.
 
          XPSI      To compute values of the Psi function for XLEGF.
 
          XQMU      To compute the values of Legendre functions for XLEGF.
                    Method: forward mu-wise recurrence for Q(MU,NU,X) for fixed
                    nu to obtain Q(MU1,NU,X), Q(MU1+1,NU,X), ..., Q(MU2,NU,X).
 
          XQNU      To compute the values of Legendre functions for XLEGF.
                    Method: backward nu-wise recurrence for Q(MU,NU,X) for
                    fixed mu to obtain Q(MU1,NU1,X), Q(MU1,NU1+1,X), ...,
                    Q(MU1,NU2,X).
 
          YAIRY     Subsidiary to BESJ and BESY
 
          ZABS      Subsidiary to ZBESH, ZBESI, ZBESJ, ZBESK, ZBESY, ZAIRY and
                    ZBIRY
 
          ZACAI     Subsidiary to ZAIRY
 
          ZACON     Subsidiary to ZBESH and ZBESK
 
          ZASYI     Subsidiary to ZBESI and ZBESK
 
          ZBINU     Subsidiary to ZAIRY, ZBESH, ZBESI, ZBESJ, ZBESK and ZBIRY
 
          ZBKNU     Subsidiary to ZAIRY, ZBESH, ZBESI and ZBESK
 
          ZBUNI     Subsidiary to ZBESI and ZBESK
 
          ZBUNK     Subsidiary to ZBESH and ZBESK
 
          ZDIV      Subsidiary to ZBESH, ZBESI, ZBESJ, ZBESK, ZBESY, ZAIRY and
                    ZBIRY
 
          ZEXP      Subsidiary to ZBESH, ZBESI, ZBESJ, ZBESK, ZBESY, ZAIRY and
                    ZBIRY
 
          ZKSCL     Subsidiary to ZBESK
 
          ZLOG      Subsidiary to ZBESH, ZBESI, ZBESJ, ZBESK, ZBESY, ZAIRY and
                    ZBIRY
 
          ZMLRI     Subsidiary to ZBESI and ZBESK
 
          ZMLT      Subsidiary to ZBESH, ZBESI, ZBESJ, ZBESK, ZBESY, ZAIRY and
                    ZBIRY
 
          ZRATI     Subsidiary to ZBESH, ZBESI and ZBESK
 
          ZS1S2     Subsidiary to ZAIRY and ZBESK
 
          ZSERI     Subsidiary to ZBESI and ZBESK
 
          ZSHCH     Subsidiary to ZBESH and ZBESK
 
          ZSQRT     Subsidiary to ZBESH, ZBESI, ZBESJ, ZBESK, ZBESY, ZAIRY and
                    ZBIRY
 
          ZUCHK     Subsidiary to SERI, ZUOIK, ZUNK1, ZUNK2, ZUNI1, ZUNI2 and
                    ZKSCL
 
          ZUNHJ     Subsidiary to ZBESI and ZBESK
 
          ZUNI1     Subsidiary to ZBESI and ZBESK
 
          ZUNI2     Subsidiary to ZBESI and ZBESK
 
          ZUNIK     Subsidiary to ZBESI and ZBESK
 
          ZUNK1     Subsidiary to ZBESK
 
          ZUNK2     Subsidiary to ZBESK
 
          ZUOIK     Subsidiary to ZBESH, ZBESI and ZBESK
 
          ZWRSK     Subsidiary to ZBESI and ZBESK