Mark 23 NAG Fortran Library News

At Mark 23 of the NAG Library new functionality has been introduced in addition to improvements in existing areas. The Library
now contains 1704 user-callable routines, all of which are documented, of which 116 are new at this mark.

No new chapters or sub-chapters have been introduced; however there have been extensions in functionality included in the
areas of statistics, nonlinear equations, wavelets, ordinary differential equations, interpolation, surface fitting, optimization,
matrix operations, linear algebra, and special functions.

Chapter C05 (Roots of One or More Transcendental Equations) has a new routine for solving sparse nonlinear systems and a new routine for determining values of the complex Lambert–W
function. Additionally, some routines have beed added to replace existing routines, making it easier to pass information through
to user-supplied functions.

Chapter C06 (Summation of Series) has a routine for summing a Chebyshev series at a vector of points.

Chapter C09 (Wavelet Transforms) has added one-dimensional continuous and two-dimensional discrete wavelet transform routines.

Chapter D02 (Ordinary Differential Equations) has a new suite of routines for solving boundary-value problems by an implementation of the Chebyshev pseudospectral method.

Chapter D04 (Numerical Differentiation) has added an alternative interface to its numerical differentiation routine.

Chapter E01 (Interpolation) has added routines for interpolation of four- and five-dimensional data.

Chapter E02 (Curve and Surface Fitting) has an additional routine for evaluating derivatives of a bicubic spline fit.

Chapter E04 (Minimizing or Maximizing a Function) has a new minimization by quadratic approximation routine.

Chapter E05 (Global Optimization of a Function) has new routines implementing Particle Swarm Optimization. The existing routine for multi-level coordinate search now allows
equality bound constraints.

Chapter F01 (Matrix Operations, Including Inversion) has new routines for matrix exponentials and functions of symmetric/Hermitian matrices; there is also a suite of routines
for converting storage formats of triangular and symmetric matrices.

Chapter F06 (Linear Algebra Support Routines) has new support routines for matrices stored in Rectangular Full Packed format.

Chapter F07 (Linear Equations (LAPACK)) has LAPACK 3.2 mixed-precision Cholesky solvers, pivoted Cholesky factorizations, and routines that perform operations on
matrices in Rectangular Full Packed format.

Chapter F08 (Least Squares and Eigenvalue Problems (LAPACK)) has LAPACK 3.2 routines for computing the singular value decomposition by the fast Jacobi method.

Chapter F16 (Further Linear Algebra Support Routines) has new routines for evaluating norms of banded matrices.

Chapter G01 (Simple Calculations on Statistical Data) has new routines for quantiles of streamed data, bivariate Student's t-distribution and two probability density functions.

Chapter G02 (Correlation and Regression Analysis) has new routines for nearest correlation matrices, hierarchical mixed effects regression, and quantile regression.

Chapter G05 (Random Number Generators) has new generators of bivariate and multivariate copulas, skip-ahead for the Mersenne Twister base generator, skip-ahead
by powers of 2 and weighted sampling without replacement. In addition, the suite of base generators has been extended with the inclusion
of the L'Ecuyer MRG32K3a generator.

Chapter G07 (Univariate Estimation) has new routines for Pareto distribution parameter estimation and outlier detection by the method of Peirce.

Chapter G08 (Nonparametric Statistics) has routines for the Anderson–Darling goodness-of-fit test.

Chapter G12 (Survival Analysis) has a new routine for computing rank statistics when comparing survival curves.

Chapter S (Approximations of Special Functions) has a new routine for the scaled log gamma function and the S30 sub-chapter has a new routine for computing Greeks for Heston's
model option pricing formula.

The 116 new user-callable routines included in the NAG Library at Mark 23 are as follows.

RoutineName |
Purpose |

C05AUF | Zero of continuous function, Brent algorithm, from a given starting value, binary search for interval |

C05AWF | Zero of continuous function, continuation method, from a given starting value |

C05AYF | Zero of continuous function in a given interval, Brent algorithm |

C05BBF | Values of Lambert's W function, W(z) |

C05QBF | Solution of a system of nonlinear equations using function values only (easy-to-use) |

C05QCF | Solution of a system of nonlinear equations using function values only (comprehensive) |

C05QDF | Solution of a system of nonlinear equations using function values only (reverse communication) |

C05QSF | Solution of a sparse system of nonlinear equations using function values only (easy-to-use) |

C05RBF | Solution of a system of nonlinear equations using first derivatives (easy-to-use) |

