Mark 21 News – NAG SMP Library (pdf version)
NAG Library Manual

Mark 21 News – NAG SMP Library

+ Contents

1  Introduction

In this document we describe the differences between the last release ‘Release 2’ and this latest release, now named ‘Mark 21’, of the NAG SMP Library. There are two main differences:
  1. Release 2 was based on Mark 19 of the NAG Fortran Library while this latest release is based on Mark 21 of the NAG Fortran Library; and
  2. in Mark 21, a larger number of routines have been specially tuned to maximize their performance on shared memory parallel systems.

1.1  New Functionality

At Mark 21 of the NAG SMP Library new functionality has been introduced in addition to improvements in existing areas. The Library now contains 1533 user-callable routines, all of which are documented, and 375 are new at this mark.
New chapters on large scale eigenproblems and mesh generation have been introduced, and extensions have been included in the areas of optimization, dense and banded linear algebra, direct solution of large scale linear systems, simple statistical calculations, regression, random numbers, zeros of polynomials, partial differential equations, time series analysis, and special functions.
In addition the provision of thread safe versions of existing routines has been significantly extended in Chapter C05 (Roots of One or More Transcendental Equations), Chapter D03 (Partial Differential Equations), Chapter E04 (Minimizing or Maximizing a Function) and Chapter G05 (Random Number Generators) to aid users developing multithreaded applications.
The new Chapter D06 (Mesh Generation) has routines for generating 2-D meshes together with a number of associated utility routines and the new Chapter F12 (Large Scale Eigenproblems) has routines for the solution of symmetric and nonsymmetric standard and generalized large scale eigenvalue problems. Chapter F11 has been renamed as Large Scale Linear Systems, and new routines for the direct solution of sparse problems have been added.
Chapter E04 (Minimizing or Maximizing a Function) has been updated with new routines for the solution of LP, QP and nonlinear programming problems with sparse linear constraints.
Chapter F07 (Linear Equations (LAPACK)) and Chapter F08 (Least-squares and Eigenvalue Problems (LAPACK)) have been extended to include all the LAPACK driver routines, thus allowing the solution of most problems with a call to a single routine rather than multiple calls to LAPACK computational routines. A comprehensive suite of driver routines for the solution of dense and banded linear equations has also been added to Chapter F04 (Simultaneous Linear Equations).
Routines for finding the roots of real and complex cubic and quartic equations have been added to Chapter C02 (Zeros of Polynomials).
Chapter D03 (Partial Differential Equations) now includes routines for solving Black–Scholes equations.
Routines for Landau and Vavilov distributions have been added to Chapter G01 (Simple Calculations on Statistical Data), new routines for stepwise regression and mixed effects regression have been included in Chapter G02 (Correlation and Regression Analysis), and a number of new random number generators, including Copulas and improved quasi-random number generators, generation of univariate GARCH, asymmetric GARCH and EGARCH processes, and generators for further distributions have been added to Chapter G05 (Random Number Generators).
Chapter G13 (Time Series Analysis) has been extended with routines for parameter estimation and forecasting for univariate regression GARCH, asymmetric GARCH and EGARCH processes.
Chapter S (Approximations of Special Functions) has new routines for polygamma functions, zeros of Bessel functions, Jacobian functions, elliptic integrals and Legendre and associated Legendre functions. Variant routines for the log Gamma function, and Bessel function of the 1st kind have also been added.

1.2  New SMP parallelism and other optimizations

SMP Parallel versions of many of the new Chapter F11 sparse direct solvers, and Chapter F12 sparse eigenproblem are included, and parallelism has been extended to many more LAPACK routines. In addition, improvements in underlying NAG auxiliary routines improves the usage of the SMP optimized dense linear algebra by routines in the areas of optimization, ODEs and PDEs, and statistics.

1.3  Documentation

The NAG Fortran Library Manual has undergone a fundamental change since Release 2 and the Essential Introduction and the Introduction to the NAG SMP Library are essential reading for all users of the NAG Fortran Library.

2  Tuned Routines

