At Mark 24 of the NAG Library for SMP & Multicore new functionality has been introduced in addition to improvements in existing areas. The Library now contains 1784 user-callable routines of which 139 are new at this mark.
SMP parallelism has been added to new routines introduced at Mark 24 in the areas of discrete Fourier transforms, 3-D wavelets, multi-dimensional interpolation, cubic splines, global optimization, matrix functions, the mean and standard deviation of an arbitrary-sized data stream using a rolling window, Gaussian mixture model, Brownian bridge and univariate inhomogenous time series. An existing routine for Heston's model option pricing formula with Greeks has also been parallelized.
The 139 new user-callable routines included in the NAG Library at Mark 24 are as follows.
Routine
Name
Purpose
C06PVF Two-dimensional real-to-complex discrete Fourier transform
C06PWF Two-dimensional complex-to-real discrete Fourier transform
C06PYF Three-dimensional real-to-complex discrete Fourier transform
C06PZF Three-dimensional complex-to-real discrete Fourier transform
C09ACF Three-dimensional wavelet filter initialization
C09FAF Three-dimensional discrete wavelet transform
C09FBF Three-dimensional inverse discrete wavelet transform
C09FCF Three-dimensional multi-level discrete wavelet transform
C09FDF Three-dimensional inverse multi-level discrete wavelet transform
D01RAF One-dimensional quadrature, adaptive, finite interval, multiple integrands, vectorized abscissae, reverse communication
D01RGF One-dimensional quadrature, adaptive, finite interval, strategy due to Gonnet, allowing for badly behaved integrands
D01TBF Pre-computed weights and abscissae for Gaussian quadrature rules, restricted choice of rule
D01UAF One-dimensional Gaussian quadrature, choice of weight functions
D02PEF Ordinary differential equations, initial value problem, Runge–Kutta method, integration over range with output
D02PFF Ordinary differential equations, initial value problem, Runge–Kutta method, integration over one step
D02PQF Ordinary differential equations, initial value problem, setup for
D02PEF and
D02PFF
D02PRF Ordinary differential equations, initial value problem, resets end of range for
D02PFF
D02PSF Ordinary differential equations, initial value problem, interpolation for
D02PFF
D02PTF Ordinary differential equations, initial value problem, integration diagnostics for
D02PEF and
D02PFF
D02PUF Ordinary differential equations, initial value problem, error assessment diagnostics for
D02PEF and
D02PFF
E01ZMF Interpolating function, modified Shepard's method,
dimensions
E01ZNF Interpolated values, evaluate interpolant computed by
E01ZMF, function and first derivatives,
dimensions
E02BFF Evaluation of fitted cubic spline, function and optionally derivatives at a vector of points
E02JDF Spline approximation to a set of scattered data using a two-stage approximation method
E02JEF Evaluation at a vector of points of a spline computed by
E02JDF
E02JFF Evaluation at a mesh of points of a spline computed by
E02JDF
E04MXF Reads MPS data file defining LP, QP, MILP or MIQP problem
E04PCF Computes the least squares solution to a set of linear equations subject to fixed upper and lower bounds on the variables. An option is provided to return a minimal length solution if a solution is not unique
E05UCF Global optimization using multi-start, nonlinear constraints
E05USF Global optimization of a sum of squares problem using
multi-start, nonlinear constraints
F01EKF Exponential, sine, cosine, sinh or cosh of a real matrix (Schur–Parlett algorithm)
F01ELF Function of a real matrix (using numerical differentiation)
F01EMF Function of a real matrix (using user-supplied derivatives)
F01FJF Complex matrix logarithm
F01FKF Exponential, sine, cosine, sinh or cosh of a complex matrix (Schur–Parlett algorithm)
F01FLF Function of a complex matrix (using numerical differentiation)
F01FMF Function of a complex matrix (using user-supplied derivatives)
F01GAF Action of a real matrix exponential on a real matrix
F01GBF Action of a real matrix exponential on a real matrix (reverse communication)
F01HAF Action of a complex matrix exponential on a complex matrix
F01HBF Action of a complex matrix exponential on a complex matrix (reverse communication)
F01JAF Condition number for the exponential, logarithm, sine, cosine, sinh or cosh of a real matrix
F01JBF Condition number for a function of a real matrix (using numerical differentiation)
F01JCF Condition number for a function of a real matrix (using user-supplied derivatives)
F01KAF Condition number for the exponential, logarithm, sine, cosine, sinh or cosh of a complex matrix
F01KBF Condition number for a function of a complex matrix (using numerical differentiation)
F01KCF Condition number for a function of a complex matrix (using user-supplied derivatives)
F02EKF Selected eigenvalues and eigenvectors of a real sparse general matrix
F04YDF Norm estimation (for use in condition estimation), real rectangular matrix
F04ZDF Norm estimation (for use in condition estimation), complex rectangular matrix
F11DFF Real sparse nonsymmetric linear system, incomplete
factorization of local or overlapping diagonal blocks
F11DGF Solution of real sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, incomplete
block diagonal preconditioner computed by
F11DFF
F11DTF Complex sparse nonsymmetric linear system, incomplete
factorization of local or overlapping diagonal blocks
F11DUF Solution of complex sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, incomplete
block diagonal preconditioner computed by
F11DTF
F12ATF Initialization routine for (
F12AUF) computing selected eigenvalues and, optionally, eigenvectors of a complex banded (standard or generalized) eigenproblem.
F12AUF Selected eigenvalues and, optionally, eigenvectors of complex non-Hermitian banded eigenproblem, driver
F16ECF Real scaled vector accumulation
F16GCF Complex scaled vector accumulation
G01ATF Computes univariate summary information: mean, variance, skewness, kurtosis
G01AUF Combines multiple sets of summary information, for use after
G01ATF
G01HDF Computes the probability for the multivariate Student's
-distribution
G01KKF Computes a vector of values for the probability density function of the gamma distribution
G01KQF Computes a vector of values for the probability density function of the Normal distribution
G01LBF Computes a vector of values for the probability density function of the multivariate Normal distribution
G01SAF Computes a vector of probabilities for the standard Normal distribution
G01SBF Computes a vector of probabilities for the Student's
-distribution
G01SCF Computes a vector of probabilities for
distribution
G01SDF Computes a vector of probabilities for
-distribution
G01SEF Computes a vector of probabilities for the beta distribution
G01SFF Computes a vector of probabilities for the gamma distribution
G01SJF Computes a vector of probabilities for the binomial distribution
G01SKF Computes a vector of probabilities for the Poisson distribution
G01SLF Computes a vector of probabilities for the hypergeometric distribution
G01TAF Computes a vector of deviates for the standard Normal distribution
G01TBF Computes a vector of deviates for Student's
-distribution
G01TCF Computes a vector of deviates for
distribution
G01TDF Computes a vector of deviates for
-distribution
G01TEF Computes a vector of deviates for the beta distribution
G01TFF Computes a vector of deviates for the gamma distribution
G01WAF Computes the mean and standard deviation using a rolling window
G02AJF Computes the nearest correlation matrix to a real square matrix, using element-wise weighting
G02BZF Combines two sums of squares matrices, for use after
G02BUF
G03GAF Fits a Gaussian mixture model
G05XAF Initializes the Brownian bridge generator
G05XBF Generate paths for a free or non-free Wiener process using the Brownian bridge algorithm
G05XCF Initializes the generator which backs out the increments of sample paths generated by a Brownian bridge algorithm
G05XDF Backs out the increments from sample paths generated by a Brownian bridge algorithm
G05XEF Creates a Brownian bridge construction order out of a set of input times
G05ZMF Setup for simulating one-dimensional random fields, user-defined variogram
G05ZNF Setup for simulating one-dimensional random fields
G05ZPF Generates realisations of a one-dimensional random field
G05ZQF Setup for simulating two-dimensional random fields, user-defined variogram
G05ZRF Setup for simulating two-dimensional random fields, preset variogram
G05ZSF Generates realisations of a two-dimensional random field
G05ZTF Generates realisations of fractional Brownian motion
G13MEF Computes the iterated exponential moving average for a univariate inhomogeneous time series
G13MFF Computes the iterated exponential moving average for a univariate inhomogeneous time series, intermediate results are also returned
G13MGF Computes the exponential moving average for a univariate inhomogeneous time series
H05AAF Best
subsets of size
(reverse communication)
H05ABF Best
subsets of size
(direct communication)
S14CBF Logarithm of the beta function
S14CCF Incomplete beta function
and its complement
S17AQF Bessel function vectorized
S17ARF Bessel function vectorized
S17ASF Bessel function vectorized
S17ATF Bessel function vectorized
S17AUF Airy function vectorized
S17AVF Airy function vectorized
S17AWF Airy function vectorized
S17AXF Airy function vectorized
S18AQF Modified Bessel function vectorized
S18ARF Modified Bessel function vectorized
S18ASF Modified Bessel function vectorized
S18ATF Modified Bessel function vectorized
S18CQF Scaled modified Bessel function vectorized
S18CRF Scaled modified Bessel function vectorized
S18CSF Scaled modified Bessel function vectorized
S18CTF Scaled modified Bessel function vectorized
S19ANF Kelvin function vectorized
S19APF Kelvin function vectorized
S19AQF Kelvin function vectorized
S19ARF Kelvin function vectorized
S20AQF Fresnel integral vectorized
S20ARF Fresnel integral vectorized
S22BAF Real confluent hypergeometric function
S22BBF Real confluent hypergeometric function
in scaled form
X07AAF Determines whether its argument has a finite value
X07ABF Determines whether its argument is a NaN (Not A Number)
X07BAF Creates a signed infinite value.
X07BBF Creates a NaN (Not A Number)
X07CAF Gets current behaviour of floating point exceptions
X07CBF Sets behaviour of floating point exceptions
Routine
Name
Purpose
C06PVF Two-dimensional real-to-complex discrete Fourier transform
C06PWF Two-dimensional complex-to-real discrete Fourier transform
C06PYF Three-dimensional real-to-complex discrete Fourier transform
C06PZF Three-dimensional complex-to-real discrete Fourier transform
C09FAF Three-dimensional discrete wavelet transform
C09FBF Three-dimensional inverse discrete wavelet transform
C09FCF Three-dimensional multi-level discrete wavelet transform
C09FDF Three-dimensional inverse multi-level discrete wavelet transform
E01ZMF Interpolating function, modified Shepard's method,
dimensions
E01ZNF Interpolated values, evaluate interpolant computed by
E01ZMF, function and first derivatives,
dimensions
E02BFF Evaluation of fitted cubic spline, function and optionally derivatives at a vector of points
E05UCF Global optimization using multi-start, nonlinear constraints
E05USF Global optimization of a sum of squares problem using
multi-start, nonlinear constraints
F01EKF Exponential, sine, cosine, sinh or cosh of a real matrix (Schur–Parlett algorithm)
F01EMF Function of a real matrix (using user-supplied derivatives)
F01FJF Complex matrix logarithm
F01FKF Exponential, sine, cosine, sinh or cosh of a complex matrix (Schur–Parlett algorithm)
F01FMF Function of a complex matrix (using user-supplied derivatives)
G01ATF Computes univariate summary information: mean, variance, skewness, kurtosis
G01WAF Computes the mean and standard deviation using a rolling window
G03GAF Fits a Gaussian mixture model
G05XBF Generate paths for a free or non-free Wiener process using the Brownian bridge algorithm
G05XDF Backs out the increments from sample paths generated by a Brownian bridge algorithm
G13MEF Computes the iterated exponential moving average for a univariate inhomogeneous time series
G13MFF Computes the iterated exponential moving average for a univariate inhomogeneous time series, intermediate results are also returned
G13MGF Computes the exponential moving average for a univariate inhomogeneous time series
S30NBF Heston's model option pricing formula with Greeks
Routine
Name
Purpose
E02JDF Spline approximation to a set of scattered data using a two-stage approximation method
F01ELF Function of a real matrix (using numerical differentiation)
F01FLF Function of a complex matrix (using numerical differentiation)
F01GAF Action of a real matrix exponential on a real matrix
F01GBF Action of a real matrix exponential on a real matrix (reverse communication)
F01HAF Action of a complex matrix exponential on a complex matrix
F01HBF Action of a complex matrix exponential on a complex matrix (reverse communication)
F01JAF Condition number for the exponential, logarithm, sine, cosine, sinh or cosh of a real matrix
F01JBF Condition number for a function of a real matrix (using numerical differentiation)
F01JCF Condition number for a function of a real matrix (using user-supplied derivatives)
F01KAF Condition number for the exponential, logarithm, sine, cosine, sinh or cosh of a complex matrix
F01KBF Condition number for a function of a complex matrix (using numerical differentiation)
F01KCF Condition number for a function of a complex matrix (using user-supplied derivatives)
F02EKF Selected eigenvalues and eigenvectors of a real sparse general matrix
F11DGF Solution of real sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, incomplete
block diagonal preconditioner computed by
F11DFF
F11DUF Solution of complex sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, incomplete
block diagonal preconditioner computed by
F11DTF
F12AUF Selected eigenvalues and, optionally, eigenvectors of complex non-Hermitian banded eigenproblem, driver
G01LBF Computes a vector of values for the probability density function of the multivariate Normal distribution
G02AJF Computes the nearest correlation matrix to a real square matrix, using element-wise weighting
G05ZPF Generates realisations of a one-dimensional random field
G05ZQF Setup for simulating two-dimensional random fields, user-defined variogram
G05ZRF Setup for simulating two-dimensional random fields, preset variogram
G05ZSF Generates realisations of a two-dimensional random field
G05ZTF Generates realisations of fractional Brownian motion
The following routines will be withdrawn at Mark 25.
The following routines have been superseded, but will not be withdrawn from the Library until Mark 26 at the earliest.