C05RCF | Solution of a system of nonlinear equations using first derivatives (comprehensive) |

C05RDF | Solution of a system of nonlinear equations using first derivatives (reverse communication) |

C05ZDF | Check user's routine for calculating first derivatives of a set of nonlinear functions of several variables |

C06DCF | Sum of a Chebyshev series at a set of points |

C09ABF | Two-dimensional wavelet filter initialization |

C09BAF | One-dimensional real continuous wavelet transform |

C09EAF | Two-dimensional discrete wavelet transform |

C09EBF | Two-dimensional inverse discrete wavelet transform |

C09ECF | Two-dimensional multi-level discrete wavelet transform |

C09EDF | Two-dimensional inverse multi-level discrete wavelet transform |

D02UAF | Coefficients of Chebyshev interpolating polynomial from function values on Chebyshev grid |

D02UBF | Function or low-order-derivative values on Chebyshev grid from coefficients of Chebyshev interpolating polynomial |

D02UCF | Chebyshev Gauss–Lobatto grid generation |

D02UDF | Differentiate a function by the FFT using function values on Chebyshev grid |

D02UEF | Solve linear constant coefficient boundary value problem on Chebyshev grid, Integral formulation |

D02UWF | Interpolate a function from Chebyshev grid to uniform grid using barycentric Lagrange interpolation |

D02UYF | Clenshaw–Curtis quadrature weights for integration using computed Chebyshev coefficients |

D02UZF | Chebyshev polynomial evaluation, T_{k}(x) |

D04BAF | Numerical differentiation, user-supplied function values, derivatives up to order 14, derivatives with respect to one real variable |

D04BBF | Generates sample points for function evaluations by D04BAF |

E01TKF | Interpolating functions, modified Shepard's method, four variables |

E01TLF | Interpolated values, evaluate interpolant computed by E01TKF, function and first derivatives, four variables |

E01TMF | Interpolating functions, modified Shepard's method, five variables |

E01TNF | Interpolated values, evaluate interpolant computed by E01TMF, function and first derivatives, five variables |

E02DHF | Evaluation of spline surface at mesh of points with derivatives |

E04JCF | Minimum by quadratic approximation, function of several variables, simple bounds, using function values only |

E05SAF | Global optimization using particle swarm algorithm (PSO), bound constraints only |

E05SBF | Global optimization using particle swarm algorithm (PSO), comprehensive |

E05ZKF | Option setting routine for E05SAF and E05SBF |

E05ZLF | Option getting routine for E05SAF and E05SBF |

F01EDF | Real symmetric matrix exponential |

F01EFF | Function of a real symmetric matrix |

F01FCF | Complex matrix exponential |

F01FDF | Complex Hermitian matrix exponential |

F01FFF | Function of a complex Hermitian matrix |

F01VAF | Copies a real triangular matrix from full format to packed format scheme |

F01VBF | Copies a complex triangular matrix from full format to packed format scheme |

F01VCF | Copies a real triangular matrix from packed format to full format scheme |

F01VDF | Copies a complex triangular matrix from packed format to full format scheme |

F01VEF | Copies a real triangular matrix from full format to Rectangular Full Packed format scheme |

F01VFF | Copies a complex triangular matrix from full format to Rectangular Full Packed format scheme |

F01VGF | Copies a real triangular matrix from Rectangular Full Packed format to full format scheme |

F01VHF | Copies a complex triangular matrix from Rectangular Full Packed format to full format scheme |

F01VJF | Copies a real triangular matrix from packed format to Rectangular Full Packed format scheme |

F01VKF | Copies a complex triangular matrix from packed format to Rectangular Full Packed format scheme |

F01VLF | Copies a real triangular matrix from Rectangular Full Packed format to packed format scheme |

F01VMF | Copies a complex triangular matrix from Rectangular Full Packed format to packed format scheme |

F03BAF | Determinant of real matrix, matrix already factorized by F07ADF (DGETRF) |

F03BFF | Determinant of real symmetric positive definite matrix |

F03BHF | Determinant of real symmetric positive definite banded matrix |

F03BNF | Determinant of complex matrix |

F06ABF | Constructs a modified Givens transformation matrix |

F06EQF | Applies a modified givens transformation to two row vectors |

F06WAF | 1-norm, ∞-norm, Frobenius norm, largest absolute element, real symmetric matrix, Rectangular Full Packed format |

F06WBF | Solves a system of equations with multiple right-hand sides, real triangular coefficient matrix, Rectangular Full Packed format |