The following is a list of user-callable routines that have been parallelized, or otherwise optimized, since the last release. There are 67 of these routines at this release in the area of dense and sparse linear algebra. See the document ‘Tuned and Enhanced Routines in the NAG SMP Library’ for a full list of tuned routines.
Note: on some implementations, the equivalent vendor library routines may be substituted for some of the following list – consult the Users' Note for your implementation for further information.
F04AFF Solution of real symmetric positive-definite simultaneous linear equations using iterative refinement (coefficient matrix already factorized by F03AEF)
F04AGF Solution of real symmetric positive-definite simultaneous linear equations (coefficient matrix already factorized by F03AEF)
F04AHF Solution of real simultaneous linear equations using iterative refinement (coefficient matrix already factorized by F03AFF)
F04AJF Solution of real simultaneous linear equations (coefficient matrix already factorized by F03AFF)
F07AHF Refined solution with error bounds of real system of linear equations, multiple right-hand sides
F07AVF Refined solution with error bounds of complex system of linear equations, multiple right-hand sides
F07BDF LU factorization of real m by n band matrix
F07BEF Solution of real band system of linear equations, multiple right-hand sides, matrix already factorized by F07BDF (DGBTRF)
F07BHF Refined solution with error bounds of real band system of linear equations, multiple right-hand sides
F07BRF LU factorization of complex m by n band matrix
F07BSF Solution of complex band system of linear equations, multiple right-hand sides, matrix already factorized by F07BRF (ZGBTRF)
F07BVF Refined solution with error bounds of complex band system of linear equations, multiple right-hand sides
F07CHF Refined solution with error bounds of real tridiagonal system of linear equations, multiple right-hand sides
F07CVF Refined solution with error bounds of complex tridiagonal system of linear equations, multiple right-hand sides
F07FHF Refined solution with error bounds of real symmetric positive-definite system of linear equations, multiple right-hand sides
F07FVF Refined solution with error bounds of complex Hermitian positive-definite system of linear equations, multiple right-hand sides
F07GEF Solution of real symmetric positive-definite system of linear equations, multiple right-hand sides, matrix already factorized by F07GDF (DPPTRF), packed storage
F07GHF Refined solution with error bounds of real symmetric positive-definite system of linear equations, multiple right-hand sides, packed storage
F07GSF Solution of complex Hermitian positive-definite system of linear equations, multiple right-hand sides, matrix already factorized by F07GRF (ZPPTRF), packed storage
F07GVF Refined solution with error bounds of complex Hermitian positive-definite system of linear equations, multiple right-hand sides, packed storage
F07HEF Solution of real symmetric positive-definite band system of linear equations, multiple right-hand sides, matrix already factorized by F07HDF (DPBTRF)
F07HHF Refined solution with error bounds of real symmetric positive-definite band system of linear equations, multiple right-hand sides
F07HSF Solution of complex Hermitian positive-definite band system of linear equations, multiple right-hand sides, matrix already factorized by F07HRF (ZPBTRF)
F07HVF Refined solution with error bounds of complex Hermitian positive-definite band system of linear equations, multiple right-hand sides
F07JHF Refined solution with error bounds of real symmetric positive-definite tridiagonal system of linear equations, multiple right-hand sides
F07JVF Refined solution with error bounds of complex Hermitian positive-definite tridiagonal system of linear equations, multiple right-hand sides
F07MHF Refined solution with error bounds of real symmetric indefinite system of linear equations, multiple right-hand sides
F07MVF Refined solution with error bounds of complex Hermitian indefinite system of linear equations, multiple right-hand sides
F07NVF Refined solution with error bounds of complex symmetric system of linear equations, multiple right-hand sides
F07PHF Refined solution with error bounds of real symmetric indefinite system of linear equations, multiple right-hand sides, packed storage
F07PVF Refined solution with error bounds of complex Hermitian indefinite system of linear equations, multiple right-hand sides, packed storage
F07QVF Refined solution with error bounds of complex symmetric system of linear equations, multiple right-hand sides, packed storage
F07THF Error bounds for solution of real triangular system of linear equations, multiple right-hand sides
F07TVF Error bounds for solution of complex triangular system of linear equations, multiple right-hand sides
F07UEF Solution of real triangular system of linear equations, multiple right-hand sides, packed storage
F07UHF Error bounds for solution of real triangular system of linear equations, multiple right-hand sides, packed storage
F07USF Solution of complex triangular system of linear equations, multiple right-hand sides, packed storage
F07UVF Error bounds for solution of complex triangular system of linear equations, multiple right-hand sides, packed storage
F07VEF Solution of real band triangular system of linear equations, multiple right-hand sides
F07VHF Error bounds for solution of real band triangular system of linear equations, multiple right-hand sides
F07VSF Solution of complex band triangular system of linear equations, multiple right-hand sides
F07VVF Error bounds for solution of complex band triangular system of linear equations, multiple right-hand sides
F08HEF Orthogonal reduction of real symmetric band matrix to symmetric tridiagonal form
F08HSF Unitary reduction of complex Hermitian band matrix to real symmetric tridiagonal form
F08JJF Selected eigenvalues of real symmetric tridiagonal matrix by bisection
F08JKF Selected eigenvectors of real symmetric tridiagonal matrix by inverse iteration, storing eigenvectors in real array
F08JXF Selected eigenvectors of real symmetric tridiagonal matrix by inverse iteration, storing eigenvectors in complex array
F08PEF Eigenvalues and Schur factorization of real upper Hessenberg matrix reduced from real general matrix
F08PKF Selected right and/or left eigenvectors of real upper Hessenberg matrix by inverse iteration
F08PSF Eigenvalues and Schur factorization of complex upper Hessenberg matrix reduced from complex general matrix
F08PXF Selected right and/or left eigenvectors of complex upper Hessenberg matrix by inverse iteration
F08TAF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, packed storage
F08TBF Computes selected eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, packed storage
F08TCF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, packed storage (divide-and-conquer)
F08TNF Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem, packed storage
F08TPF Computes selected eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem, packed storage
F08TQF Computes selected eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem, packed storage (divide-and-conquer)
F11BSF Complex sparse non-Hermitian linear systems, preconditioned RGMRES, CGS, Bi-CGSTAB or TFQMR method
F11GSF Complex sparse Hermitian linear systems, preconditioned conjugate gradient or Lanczos
F11MEF LU factorization of real sparse matrix
F11MFF Solution of real sparse simultaneous linear equations (coefficient matrix already factorized)
F11MHF Refined solution with error bounds of real system of linear equations, multiple right-hand sides
F11MKF Real sparse nonsymmetric matrix matrix multiply, compressed column storage
F11XNF Complex sparse non-Hermitian matrix vector multiply
F11XSF Complex sparse Hermitian matrix vector multiply
F12ABF Implements a reverse communication interface for the Implicitly Restarted Arnoldi iteration for computing selected eigenvalues and, optionally, eigenvectors of a real nonsymmetric sparse (standard or generalized) eigenproblem
F12AGF Computes approximations to selected eigenvalues of a real nonsymmetric banded (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace

3  Enhanced Routines

These routines call one or more of the tuned routines as part of their core operations and may thereby exhibit improved performance and scalability. There are 159 newly enhanced routines at this mark; these include the areas of zeros of polynomials, PDEs, optimization, dense and sparse linear algebra, and multivariate statistics.
C02AKF All zeros of real cubic equation
C02ALF All zeros of real quartic equation
C02AMF All zeros of complex cubic equation
C02ANF All zeros of complex quartic equation
D03FAF Elliptic PDE, Helmholtz equation, three-dimensional Cartesian co-ordinates
D03NCF Finite difference solution of the Black–Scholes equations
E02RAF Padé approximants
E04USF Minimum of a sum of squares, nonlinear constraints, sequential QP method, using function values and optionally first derivatives (comprehensive)
E04YCF Covariance matrix for nonlinear least-squares problem (unconstrained)
F02ECF Selected eigenvalues and eigenvectors of real nonsymmetric matrix (Black Box)
F02WDF QR factorization, possibly followed by SVD
F02WUF SVD of real upper triangular matrix (Black Box)
F02XUF SVD of complex upper triangular matrix (Black Box)
F03ADF Determinant of complex matrix (Black Box)
F03AFF LU factorization and determinant of real matrix
F04AEF Solution of real simultaneous linear equations with multiple right-hand sides using iterative refinement (Black Box)
F04ATF Solution of real simultaneous linear equations, one right-hand side using iterative refinement (Black Box)
F04BAF Computes the solution and error-bound to a real system of linear equations
F04BBF Computes the solution and error-bound to a real banded system of linear equations
F04BDF Computes the solution and error-bound to a real symmetric positive-definite system of linear equations
F04BEF Computes the solution and error-bound to a real symmetric positive-definite system of linear equations, packed storage
F04BFF Computes the solution and error-bound to a real symmetric positive-definite banded system of linear equations
F04CAF Computes the solution and error-bound to a complex system of linear equations
F04CBF Computes the solution and error-bound to a complex banded system of linear equations
F04CDF Computes the solution and error-bound to a complex Hermitian positive-definite system of linear equations
F04CEF Computes the solution and error-bound to a complex Hermitian positive-definite system of linear equations, packed storage
F04CFF Computes the solution and error-bound to a complex Hermitian positive-definite banded system of linear equations
F04JGF Least-squares (if rank =n) or minimal least-squares (if rank <n) solution of m real equations in n unknowns, rank n, mn
F07AAF Computes the solution to a real system of linear equations
F07ABF Uses the LU factorization to compute the solution, error-bound and condition estimate for a real system of linear equations
F07ANF Computes the solution to a complex system of linear equations
F07APF Uses the LU factorization to compute the solution, error-bound and condition estimate for a complex system of linear equations
F07BAF Computes the solution to a real banded system of linear equations
F07BBF Uses the LU factorization to compute the solution, error-bound and condition estimate for a real banded system of linear equations
F07BNF Computes the solution to a complex banded system of linear equations
F07BPF Uses the LU factorization to compute the solution, error-bound and condition estimate for a complex banded system of linear equations
F07CBF Uses the LU factorization to compute the solution, error-bound and condition estimate for a real tridiagonal system of linear equations
F07CPF Uses the LU factorization to compute the solution, error-bound and condition estimate for a complex tridiagonal system of linear equations
F07FAF Computes the solution to a real symmetric positive-definite system of linear equations
F07FBF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite system of linear equations
F07FNF Computes the solution to a complex Hermitian positive-definite system of linear equations
F07FPF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite system of linear equations
F07GAF Computes the solution to a real symmetric positive-definite system of linear equations, packed storage
F07GBF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite system of linear equations, packed storage
F07GNF Computes the solution to a complex Hermitian positive-definite system of linear equations, packed storage
F07GPF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite system of linear equations, packed storage
F07HAF Computes the solution to a real symmetric positive-definite banded system of linear equations
F07HBF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite banded system of linear equations
F07HNF Computes the solution to a complex Hermitian positive-definite banded system of linear equations
F07HPF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite banded system of linear equations
F07JBF Uses the modified Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite tridiagonal system of linear equations
F07JPF Uses the modified Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite tridiagonal system of linear equations
F07MBF Uses the diagonal pivoting factorization to compute the solution to a real symmetric system of linear equations
F07MPF Uses the diagonal pivoting factorization to compute the solution to a complex Hermitian system of linear equations
F07NPF Uses the diagonal pivoting factorization to compute the solution to a complex symmetric system of linear equations
F07PBF Uses the diagonal pivoting factorization to compute the solution to a real symmetric system of linear equations, packed storage
F07PPF Uses the diagonal pivoting factorization to compute the solution to a complex Hermitian system of linear equations, packed storage
F07QPF Uses the diagonal pivoting factorization to compute the solution to a complex symmetric system of linear equations, packed storage
F08AAF Solves an overdetermined or underdetermined real linear system
F08ANF Solves an overdetermined or underdetermined complex linear system
F08BAF Computes the minimum-norm solution to a real linear least-squares problem
F08BFF QR factorization of real general rectangular matrix with column pivoting, using BLAS-3
F08BNF Computes the minimum-norm solution to a complex linear least-squares problem
F08BTF QR factorization of complex general rectangular matrix with column pivoting, using BLAS-3
F08FAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric matrix
F08FBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix
F08FDF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix (Relatively Robust Representations)
F08FNF Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix
F08FPF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix
F08FRF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix (Relatively Robust Representations)
F08GAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric matrix, packed storage
F08GBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix, packed storage
F08GNF Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix, packed storage
F08GPF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix, packed storage
F08HAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric band matrix
F08HBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric band matrix
F08HNF Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian band matrix
F08HPF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian band matrix
F08JAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix
F08JBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix
F08JDF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix (Relatively Robust Representations)
F08JHF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a matrix reduced to this form (divide-and-conquer)
F08JLF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a symmetric matrix reduced to this form (Relatively Robust Representations)
F08JVF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a complex Hermitian matrix reduced to this form (divide-and-conquer)
F08JYF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a complex Hermitian matrix reduced to this form (Relatively Robust Representations)
F08KAF Computes the minimum-norm solution to a real linear least-squares problem using singular value decomposition
F08KBF Computes the singular value decomposition of a real matrix, optionally computing the left and/or right singular vectors
F08KCF Computes the minimum-norm solution to a real linear least-squares problem using singular value decomposition (divide-and-conquer)
F08KDF Computes the singular value decomposition of a real matrix, optionally computing the left and/or right singular vectors (divide-and-conquer)
F08KNF Computes the minimum-norm solution to a complex linear least-squares problem using singular value decomposition
F08KPF Computes the singular value decomposition of a complex matrix, optionally computing the left and/or right singular vectors
F08KQF Computes the minimum-norm solution to a complex linear least-squares problem using singular value decomposition (divide-and-conquer)
F08KRF Computes the singular value decomposition of a complex matrix, optionally computing the left and/or right singular vectors (divide-and-conquer)
F08MDF Computes the singular value decomposition of a real bidiagonal matrix, optionally computing the singular vectors (divide-and-conquer)
F08NAF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a real nonsymmetric matrix
F08NBF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a real nonsymmetric matrix; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08NNF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a complex nonsymmetric matrix
F08NPF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a complex nonsymmetric matrix; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08PAF Computes for real square nonsymmetric matrix, the eigenvalues, the real Schur form, and, optionally, the matrix of Schur vectors
F08PBF Computes for real square nonsymmetric matrix, the eigenvalues, the real Schur form, and, optionally, the matrix of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08PNF Computes for complex square nonsymmetric matrix, the eigenvalues, the Schur form, and, optionally, the matrix of Schur vectors
F08PPF Computes for real square nonsymmetric matrix, the eigenvalues, the Schur form, and, optionally, the matrix of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08SAF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem
F08SBF Computes selected eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem
F08SCF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem (divide-and-conquer)
F08SNF Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem
F08SPF Computes selected eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem
F08SQF Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem (divide-and-conquer)
F08UAF Computes all the eigenvalues, and optionally, the eigenvectors of a real banded generalized symmetric-definite eigenproblem
F08UBF Computes selected eigenvalues, and optionally, the eigenvectors of a real banded generalized symmetric-definite eigenproblem
F08UCF Computes all the eigenvalues, and optionally, the eigenvectors of a real banded generalized symmetric-definite eigenproblem (divide-and-conquer)
F08UNF Computes all the eigenvalues, and optionally, the eigenvectors of a complex banded generalized Hermitian-definite eigenproblem
F08UPF Computes selected eigenvalues, and optionally, the eigenvectors of a complex banded generalized Hermitian-definite eigenproblem
F08UQF Computes all the eigenvalues, and optionally, the eigenvectors of a complex banded generalized Hermitian-definite eigenproblem (divide-and-conquer)
F08WAF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors
F08WBF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08WNF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors
F08WPF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08XAF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, the generalized real Schur form and, optionally, the left and/or right matrices of Schur vectors
F08XBF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, the generalized real Schur form and, optionally, the left and/or right matrices of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08XNF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, the generalized complex Schur form and, optionally, the left and/or right matrices of Schur vectors
F08XPF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, the generalized complex Schur form and, optionally, the left and/or right matrices of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08ZAF Solves the real linear equality-constrained least-squares (LSE) problem
F08ZBF Solves a real general Gauss–Markov linear model (GLM) problem
F08ZEF Computes a generalized QR factorization of a real matrix pair
F08ZFF Computes a generalized RQ factorization of a real matrix pair
F08ZNF Solves the complex linear equality-constrained least-squares (LSE) problem
F08ZPF Solves a complex general Gauss–Markov linear model (GLM) problem
F08ZSF Computes a generalized QR factorization of a complex matrix pair
F08ZTF Computes a generalized RQ factorization of a complex matrix pair
F11DCF Solution of real sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, preconditioner computed by F11DAF
F11DEF Solution of real sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB, or TFQMR method, Jacobi or SSOR preconditioner (Black Box)
F11DKF Real sparse nonsymmetric linear systems, line Jacobi preconditioner
F11DQF Solution of complex sparse non-Hermitian linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, preconditioner computed by F11DNF (Black Box)
F11DSF Solution of complex sparse non-Hermitian linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, Jacobi or SSOR preconditioner Black Box
F11DXF Complex sparse nonsymmetric linear systems, line Jacobi preconditioner
F11JCF Solution of real sparse symmetric linear system, conjugate gradient/Lanczos method, preconditioner computed by F11JAF (Black Box)
F11JEF Solution of real sparse symmetric linear system, conjugate gradient/Lanczos method, Jacobi or SSOR preconditioner (Black Box)
F11JQF Solution of complex sparse Hermitian linear system, conjugate gradient/Lanczos method, preconditioner computed by F11JNF (Black Box)
F11JSF Solution of complex sparse Hermitian linear system, conjugate gradient/Lanczos method, Jacobi or SSOR preconditioner (Black Box)
F12FCF Returns the converged approximations (as determined by F12ABF) to eigenvalues of a real symmetric sparse (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
F12FGF Computes approximations to selected eigenvalues of a real symmetric banded (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
G01HBF Computes probabilities for the multivariate Normal distribution
G02BYF Computes partial correlation/variance-covariance matrix from correlation/variance-covariance matrix computed by G02BXF
G02DDF Estimates of linear parameters and general linear regression model from updated model
G02DKF Estimates and standard errors of parameters of a general linear regression model for given constraints
G02GKF Estimates and standard errors of parameters of a general linear model for given constraints
G02HDF Robust regression, compute regression with user-supplied functions and weights
G02JAF Linear mixed effects regression using Restricted Maximum Likelihood (REML)
G03FAF Performs principal co-ordinate analysis, classical metric scaling
G05PCF Generates a realisation of a multivariate time series from a VARMA model
G11CAF Returns parameter estimates for the conditional analysis of stratified data
G12BAF Fits Cox's proportional hazard model
G13ADF Univariate time series, preliminary estimation, seasonal ARIMA model
G13DXF Calculates the zeros of a vector autoregressive (or moving average) operator
G13FAF Univariate time series, parameter estimation for either a symmetric GARCH process or a GARCH process with asymmetry of the form (εt-1+γ)2
G13FCF Univariate time series, parameter estimation for a GARCH process with asymmetry of the form (|εt-1|+γεt-1)2
G13FEF Univariate time series, parameter estimation for an asymmetric Glosten, Jagannathan and Runkle (GJR) GARCH process
G13FGF Univariate time series, parameter estimation for an exponential GARCH (EGARCH) process

4  New Routines

The 375 new user-callable routines included in the SMP Library at Mark 21 are as follows.
A00ACF Check availability of a valid licence key
C02AKF All zeros of real cubic equation
C02ALF All zeros of real quartic equation
C02AMF All zeros of complex cubic equation
C02ANF All zeros of complex quartic equation
D03NCF Finite difference solution of the Black–Scholes equations
D03NDF Analytic solution of the Black–Scholes equations
D03NEF Compute average values for D03NDF
D06AAF Generates a two-dimensional mesh using a simple incremental method
D06ABF Generates a two-dimensional mesh using a Delaunay–Voronoi process
D06ACF Generates a two-dimensional mesh using an Advancing-front method
D06BAF Generates a boundary mesh
D06CAF Uses a barycentering technique to smooth a given mesh
D06CBF Generates a sparsity pattern of a Finite Element matrix associated with a given mesh
D06CCF Renumbers a given mesh using Gibbs method
D06DAF Generates a mesh resulting from an affine transformation of a given mesh
D06DBF Joins together two given adjacent (possibly overlapping) meshes
E04NPF Initialization routine for E04NQF
E04NQF LP or QP problem (suitable for sparse problems)
E04NRF Supply optional parameter values for E04NQF from external file
E04NSF Set a single option for E04NQF from a character string
E04NTF Set a single option for E04NQF from an INTEGER argument
E04NUF Set a single option for E04NQF from a double precision argument
E04NXF Get the setting of an INTEGER valued option of E04NQF
E04NYF Get the setting of a double precision valued option of E04NQF
E04USF Minimum of a sum of squares, nonlinear constraints, sequential QP method, using function values and optionally first derivatives (comprehensive)
E04VGF Initialization routine for E04VHF
E04VHF General sparse nonlinear optimizer
E04VJF Determine the pattern of nonzeros in the Jacobian matrix for E04VHF
E04VKF Supply optional parameter values for E04VHF from external file
E04VLF Set a single option for E04VHF from a character string
E04VMF Set a single option for E04VHF from an INTEGER argument
E04VNF Set a single option for E04VHF from a double precision argument
E04VRF Get the setting of an INTEGER valued option of E04VHF
E04VSF Get the setting of a double precision valued option of E04VHF
E04WBF Initialization routine for E04DGA E04MFA E04NCA E04NFA E04UFA E04UGA E04USA
E04WCF Initialization routine for E04WDF
E04WDF Solves the nonlinear programming (NP) problem
E04WEF Supply optional parameter values for E04WDF from external file
E04WFF Set a single option for E04WDF from a character string
E04WGF Set a single option for E04WDF from an INTEGER argument
E04WHF Set a single option for E04WDF from a double precision argument
E04WJF Determine whether an E04WDF option has been set or not
E04WKF Get the setting of an INTEGER valued option of E04WDF
E04WLF Get the setting of a double precision valued option of E04WDF
F04BAF Computes the solution and error-bound to a real system of linear equations
F04BBF Computes the solution and error-bound to a real banded system of linear equations
F04BCF Computes the solution and error-bound to a real tridiagonal system of linear equations
F04BDF Computes the solution and error-bound to a real symmetric positive-definite system of linear equations
F04BEF Computes the solution and error-bound to a real symmetric positive-definite system of linear equations, packed storage
F04BFF Computes the solution and error-bound to a real symmetric positive-definite banded system of linear equations
F04BGF Computes the solution and error-bound to a real symmetric positive-definite tridiagonal system of linear equations
F04BHF Computes the solution and error-bound to a real symmetric system of linear equations
F04BJF Computes the solution and error-bound to a real symmetric system of linear equations, packed storage
F04CAF Computes the solution and error-bound to a complex system of linear equations
F04CBF Computes the solution and error-bound to a complex banded system of linear equations
F04CCF Computes the solution and error-bound to a complex tridiagonal system of linear equations
F04CDF Computes the solution and error-bound to a complex Hermitian positive-definite system of linear equations
F04CEF Computes the solution and error-bound to a complex Hermitian positive-definite system of linear equations, packed storage
F04CFF Computes the solution and error-bound to a complex Hermitian positive-definite banded system of linear equations
F04CGF Computes the solution and error-bound to a complex Hermitian positive-definite tridiagonal system of linear equations
F04CHF Computes the solution and error-bound to a complex Hermitian system of linear equations
F04CJF Computes the solution and error-bound to a complex Hermitian system of linear equations, packed storage
F04DHF Computes the solution and error-bound to a complex symmetric system of linear equations
F04DJF Computes the solution and error-bound to a complex symmetric system of linear equations, packed storage.
F06FEF Multiply real vector by reciprocal of scalar
F06KEF Multiply complex vector by reciprocal of real scalar
F06RNF 1-norm, -norm, Frobenius norm, largest absolute element, real tridiagonal matrix
F06RPF 1-norm, -norm, Frobenius norm, largest absolute element, real symmetric tridiagonal matrix
F06TAF Matrix-vector product, complex symmetric matrix
F06TBF Rank-1 update, complex symetric matrix
F06TCF Matrix-vector product, complex symmetric packed matrix
F06TDF Rank-1 update, complex symetric packed matrix
F06UNF 1-norm, -norm, Frobenius norm, largest absolute element, complex tridiagonal matrix
F06UPF 1-norm, -norm, Frobenius norm, largest absolute element, complex Hermitian tridiagonal matrix
F07AAF Computes the solution to a real system of linear equations
F07ABF Uses the LU factorization to compute the solution, error-bound and condition estimate for a real system of linear equations
F07AFF Computes row and column scalings intended to equilibrate a general real matrix and reduce its condition number
F07ANF Computes the solution to a complex system of linear equations
F07APF Uses the LU factorization to compute the solution, error-bound and condition estimate for a complex system of linear equations
F07ATF Computes row and column scalings intended to equilibrate a general complex matrix and reduce its condition number
F07BAF Computes the solution to a real banded system of linear equations
F07BBF Uses the LU factorization to compute the solution, error-bound and condition estimate for a real banded system of linear equations
F07BFF Computes row and column scalings intended to equilibrate a real banded matrix and reduce its condition number
F07BNF Computes the solution to a complex banded system of linear equations
F07BPF Uses the LU factorization to compute the solution, error-bound and condition estimate for a complex banded system of linear equations
F07BTF Computes row and column scalings intended to equilibrate a complex banded matrix and reduce its condition number
F07CAF Computes the solution to a real tridiagonal system of linear equations
F07CBF Uses the LU factorization to compute the solution, error-bound and condition estimate for a real tridiagonal system of linear equations
F07CDF LU factorization of real tridiagonal matrix
F07CEF Solves a real tridiagonal system of linear equations using the LU factorization computed by F07CDF (DGTTRF)
F07CGF Estimates the reciprocal of the condition number of a real tridiagonal matrix using the LU factorization computed by F07CDF (DGTTRF)
F07CHF Refined solution with error bounds of real tridiagonal system of linear equations, multiple right-hand sides
F07CNF Computes the solution to a complex tridiagonal system of linear equations
F07CPF Uses the LU factorization to compute the solution, error-bound and condition estimate for a complex tridiagonal system of linear equations
F07CRF LU factorization of complex tridiagonal matrix
F07CSF Solves a complex tridiagonal system of linear equations using the LU factorization computed by F07CDF (DGTTRF)
F07CUF Estimates the reciprocal of the condition number of a complex tridiagonal matrix using the LU factorization computed by F07CDF (DGTTRF)
F07CVF Refined solution with error bounds of complex tridiagonal system of linear equations, multiple right-hand sides
F07FAF Computes the solution to a real symmetric positive-definite system of linear equations
F07FBF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite system of linear equations
F07FFF Computes row and column scalings intended to equilibrate a real symmetric positive-definite matrix and reduce its condition number
F07FNF Computes the solution to a complex Hermitian positive-definite system of linear equations
F07FPF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite system of linear equations
F07FTF Computes row and column scalings intended to equilibrate a complex Hermitian positive-definite matrix and reduce its condition number
F07GAF Computes the solution to a real symmetric positive-definite system of linear equations, packed storage
F07GBF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite system of linear equations, packed storage
F07GFF Computes row and column scalings intended to equilibrate a real symmetric positive-definite matrix and reduce its condition number, packed storage
F07GNF Computes the solution to a complex Hermitian positive-definite system of linear equations, packed storage
F07GPF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite system of linear equations, packed storage
F07GTF Computes row and column scalings intended to equilibrate a complex Hermitian positive-definite matrix and reduce its condition number, packed storage
F07HAF Computes the solution to a real symmetric positive-definite banded system of linear equations
F07HBF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite banded system of linear equations
F07HFF Computes row and column scalings intended to equilibrate a real symmetric positive-definite banded matrix and reduce its condition number
F07HNF Computes the solution to a complex Hermitian positive-definite banded system of linear equations
F07HPF Uses the Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite banded system of linear equations
F07HTF Computes row and column scalings intended to equilibrate a complex Hermitian positive-definite banded matrix and reduce its condition number
F07JAF Computes the solution to a real symmetric positive-definite tridiagonal system of linear equations
F07JBF Uses the modified Cholesky factorization to compute the solution, error-bound and condition estimate for a real symmetric positive-definite tridiagonal system of linear equations
F07JDF Computes the modified Cholesky factorization of a real symmetric positive-definite tridiagonal matrix
F07JEF Solution of real symmetric tridiagonal linear system, matrix already factorized by F07JDF (DPTTRF)
F07JGF Computes the reciprocal of the condition number of a real symmetric positive-definite tridiagonal system using the modified Cholesky factorization computed by F07JDF (DPTTRF)
F07JHF Refined solution with error bounds of real symmetric positive-definite tridiagonal system of linear equations, multiple right-hand sides
F07JNF Computes the solution to a complex Hermitian positive-definite tridiagonal system of linear equations
F07JPF Uses the modified Cholesky factorization to compute the solution, error-bound and condition estimate for a complex Hermitian positive-definite tridiagonal system of linear equations
F07JRF Computes the modified Cholesky factorization of a complex Hermitian positive-definite tridiagonal matrix
F07JSF Solves a complex Hermitian positive-definite tridiagonal system using the modified Cholesky factorization computed by F07JRF (ZPTTRF)
F07JUF Computes the reciprocal of the condition number of a complex Hermitian positive-definite tridiagonal system using the modified Cholesky factorization computed by F07JRF (ZPTTRF)
F07JVF Refined solution with error bounds of complex Hermitian positive-definite tridiagonal system of linear equations, multiple right-hand sides
F07MAF Computes the solution to a real symmetric system of linear equations
F07MBF Uses the diagonal pivoting factorization to compute the solution to a real symmetric system of linear equations
F07MNF Computes the solution to a complex Hermitian system of linear equations
F07MPF Uses the diagonal pivoting factorization to compute the solution to a complex Hermitian system of linear equations
F07NNF Computes the solution to a complex symmetric system of linear equations
F07NPF Uses the diagonal pivoting factorization to compute the solution to a complex symmetric system of linear equations
F07PAF Computes the solution to a real symmetric system of linear equations, packed storage
F07PBF Uses the diagonal pivoting factorization to compute the solution to a real symmetric system of linear equations, packed storage
F07PNF Computes the solution to a complex Hermitian system of linear equations, packed storage
F07PPF Uses the diagonal pivoting factorization to compute the solution to a complex Hermitian system of linear equations, packed storage
F07QNF Computes the solution to a complex symmetric system of linear equations, packed storage
F07QPF Uses the diagonal pivoting factorization to compute the solution to a complex symmetric system of linear equations, packed storage
F08AAF Solves an overdetermined or underdetermined real linear system
F08ANF Solves an overdetermined or underdetermined complex linear system
F08BAF Computes the minimum-norm solution to a real linear least-squares problem
F08BFF QR factorization of real general rectangular matrix with column pivoting, using BLAS-3
F08BHF Reduces a real upper trapezoidal matrix to upper triangular form
F08BKF Apply orthogonal transformation determined by F08BHF (DTZRZF)
F08BNF Computes the minimum-norm solution to a complex linear least-squares problem
F08BTF QR factorization of complex general rectangular matrix with column pivoting, using BLAS-3
F08BVF Reduces a complex upper trapezoidal matrix to upper triangular form
F08BXF Apply unitary transformation determined by F08BVF (ZTZRZF)
F08CEF QL factorization of real general rectangular matrix
F08CFF Form all or part of orthogonal Q from QL factorization determined by F08CEF (DGEQLF)
F08CGF Apply orthogonal transformation determined by F08CEF (DGEQLF)
F08CHF RQ factorization of real general rectangular matrix
F08CJF Form all or part of orthogonal Q from RQ factorization determined by F08CHF (DGERQF)
F08CKF Apply orthogonal transformation determined by F08CHF (DGERQF)
F08CSF QL factorization of complex general rectangular matrix
F08CTF Form all or part of orthogonal Q from QL factorization determined by F08CSF (ZGEQLF)
F08CUF Apply unitary transformation determined by F08CSF (ZGEQLF)
F08CVF RQ factorization of complex general rectangular matrix
F08CWF Form all or part of orthogonal Q from RQ factorization determined by F08CVF (ZGERQF)
F08CXF Apply unitary transformation determined by F08CVF (ZGERQF)
F08FAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric matrix
F08FBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix
F08FDF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix (Relatively Robust Representations)
F08FLF Computes the reciprocal condition numbers for the eigenvectors of a real symmetric or complex Hermitian matrix or for the left or right singular vectors of a general matrix
F08FNF Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix
F08FPF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix
F08FRF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix (Relatively Robust Representations)
F08GAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric matrix, packed storage
F08GBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric matrix, packed storage
F08GNF Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix, packed storage
F08GPF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian matrix, packed storage
F08HAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric band matrix
F08HBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric band matrix
F08HNF Computes all eigenvalues and, optionally, eigenvectors of a complex Hermitian band matrix
F08HPF Computes selected eigenvalues and, optionally, eigenvectors of a complex Hermitian band matrix
F08JAF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix
F08JBF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix
F08JDF Computes selected eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix (Relatively Robust Representations)
F08JHF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a matrix reduced to this form (divide-and-conquer)
F08JLF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a symmetric matrix reduced to this form (Relatively Robust Representations)
F08JVF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a complex Hermitian matrix reduced to this form (divide-and-conquer)
F08JYF Computes all eigenvalues and, optionally, eigenvectors of a real symmetric tridiagonal matrix or a complex Hermitian matrix reduced to this form (Relatively Robust Representations)
F08KAF Computes the minimum-norm solution to a real linear least-squares problem using singular value decomposition
F08KBF Computes the singular value decomposition of a real matrix, optionally computing the left and/or right singular vectors
F08KCF Computes the minimum-norm solution to a real linear least-squares problem using singular value decomposition (divide-and-conquer)
F08KDF Computes the singular value decomposition of a real matrix, optionally computing the left and/or right singular vectors (divide-and-conquer)
F08KNF Computes the minimum-norm solution to a complex linear least-squares problem using singular value decomposition
F08KPF Computes the singular value decomposition of a complex matrix, optionally computing the left and/or right singular vectors
F08KQF Computes the minimum-norm solution to a complex linear least-squares problem using singular value decomposition (divide-and-conquer)
F08KRF Computes the singular value decomposition of a complex matrix, optionally computing the left and/or right singular vectors (divide-and-conquer)
F08MDF Computes the singular value decomposition of a real bidiagonal matrix, optionally computing the singular vectors (divide-and-conquer)
F08NAF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a real nonsymmetric matrix
F08NBF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a real nonsymmetric matrix; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08NNF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a complex nonsymmetric matrix
F08NPF Computes all eigenvalues and, optionally, left and/or right eigenvectors of a complex nonsymmetric matrix; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08PAF Computes for real square nonsymmetric matrix, the eigenvalues, the real Schur form, and, optionally, the matrix of Schur vectors
F08PBF Computes for real square nonsymmetric matrix, the eigenvalues, the real Schur form, and, optionally, the matrix of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08PNF Computes for complex square nonsymmetric matrix, the eigenvalues, the Schur form, and, optionally, the matrix of Schur vectors
F08PPF Computes for real square nonsymmetric matrix, the eigenvalues, the Schur form, and, optionally, the matrix of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08SAF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem
F08SBF Computes selected eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem
F08SCF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem (divide-and-conquer)
F08SNF Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem
F08SPF Computes selected eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem
F08SQF Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem (divide-and-conquer)
F08TAF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, packed storage
F08TBF Computes selected eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, packed storage
F08TCF Computes all the eigenvalues, and optionally, the eigenvectors of a real generalized symmetric-definite eigenproblem, packed storage (divide-and-conquer)
F08TNF Computes all the eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem, packed storage
F08TPF Computes selected eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem, packed storage
F08TQF Computes selected eigenvalues, and optionally, the eigenvectors of a complex generalized Hermitian-definite eigenproblem, packed storage (divide-and-conquer)
F08UAF Computes all the eigenvalues, and optionally, the eigenvectors of a real banded generalized symmetric-definite eigenproblem
F08UBF Computes selected eigenvalues, and optionally, the eigenvectors of a real banded generalized symmetric-definite eigenproblem
F08UCF Computes all the eigenvalues, and optionally, the eigenvectors of a real banded generalized symmetric-definite eigenproblem (divide-and-conquer)
F08UNF Computes all the eigenvalues, and optionally, the eigenvectors of a complex banded generalized Hermitian-definite eigenproblem
F08UPF Computes selected eigenvalues, and optionally, the eigenvectors of a complex banded generalized Hermitian-definite eigenproblem
F08UQF Computes all the eigenvalues, and optionally, the eigenvectors of a complex banded generalized Hermitian-definite eigenproblem (divide-and-conquer)
F08VAF Computes the generalized singular value decomposition of a real matrix pair
F08VEF Computes orthogonal matrices as processing steps for computing the generalized singular value decomposition of a real matrix pair
F08VNF Computes the generalized singular value decomposition of a complex matrix pair
F08VSF Computes orthogonal matrices as processing steps for computing the generalized singular value decomposition of a complex matrix pair
F08WAF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors
F08WBF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08WEF Orthogonal reduction of a pair of real general matrices to generalized upper Hessenberg form
F08WHF Balance a pair of real general matrices
F08WJF Transform eigenvectors of a pair of real balanced matrices to those of original matrix pair supplied to F08WHF (DGGBAL)
F08WNF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors
F08WPF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, and optionally, the left and/or right generalized eigenvectors; also, optionally, the balancing transformation, the reciprocal condition numbers for the eigenvalues and for the right eigenvectors
F08WSF Unitary reduction of a pair of complex general matrices to generalized upper Hessenberg form
F08WVF Balance a pair of complex general matrices
F08WWF Transform eigenvectors of a pair of complex balanced matrices to those of original matrix pair supplied to F08WVF (ZGGBAL)
F08XAF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, the generalized real Schur form and, optionally, the left and/or right matrices of Schur vectors
F08XBF Computes, for a real nonsymmetric matrix pair, the generalized eigenvalues, the generalized real Schur form and, optionally, the left and/or right matrices of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08XEF Eigenvalues and generalized Schur factorization of real generalized upper Hessenberg form reduced from a pair of real general matrices
F08XNF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, the generalized complex Schur form and, optionally, the left and/or right matrices of Schur vectors
F08XPF Computes, for a complex nonsymmetric matrix pair, the generalized eigenvalues, the generalized complex Schur form and, optionally, the left and/or right matrices of Schur vectors; also, optionally, computes reciprocal condition numbers for selected eigenvalues
F08XSF Eigenvalues and generalized Schur factorization of complex generalized upper Hessenberg form reduced from a pair of complex general matrices
F08YEF Computes the generalized singular value decomposition of a real upper triangular (or trapezoidal) matrix pair
F08YFF Reorders the generalized real Schur decomposition of a real matrix pair using an orthogonal equivalence transformation
F08YGF Reorders the generalized real Schur decomposition of a real matrix pair using an orthogonal equivalence transformation, computes the generalized eigenvalues of the reordered pair and, optionally, computes the estimates of reciprocal condition numbers for eigenvalues and eigenspaces
F08YHF Solves the real-valued generalized Sylvester equation
F08YKF Left and right eigenvectors of a pair of real upper quasi-triangular matrices
F08YLF Estimates reciprocal condition numbers for specified eigenvalues and/or eigenvectors of a real matrix pair in generalized real Schur canonical form
F08YSF Computes the generalized singular value decomposition of a complex upper triangular (or trapezoidal) matrix pair
F08YTF Reorders the generalized Schur decomposition of a complex matrix pair using an unitary equivalence transformation
F08YUF Reorders the generalized Schur decomposition of a complex matrix pair using an unitary equivalence transformation, computes the generalized eigenvalues of the reordered pair and, optionally, computes the estimates of reciprocal condition numbers for eigenvalues and eigenspaces
F08YVF Solves the complex generalized Sylvester equation
F08YXF Left and right eigenvectors of a pair of complex upper triangular matrices
F08YYF Estimates reciprocal condition numbers for specified eigenvalues and/or eigenvectors of a complex matrix pair in generalized Schur canonical form
F08ZAF Solves the real linear equality-constrained least-squares (LSE) problem
F08ZBF Solves a real general Gauss–Markov linear model (GLM) problem
F08ZEF Computes a generalized QR factorization of a real matrix pair
F08ZFF Computes a generalized RQ factorization of a real matrix pair
F08ZNF Solves the complex linear equality-constrained least-squares (LSE) problem
F08ZPF Solves a complex general Gauss–Markov linear model (GLM) problem
F08ZSF Computes a generalized QR factorization of a complex matrix pair
F08ZTF Computes a generalized RQ factorization of a complex matrix pair
F11DXF Complex sparse nonsymmetric linear systems, line Jacobi preconditioner
F11GRF Complex sparse Hermitian linear systems, setup for F11GSF
F11GSF Complex sparse Hermitian linear systems, preconditioned conjugate gradient or Lanczos
F11GTF Complex sparse Hermitian linear systems, diagnostic for F11GSF
F11MDF Real sparse nonsymmetric linear systems, setup for F11MEF
F11MEF LU factorization of real sparse matrix
F11MFF Solution of real sparse simultaneous linear equations (coefficient matrix already factorized)
F11MGF Estimate condition number of real matrix, matrix already factorized by F11MEF
F11MHF Refined solution with error bounds of real system of linear equations, multiple right-hand sides
F11MKF Real sparse nonsymmetric matrix matrix multiply, compressed column storage
F11MLF 1-norm, -norm, largest absolute element, real general matrix
F11MMF Real sparse nonsymmetric linear systems, diagnostic for F11MEF
F12AAF Initialization routine for (F12ABF) computing selected eigenvalues and, optionally, eigenvectors of a real nonsymmetric sparse (standard or generalized) eigenproblem
F12ABF Implements a reverse communication interface for the Implicitly Restarted Arnoldi iteration for computing selected eigenvalues and, optionally, eigenvectors of a real nonsymmetric sparse (standard or generalized) eigenproblem
F12ACF Returns the converged approximations (as determined by F12ABF) to eigenvalues of a real nonsymmetric sparse (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
F12ADF Set a single option from a string (F12ABF/F12ACF/F12AGF)
F12AEF Provides monitoring information for F12ABF
F12AFF Initialization routine for (F12AGF) computing selected eigenvalues and, optionally, eigenvectors of a real nonsymmetric banded (standard or generalized) eigenproblem
F12AGF Computes approximations to selected eigenvalues of a real nonsymmetric banded (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
F12ANF Initialization routine for (F12APF) computing selected eigenvalues and, optionally, eigenvectors of a complex sparse (standard or generalized) eigenproblem
F12APF Implements a reverse communication interface for the Implicitly Restarted Arnoldi iteration for computing selected eigenvalues and, optionally, eigenvectors of a complex sparse (standard or generalized) eigenproblem
F12AQF Returns the converged approximations (as determined by F12ABF) to eigenvalues of a complex sparse (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
F12ARF Set a single option from a string (F12APF/F12AQF)
F12ASF Provides monitoring information for F12APF
F12FAF Initialization routine for (F12FBF) computing selected eigenvalues and, optionally, eigenvectors of a real symmetric sparse (standard or generalized) eigenproblem
F12FBF Implements a reverse communication interface for the Implicitly Restarted Arnoldi iteration for computing selected eigenvalues and, optionally, eigenvectors of a real symmetric sparse (standard or generalized) eigenproblem
F12FCF Returns the converged approximations (as determined by F12ABF) to eigenvalues of a real symmetric sparse (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
F12FDF Set a single option from a string (F12FBF/F12FCF/F12FGF)
F12FEF Provides monitoring information for F12FBF
F12FFF Initialization routine for (F12FGF) computing selected eigenvalues and, optionally, eigenvectors of a real symmetric banded (standard or generalized) eigenproblem
F12FGF Computes approximations to selected eigenvalues of a real symmetric banded (standard or generalized) eigenproblem and, optionally, the corresponding approximate eigenvectors and/or an orthonormal basis for the associated approximate invariant subspace
G01ETF Landau distribution function Φ (λ)
G01EUF Vavilov distribution function ΦV(λ;κ,β2)
G01FTF Landau inverse function Ψ(x)
G01MTF Landau density function φ (λ)
G01MUF Vavilov density function φV (λ;κ,β2)
G01PTF Landau first moment function Φ1(x) 
G01QTF Landau second moment function Φ2(x) 
G01RTF Landau derivative function φ(λ)
G01ZUF Initialization routine for G01MUF and G01EUF
G02EFF Stepwise linear regression
G02JAF Linear mixed effects regression using Restricted Maximum Likelihood (REML)
G02JBF Linear mixed effects regression using Maximum Likelihood (ML)
G05HKF Univariate time series, generate n terms of either a symmetric GARCH process or a GARCH process with asymmetry of the form (εt-1+γ)2
G05HLF Univariate time series, generate n terms of a GARCH process with asymmetry of the form (|εt-1|+γεt-1)2
G05HMF Univariate time series, generate n terms of an asymmetric Glosten, Jagannathan and Runkle (GJR) GARCH process
G05HNF Univariate time series, generate n terms of an exponential GARCH (EGARCH) process
G05KAF Pseudo-random real numbers, uniform distribution over (0,1), seeds and generator number passed explicitly
G05KBF Initialize seeds of a given generator for random number generating routines (that pass seeds explicitly) to give a repeatable sequence
G05KCF Initialize seeds of a given generator for random number generating routines (that pass seeds expicitly) to give non-repeatable sequence
G05KEF Pseudo-random logical (boolean) value, seeds and generator number passed explicitly
G05LAF Generates a vector of random numbers from a Normal distribution, seeds and generator number passed explicitly
G05LBF Generates a vector of random numbers from a Student's t-distribution, seeds and generator number passed explicitly
G05LCF Generates a vector of random numbers from a χ2 distribution, seeds and generator number passed explicitly
G05LDF Generates a vector of random numbers from an F-distribution, seeds and generator number passed explicitly
G05LEF Generates a vector of random numbers from a β distribution, seeds and generator number passed explicitly
G05LFF Generates a vector of random numbers from a γ distribution, seeds and generator number passed explicitly
G05LGF Generates a vector of random numbers from a uniform distribution, seeds and generator number passed explicitly
G05LHF Generates a vector of random numbers from a triangular distribution, seeds and generator number passed explicitly
G05LJF Generates a vector of random numbers from an exponential distribution, seeds and generator number passed explicitly
G05LKF Generates a vector of random numbers from a lognormal distribution, seeds and generator number passed explicitly
G05LLF Generates a vector of random numbers from a Cauchy distribution, seeds and generator number passed explicitly
G05LMF Generates a vector of random numbers from a Weibull distribution, seeds and generator number passed explicitly
G05LNF Generates a vector of random numbers from a logistic distribution, seeds and generator number passed explicitly
G05LPF Generates a vector of random numbers from a von Mises distribution, seeds and generator number passed explicitly
G05LQF Generates a vector of random numbers from an exponential mixture distribution, seeds and generator number passed explicitly
G05LXF Generates a matrix of random numbers from a multivariate Student's t-distribution, seeds and generator passed explicitly
G05LYF Generates a matrix of random numbers from a multivariate Normal distribution, seeds and generator passed explicitly
G05LZF Generates a vector of random numbers from a multivariate Normal distribution, seeds and generator number passed explicitly
G05MAF Generates a vector of random integers from a uniform distribution, seeds and generator number passed explicitly
G05MBF Generates a vector of random integers from a geometric distribution, seeds and generator number passed explicitly
G05MCF Generates a vector of random integers from a negative binomial distribution, seeds and generator number passed explicitly
G05MDF Generates a vector of random integers from a logarithmic distribution, seeds and generator number passed explicitly
G05MEF Generates a vector of random integers from a Poisson distribution with varying mean, seeds and generator number passed explicitly
G05MJF Generates a vector of random integers from a binomial distribution, seeds and generator number passed explicitly
G05MKF Generates a vector of random integers from a Poisson distribution, seeds and generator number passed explicitly
G05MLF Generates a vector of random integers from a hypergeometric distribution, seeds and generator number passed explicitly
G05MRF Generates a vector of random integers from a multinomial distribution, seeds and generator number passed explicitly
G05MZF Generates a vector of random integers from a general discrete distribution, seeds and generator number passed explicitly
G05NAF Pseudo-random permutation of an integer vector
G05NBF Pseudo-random sample from an integer vector
G05PAF Generates a realisation of a time series from an ARMA model
G05PCF Generates a realisation of a multivariate time series from a VARMA model
G05QAF Computes a random orthogonal matrix
G05QBF Computes a random correlation matrix
G05QDF Generates a random table matrix
G05RAF Generates a matrix of random numbers from a Gaussian Copula, seeds and generator passed explicitly
G05RBF Generates a matrix of random numbers from a Student's t-Copula, seeds and generator passed explicitly
G05YAF Multi-dimensional quasi-random number generator with a uniform probability distribution
G05YBF Multi-dimensional quasi-random number generator with a Gaussian or log-normal probability distribution
G05YCF Initializes the Faure generator (G05YDF/G05YJF/G05YKF)
G05YDF Generates a sequence of quasi-random numbers using Faure's method
G05YEF Initializes the Sobol generator (G05YFF/G05YJF/G05YKF)
G05YFF Generates a sequence of quasi-random numbers using Sobol's method
G05YGF Initializes the Neiderreiter generator (G05YHF/G05YJF/G05YKF)
G05YHF Generates a sequence of quasi-random numbers using Neiderreiter's method
G05YJF Generates a Normal quasi-random number sequence using Faure's, Sobol's or Neiderreiter's method
G05YKF Generates a log-Normal quasi-random number sequence using Faure's, Sobol's or Neiderreiter's method
G13FAF Univariate time series, parameter estimation for either a symmetric GARCH process or a GARCH process with asymmetry of the form (εt-1+γ)2
G13FBF Univariate time series, forecast function for either a symmetric GARCH process or a GARCH process with asymmetry of the form (εt-1+γ)2
G13FCF Univariate time series, parameter estimation for a GARCH process with asymmetry of the form (|εt-1|+γεt-1)2
G13FDF Univariate time series, forecast function for a GARCH process with asymmetry of the form (|εt-1|+γεt-1)2
G13FEF Univariate time series, parameter estimation for an asymmetric Glosten, Jagannathan and Runkle (GJR) GARCH process
G13FFF Univariate time series, forecast function for an asymmetric Glosten, Jagannathan and Runkle (GJR) GARCH process
G13FGF Univariate time series, parameter estimation for an exponential GARCH (EGARCH) process
G13FHF Univariate time series, forecast function for an exponential GARCH (EGARCH) process
S14AEF Polygamma function ψ(n)(x) for real x
S14AFF Polygamma function ψ(n)(z) for complex z
S14AGF Logarithm of the Gamma function lnΓ(z)
S17ALF Zeros of Bessel functions Jα(x), Jα(x), Yα(x) or Yα(x)
S18GKF Bessel function of the 1st kind Jα±n(z)
S21CBF Jacobian elliptic functions sn, cn and dn of complex argument
S21CCF Jacobian theta functions θk(x,q) of real argument
S21DAF General elliptic integral of 2nd kind F(z,k,a,b) of complex argument
S22AAF Legendre functions of 1st kind Pnm(x) or Pnm(x)

5  Withdrawn SMP Functionality

The random number generator routines parallelized in Release 2 have now been scheduled for withdrawal at Mark 22, as the interfaces used were not thread-safe due to the internal use of COMMON blocks. Therefore, the SMP functionality has not been included in this release, to encourage users to switch to the new thread-safe replacement routines. Users can easily take advantage of the new thread-safe replacement routines on multiple processors by calling the routines within their own OpenMP parallel region, using a different generator number and seed array for each thread. As there are 273 separate Wichmann–Hill generators available, statistically independent sequences of random numbers can be generated on up to 273 processors simultaneously.
Routines Scheduled
for Withdrawal

Replacement Routine(s)
G05FAF G05LGF
G05FBF G05LJF
G05FDF G05LAF
G05FEF G05LEF
G05FFF G05LFF
G05FSF G05LPF
G05GAF G05QAF
G05GBF G05QBF
G05HDF G05PCF

6  Withdrawn Routines

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

Replacement Routine(s)
E01SEF E01SGF
E01SFF E01SHF
F11BAF F11BDF
F11BBF F11BEF
F11BCF F11BFF

7  Routines Scheduled for Withdrawal

The routines listed below are scheduled for withdrawal from the SMP Library, because improved routines have now been included in the Library. Users are advised to stop using routines which are scheduled for withdrawal immediately 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 22.
Routine Scheduled
for Withdrawal

Replacement Routine(s)
E04UNF E04USF/E04USA
F11GAF F11GDF
F11GBF F11GEF
F11GCF F11GFF
G05CAF G05KAF
G05CBF G05KBF
G05CCF G05KCF
G05CFF F06DFF
G05CGF F06DFF
G05DAF G05LGF
G05DBF G05LJF
G05DCF G05LNF
G05DDF G05LAF
G05DEF G05LKF
G05DFF G05LLF
G05DHF G05LCF
G05DJF G05LBF
G05DKF G05LDF
G05DPF G05LMF
G05DRF G05MEF
G05DYF G05MAF
G05DZF G05KEF
G05EAF G05LZF
G05EBF G05MAF
G05ECF G05MKF
G05EDF G05MJF
G05EEF G05MCF
G05EFF G05MLF
G05EGF G05PAF
G05EHF G05NAF
G05EJF G05NBF
G05EWF G05PAF
G05EXF G05MZF
G05EYF G05MZF
G05EZF G05LZF
G05FAF G05LGF
G05FBF G05LJF
G05FDF G05LAF
G05FEF G05LEF
G05FFF G05LFF
G05FSF G05LPF
G05GAF G05QAF
G05GBF G05QBF
G05HDF G05PCF
G05ZAF No replacement document required
The following routines have been superseded, but will not be withdrawn from the Library until Mark 23 at the earliest.
Superseded
Routine

Replacement Routine(s)
E04NKF/E04NKA E04NQF
E04NLF/E04NLA E04NRF
E04UCF/E04UCA E04WDF
F02BJF F08WAF (DGGEV)
F02EAF F08PAF (DGEES)
F02EBF F08NAF (DGEEV)
F02FAF F08FAF (DSYEV)
F02FCF F08FBF (DSYEVX)
F02FDF F08SAF (DSYGV)
F02FHF F08UAF (DSBGV)
F02GAF F08PNF (ZGEES)
F02GBF F08NNF (ZGEEV)
F02GJF F08WNF (ZGGEV)
F02HAF F08FNF (ZHEEV)
F02HCF F08FPF (ZHEEVX)
F02HDF F08SNF (ZHEGV)
F02WEF F08KBF (DGESVD)
F02XEF F08KPF (ZGESVD)
F04AAF F07AAF (DGESV)
F04ACF F07HAF (DPBSV)
F04ADF F07ANF (ZGESV)
F04ARF F07AAF (DGESV)
F04EAF F07CAF (DGTSV)
F04FAF F07JAF (DPTSV), F07JDF (DPTTRF) and F07JEF (DPTTRS)
F04JAF F08KAF (DGELSS)
F04JDF F08KAF (DGELSS)
F04JLF F08ZBF (DGGGLM)
F04JMF F08ZAF (DGGLSE)
F04KLF F08ZPF (ZGGGLM)
F04KMF F08ZNF (ZGGLSE)
G05YAF G05YCF, G05YDF, G05YEF, G05YFF, G05YGF, G05YHF, G05YJF and G05YKF
G05YBF G05YCF, G05YDF, G05YEF, G05YFF, G05YGF, G05YHF, G05YJF and G05YKF

Mark 21 News – NAG SMP Library (pdf version)
NAG Library Manual

© The Numerical Algorithms Group Ltd, Oxford, UK. 2006