F06WCF | Rank-k update of a real symmetric matrix, Rectangular Full Packed format |

F06WNF | 1-norm, ∞-norm, Frobenius norm, largest absolute element, complex Hermitian matrix, Rectangular Full Packed format |

F06WPF | Solves system of equations with multiple right-hand sides, complex triangular coefficient matrix, Rectangular Full Packed format |

F06WQF | Rank-k update of a complex Hermitian matrix, Rectangular Full Packed format |

F07FCF | Uses the Cholesky factorization to compute the solution for a real symmetric positive definite system of linear equations |

F07FQF | Uses the Cholesky factorization to compute the solution for a complex Hermitian positive definite system of linear equations |

F07KDF | Cholesky factorization of real symmetric positive semidefinite matrix |

F07KRF | Cholesky factorization of complex Hermitian positive semidefinite matrix |

F07WDF | Cholesky factorization of real symmetric positive definite matrix, Rectangular Full Packed format |

F07WEF | Solution of real symmetric positive definite system of linear equations, multiple right-hand sides, coefficient matrix already factorized by F07WDF (DPFTRF), Rectangular Full Packed format |

F07WJF | Inverse of real symmetric positive definite matrix, matrix already factorized by F07WDF (DPFTRF), Rectangular Full Packed format |

F07WKF | Inverse of real triangular matrix, Rectangular Full Packed format, expert driver |

F07WRF | Cholesky factorization of complex Hermitian positive definite matrix, Rectangular Full Packed format |

F07WSF | Solution of complex Hermitian positive definite system of linear equations, multiple right-hand sides, coefficient matrix already factorized by F07WRF (ZPFTRF), Rectangular Full Packed format |

F07WWF | Inverse of complex Hermitian positive definite matrix, matrix already factorized by F07WRF (ZPFTRF), Rectangular Full Packed format |

F07WXF | Inverse of complex triangular matrix, Rectangular Full Packed format |

F08KHF | Computes the singular value decomposition of a real matrix, optionally computing the left and/or right singular vectors (preconditioned Jacobi) |

F08KJF | Computes the singular value decomposition of a real matrix, optionally computing the left and/or right singular vectors (fast Jacobi) |

F16RBF | 1-norm, ∞-norm, Frobenius norm, largest absolute element, real band matrix |

F16UBF | 1-norm, ∞-norm, Frobenius norm, largest absolute element, complex band matrix |

G01ANF | Calculates approximate quantiles from a data stream of known size |

G01APF | Calculates approximate quantiles from a data stream of unknown size |

G01HCF | Computes probabilities for the bivariate Student's t-distribution |

G01KAF | Calculates the value for the probability density function of the Normal distribution at a chosen point |

G01KFF | Calculates the value for the probability density function of the gamma distribution at a chosen point |

G02ABF | Computes the nearest correlation matrix to a real square matrix, augmented G02AAF to incorporate weights and bounds |

G02AEF | Computes the nearest correlation matrix with k-factor structure to a real square matrix |

G02JCF | Hierarchical mixed effects regression, initialization routine for G02JDF and G02JEF |

G02JDF | Hierarchical mixed effects regression using Restricted Maximum Likelihood (REML) |

G02JEF | Hierarchical mixed effects regression using Maximum Likelihood (ML) |

G02QFF | Quantile linear regression, simple interface, independent, identically distributed (IID) errors |

G02QGF | Quantile linear regression, comprehensive interface |

G02ZKF | Option setting routine for G02QGF |

G02ZLF | Option getting routine for G02QGF |

G05KKF | Primes a pseudorandom number generator for generating multiple streams using skip-ahead, skipping ahead a power of 2 |

G05NEF | Pseudorandom sample, without replacement, unequal weights |

G05REF | Generates a matrix of pseudorandom numbers from a bivariate Clayton/Cook–Johnson copula |

G05RFF | Generates a matrix of pseudorandom numbers from a bivariate Frank copula |

G05RGF | Generates a matrix of pseudorandom numbers from a bivariate Plackett copula |

G05RHF | Generates a matrix of pseudorandom numbers from a multivariate Clayton/Cook–Johnson copula |

G05RJF | Generates a matrix of pseudorandom numbers from a multivariate Frank copula |

G05RKF | Generates a matrix of pseudorandom numbers from a Gumbel–Hougaard copula |

G07BFF | Estimates parameter values of the generalized Pareto distribution |

G07GAF | Outlier detection using method of Peirce, raw data or single variance supplied |

G07GBF | Outlier detection using method of Peirce, two variances supplied |

G08CHF | Calculates the Anderson–Darling goodness-of-fit test statistic |

G08CJF | Calculates the Anderson–Darling goodness-of-fit test statistic and its probability for the case of uniformly distributed data |

G08CKF | Calculates the Anderson–Darling goodness-of-fit test statistic and its probability for the case of a fully-unspecified Normal distribution |

G08CLF | Calculates the Anderson–Darling goodness-of-fit test statistic and its probability for the case of an unspecified exponential distribution |

G12ABF | Computes rank statistics for comparing survival curves |

S14AHF | Scaled log gamma function |

S30NBF | Heston's model option pricing formula with Greeks |

The following routines have been withdrawn from the NAG Library at Mark 23. Warning of their withdrawal was included in the
NAG Library Manual at Mark 22, together with advice on which routines to use instead. See the document ‘Advice on Replacement Calls for Withdrawn/Superseded Routines’ for more detailed guidance.

The routines listed below are scheduled for withdrawal from the NAG Library, because improved routines have now been included
in the Library. You are advised to stop using routines which are scheduled for withdrawal and to use recommended replacement
routines instead. See the document ‘Advice on Replacement Calls for Withdrawn/Superseded Routines’ for more detailed guidance, including advice on how to change a call to the old routine into a call to its recommended replacement.

The following routines will be withdrawn at Mark 24.

Routines Scheduledfor Withdrawal |
Replacement Routine(s) |

E04CCF | E04CBF |

E04ZCF | No longer required |

G05HKF | G05PDF |

G05HLF | G05PEF |

G05HMF | G05PFF |

G05HNF | G05PGF |

G05KAF | G05SAF |

G05KBF | G05KFF |

G05KCF | G05KGF |

G05KEF | G05TBF |

G05LAF | G05SKF |

G05LBF | G05SNF |

G05LCF | G05SDF |

G05LDF | G05SHF |

G05LEF | G05SBF |

G05LFF | G05SJF |

G05LGF | G05SQF |

G05LHF | G05SPF |

G05LJF | G05SFF |

G05LKF | G05SMF |

G05LLF | G05SJF |

G05LMF | G05SSF |

G05LNF | G05SLF |

G05LPF | G05SRF |

G05LQF | G05SGF |

G05LXF | G05RYF |

G05LYF | G05RZF |

G05LZF | G05RZF |

G05MAF | G05TLF |

G05MBF | G05TCF |

G05MCF | G05THF |

G05MDF | G05TFF |

G05MEF | G05TKF |

G05MJF | G05TAF |

G05MKF | G05TJF |

G05MLF | G05TEF |

G05MRF | G05TGF |

G05MZF | G05TDF |

G05NAF | G05NCF |

G05NBF | G05NDF |

G05PAF | G05PHF |

G05PCF | G05PJF |

G05QAF | G05PXF |

G05QBF | G05PYF |

G05QDF | G05PZF |

G05RAF | G05RDF |

G05RBF | G05RCF |

G05YCF | G05YLF |

G05YDF | G05YMF |

G05YEF | G05YLF |

G05YFF | G05YMF |

G05YGF | G05YLF |

G05YHF | G05YMF |

G13DCF | G13DDF |

P01ABF | No longer required |

X02DAF | No longer required |

X02DJF | No longer required |

The following routines have been superseded, but will not be withdrawn from the Library until Mark 25 at the earliest.

SupersededRoutine |
Replacement Routine(s) |

C05ADF | C05AYF |

C05AGF | C05AUF |

C05AJF | C05AWF |

C05NBF | C05QBF |

C05NCF | C05QCF |

C05NDF | C05QDF |

C05PBF | C05RBF |

C05PCF | C05RCF |

C05PDF | C05RDF |

C05ZAF | C05ZDF |

C06DBF | C06DCF |

F03AAF | F07ADF (DGETRF) and F03BAF |

F03ABF | F07FDF (DPOTRF) and F03BFF |

F03ACF | F07HDF (DPBTRF) and F03BHF |

F03ADF | F07ARF (ZGETRF) and F03BNF |

F03AEF | F07FDF (DPOTRF) and F03BFF |

F03AFF | F07ADF (DGETRF) and F03BAF |

F04AFF | No replacement. |

F04AGF | No replacement. |

F04AHF | No replacement. |

F04AJF | No replacement. |