NAG C Library News, Mark 24 (PDF version)
NAG Library Manual

NAG Library

NAG C Library News, Mark 24

+ Contents

1  Introduction

At Mark 24 of the NAG C Library new functionality has been introduced in addition to improvements in existing areas. The Library now contains 1516 user-callable functions, all of which are documented, of which 148 are new at this mark.
A major feature at this mark is the incorporation of SMP capability into the C Library. Consequently the C Library documentation is being enhanced to indicate which functions are capable of utilizing threads.
A new Chapter x07 (IEEE Arithmetic) has been introduced, providing functions relating to IEEE arithmetic such as determining or creating an infinite value or a NaN (Not a Number). There have also been extensions in functionality included in the areas of statistics, wavelets, ordinary differential equations, interpolation, surface fitting, optimization, matrix operations, linear algebra, operations research, and special functions.
Chapter c06 (Fourier Transforms) has Fast Fourier Transforms (FFTs) for two-dimensional and three-dimensional real data, and replacement functions for transforms of complex data and symmetric transforms of real data removing restrictions on sequence length.
Chapter c09 (Wavelet Transforms) has new functions for computing the three-dimensional discrete wavelet transform (DWT) and its inverse, including applying the DWT over multiple levels (c09f*c). These functions are threaded for parallelism in some implementations. In addition there are new functions for inserting coefficients into and extracting coefficients from the compact form used in the multilevel two-dimensional functions and all three-dimensional functions, which would make working with the DWT functions easier as demonstrated in the examples. There are also functions for the maximal overlap discrete wavelet transform (MODWT) and its inverse in one dimension, which are useful in time series analysis.
Chapter d01 (Quadrature) has a comprehensive reverse communication one-dimensional adaptive quadrature function and a variant for badly behaved integrands.
Chapter d02 (Ordinary Differential Equations) has a suite of functions solving Boundary Value Problems by the collocation method, and a replacement for the suite implementing Runge–Kutta methods for non-stiff Initial Value Problems.
Chapter e01 (Interpolation) has the modified Shepard's method for interpolating in dimensions greater than 5.
Chapter e02 (Curve and Surface Fitting) has a two-stage approximation method for two-dimensional scattered data.
Chapter e04 (Minimizing or Maximizing a Function) has non-negative least squares and an improved MPS data reader.
Chapter e05 (Global Optimization of a Function) has a multi-start version of a least squares with nonlinear constraints function.
Chapter f01 (Matrix Operations, Including Inversion) has greatly extended its range of matrix functions. New and improved algorithms are available for the matrix logarithm, the matrix square root, the matrix exponential and general matrix powers. We also now have functions for computing Fréchet derivatives.
Chapter f02 (Eigenvalues and Eigenvectors) has functions for the solution of the real and complex quadratic eigenvalue problem, and a driver function for calculating selected eigenvalues/vectors of general sparse matrices.
Chapter f04 (Simultaneous Linear Equations) has norm estimators for rectangular matrices.
Chapter f08 (Least Squares and Eigenvalue Problems (LAPACK)) has functions for recursive, explicitly blocked QR factorization and applying Q for general matrices and for triangular-pentagonal matrices, and has functions for the complete CS decomposition of an orthogonal or unitary matrix.
Chapter f11 (Large Scale Linear Systems) has a block diagonal (possibly overlapping) preconditioner and associated solver for real and complex nonsymmetric sparse matrices.
Chapter f12 (Large Scale Eigenproblems) has a driver for selected eigenvalues/vectors of general banded complex eigenproblems.
Chapter f16 (NAG Interface to BLAS) has two additions from the BLAST set of functions.
Chapter g01 (Simple Calculations on Statistical Data) has functions for calculating summary statistics in a rolling window and combining summary statistics calculated on different data streams as well as a function for calculating probabilities from a multivariate Student's t-distribution.
Chapter g02 (Correlation and Regression Analysis) has functions for weighted nearest correlation matrix and calculating sums of squares matrices (and hence correlation and covariance matrices) on streamed data.
Chapter g03 (Multivariate Methods) has a Gaussian mixture model function.
Chapter g05 (Random Number Generators) has Brownian bridge and random field functions.
Chapter g13 (Time Series Analysis) has functions for analysing inhomogeneous time series.
Chapter h (Operations Research) has functions for feature subset selections.
Chapter s (Approximations of Special Functions) has confluent and Gauss hypergeometric functions F 1 1 a,b;x  and F 1 2 a,b;c;x , and a new derivative pricing function extends the Heston stochastic volatility model to incorporate a term structure which can facilitate calibration to market data.

2  New Functions

The 148 new user-callable functions included in the NAG C Library at Mark 24 are as follows.
Function
Name

Purpose
c06fkcCircular convolution or correlation of two real vectors, no restrictions on n
c06pacSingle one-dimensional real and Hermitian complex discrete Fourier transform, using complex storage format for Hermitian sequences
c06pccSingle one-dimensional complex discrete Fourier transform, complex data type
c06pscMultiple one-dimensional complex discrete Fourier transforms, complex data type
c06pucTwo-dimensional complex discrete Fourier transform, complex data type
c06pvcTwo-dimensional real-to-complex discrete Fourier transform
c06pwcTwo-dimensional complex-to-real discrete Fourier transform
c06pycThree-dimensional real-to-complex discrete Fourier transform
c06pzcThree-dimensional complex-to-real discrete Fourier transform
c06recMultiple discrete sine transforms, simple
c06rfcMultiple discrete cosine transforms, simple
c06rgcMultiple discrete quarter-wave sine transforms, simple
c06rhcMultiple discrete quarter-wave cosine transforms, simple
c09accThree-dimensional wavelet filter initialization
c09dacOne-dimensional maximal overlap discrete wavelet transform (MODWT)
c09dbcOne-dimensional inverse maximal overlap discrete wavelet transform (IMODWT)
c09dccOne-dimensional multi-level maximal overlap discrete wavelet transform (MODWT)
c09ddcOne-dimensional inverse multi-level maximal overlap discrete wavelet transform (IMODWT)
c09eycTwo-dimensional discrete wavelet transform coefficient extraction
c09ezcTwo-dimensional discrete wavelet transform coefficient insertion
c09facThree-dimensional discrete wavelet transform
c09fbcThree-dimensional inverse discrete wavelet transform
c09fccThree-dimensional multi-level discrete wavelet transform
c09fdcThree-dimensional inverse multi-level discrete wavelet transform
c09fycThree-dimensional discrete wavelet transform coefficient extraction
c09fzcThree-dimensional discrete wavelet transform coefficient insertion
d01racOne-dimensional quadrature, adaptive, finite interval, multiple integrands, vectorized abscissae, reverse communication
d01rccDetermine required array dimensions for nag_quad_1d_gen_vec_multi_rcomm (d01rac)
d01rgcOne-dimensional quadrature, adaptive, finite interval, strategy due to Gonnet, allowing for badly behaved integrands
d01uacOne-dimensional Gaussian quadrature, choice of weight functions (vectorized)
d01zkcOption setting function
d01zlcOption getting function
d02pecOrdinary differential equations, initial value problem, Runge–Kutta method, integration over range with output
d02pfcOrdinary differential equations, initial value problem, Runge–Kutta method, integration over one step
d02pqcOrdinary differential equations, initial value problem, setup for nag_ode_ivp_rkts_range (d02pec) and nag_ode_ivp_rkts_onestep (d02pfc)
d02prcOrdinary differential equations, initial value problem, resets end of range for nag_ode_ivp_rkts_onestep (d02pfc)
d02pscOrdinary differential equations, initial value problem, interpolation for nag_ode_ivp_rkts_onestep (d02pfc)
d02ptcOrdinary differential equations, initial value problem, integration diagnostics for nag_ode_ivp_rkts_range (d02pec) and nag_ode_ivp_rkts_onestep (d02pfc)
d02pucOrdinary differential equations, initial value problem, error assessment diagnostics for nag_ode_ivp_rkts_range (d02pec) and nag_ode_ivp_rkts_onestep (d02pfc)
d02tlcOrdinary differential equations, general nonlinear boundary value problem, collocation technique
d02tvcOrdinary differential equations, general nonlinear boundary value problem, setup for nag_ode_bvp_coll_nlin_solve (d02tlc)
d02txcOrdinary differential equations, general nonlinear boundary value problem, continuation facility for nag_ode_bvp_coll_nlin_solve (d02tlc)
d02tycOrdinary differential equations, general nonlinear boundary value problem, interpolation for nag_ode_bvp_coll_nlin_solve (d02tlc)
d02tzcOrdinary differential equations, general nonlinear boundary value problem, diagnostics for nag_ode_bvp_coll_nlin_solve (d02tlc)
e01zmcInterpolating function, modified Shepard's method, d dimensions
e01zncInterpolated values, evaluate interpolant computed by nag_nd_shep_interp (e01zmc), function and first derivatives, d dimensions
e02alcMinimax curve fit by polynomials
e02bfcEvaluation of fitted cubic spline, function and optionally derivatives at a vector of points
e02jdcSpline approximation to a set of scattered data using a two-stage approximation method
e02jecEvaluation at a vector of points of a spline computed by nag_2d_spline_fit_ts_scat (e02jdc)
e02jfcEvaluation at a mesh of points of a spline computed by nag_2d_spline_fit_ts_scat (e02jdc)
e02zkcOption setting routine
e02zlcOption getting routine
e04mxcReads MPS data file defining LP, QP, MILP or MIQP problem
e04pccComputes 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
e05uscGlobal optimization of a sum of squares problem using multi-start, nonlinear constraints
f01elcFunction of a real matrix (using numerical differentiation)
f01encReal matrix square root
f01epcReal upper quasi-triangular matrix square root
f01eqcGeneral power of a real matrix
f01flcFunction of a complex matrix (using numerical differentiation)
f01fncComplex matrix square root
f01fpcComplex upper triangular matrix square root
f01fqcGeneral power of a complex matrix
f01gacAction of a real matrix exponential on a real matrix
f01gbcAction of a real matrix exponential on a real matrix (reverse communication)
f01hacAction of a complex matrix exponential on a complex matrix
f01hbcAction of a complex matrix exponential on a complex matrix (reverse communication)
f01jacCondition number for the exponential, logarithm, sine, cosine, sinh or cosh of a real matrix
f01jbcCondition number for a function of a real matrix (using numerical differentiation)
f01jccCondition number for a function of a real matrix (using user-supplied derivatives)
f01jdcCondition number for square root of real matrix
f01jecCondition number for real matrix power
f01jfcFréchet derivative of real matrix power
f01jgcCondition number for real matrix exponential
f01jhcFréchet derivative of real matrix exponential
f01jjcCondition number for real matrix logarithm
f01jkcFréchet derivative of real matrix logarithm
f01kacCondition number for the exponential, logarithm, sine, cosine, sinh or cosh of a complex matrix
f01kbcCondition number for a function of a complex matrix (using numerical differentiation)
f01kccCondition number for a function of a complex matrix (using user-supplied derivatives)
f01kdcCondition number for square root of complex matrix
f01kecCondition number for complex matrix power
f01kfcFréchet derivative of complex matrix power
f01kgcCondition number for complex matrix exponential
f01khcFréchet derivative of complex matrix exponential
f01kjcCondition number for complex matrix logarithm
f01kkcFréchet derivative of complex matrix logarithm
f02ekcSelected eigenvalues and eigenvectors of a real sparse general matrix
f02jccSolves the quadratic eigenvalue problem for real matrices
f02jqcSolves the quadratic eigenvalue problem for complex matrices
f04ydcNorm estimation (for use in condition estimation), real rectangular matrix
f04zdcNorm estimation (for use in condition estimation), complex rectangular matrix
f08abcPerforms a QR factorization of real general rectangular matrix, with explicit blocking
f08accApplies the orthogonal transformation determined by nag_dgeqrt (f08abc)
f08apcPerforms a QR factorization of complex general rectangular matrix using recursive algorithm
f08aqcApplies the unitary transformation determined by nag_zgeqrt (f08apc)
f08bbcQR factorization of real general triangular-pentagonal matrix
f08bccApplies the orthogonal transformation determined by nag_dtpqrt (f08bbc)
f08bpcQR factorization of complex triangular-pentagonal matrix
f08bqcApplies the unitary transformation determined by nag_ztpqrt (f08bpc)
f08racComputes the CS decomposition of an orthogonal matrix partitioned into four real submatrices
f08rncComputes the CS decomposition of an unitary matrix partitioned into four complex submatrices
f11dfcReal sparse nonsymmetric linear system, incomplete LU factorization of local or overlapping diagonal blocks
f11dgcSolution of real sparse nonsymmetric linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, incomplete LU block diagonal preconditioner computed by nag_sparse_nsym_precon_bdilu (f11dfc)
f11dtcComplex, sparse, non-Hermitian linear system, incomplete LU factorization of local or overlapping diagonal blocks
f11ducSolution of complex, sparse, non-Hermitian linear system, RGMRES, CGS, Bi-CGSTAB or TFQMR method, incomplete LU block diagonal preconditioner computed by nag_sparse_nherm_precon_bdilu (f11dtc)
f12atcInitialization function for nag_complex_banded_eigensystem_solve (f12auc) computing selected eigenvalues and, optionally, eigenvectors of a complex banded (standard or generalized) eigenproblem.
f12aucSelected eigenvalues and, optionally, eigenvectors of complex non-Hermitian banded eigenproblem, driver
f16eacDot product of two vectors, allows scaling and accumulation.
f16gccComplex weighted vector addition
g01atcComputes univariate summary information: mean, variance, skewness, kurtosis
g01aucCombines multiple sets of summary information, for use after nag_summary_stats_onevar (g01atc)
g01hdcComputes the probability for the multivariate Student's t-distribution
g01lbcComputes a vector of values for the probability density function of the multivariate Normal distribution
g01wacComputes the mean and standard deviation using a rolling window
g02ajcComputes the nearest correlation matrix to a real square matrix, using element-wise weighting
g02bzcCombines two sums of squares matrices, for use after nag_sum_sqs (g02buc)
g03gacFits a Gaussian mixture model
g05xacInitializes the Brownian bridge generator
g05xbcGenerate paths for a free or non-free Wiener process using the Brownian bridge algorithm
g05xccInitializes the generator which backs out the increments of sample paths generated by a Brownian bridge algorithm
g05xdcBacks out the increments from sample paths generated by a Brownian bridge algorithm
g05xecCreates a Brownian bridge construction order out of a set of input times
g05zmcSetup for simulating one-dimensional random fields, user-defined variogram
g05zncSetup for simulating one-dimensional random fields
g05zpcGenerates realizations of a one-dimensional random field
g05zqcSetup for simulating two-dimensional random fields, user-defined variogram
g05zrcSetup for simulating two-dimensional random fields, preset variogram
g05zscGenerates realizations of a two-dimensional random field
g05ztcGenerates realizations of fractional Brownian motion
g10bbcKernel density estimate using Gaussian kernel (thread safe)
g13mecComputes the iterated exponential moving average for a univariate inhomogeneous time series
g13mfcComputes the iterated exponential moving average for a univariate inhomogeneous time series, intermediate results are also returned
g13mgcComputes the exponential moving average for a univariate inhomogeneous time series
h05aacBest n subsets of size p (reverse communication)
h05abcBest n subsets of size p (direct communication)
s22bacReal confluent hypergeometric function F 1 1 a;b;x
s22bbcReal confluent hypergeometric function F 1 1 a;b;x  in scaled form
s22becReal Gauss hypergeometric function F1 2 a,b;c;x
s22bfcReal Gauss hypergeometric function F 1 2 a,b; c;x  in scaled form.
s30nccHeston's model option pricing with term structure
x07aacDetermines whether its argument has a finite value
x07abcDetermines whether its argument is a NaN (Not A Number)
x07bacCreates a signed infinite value.
x07bbcCreates a NaN (Not A Number)
x07cacGets current behaviour of floating-point exceptions
x07cbcSets behaviour of floating-point exceptions

3  Withdrawn Functions

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

Replacement Function(s)
c05adcnag_zero_cont_func_brent (c05ayc)
c05nbcnag_zero_nonlin_eqns_easy (c05qbc)
c05pbcnag_zero_nonlin_eqns_deriv_easy (c05rbc)
c05tbcnag_zero_nonlin_eqns_easy (c05qbc)
c05zbcnag_check_derivs (c05zdc)
c05zccnag_check_derivs (c05zdc)
d01ajcnag_1d_quad_gen_1 (d01sjc)
d01akcnag_1d_quad_osc_1 (d01skc)
d01alcnag_1d_quad_brkpts_1 (d01slc)
d01amcnag_1d_quad_inf_1 (d01smc)
d01ancnag_1d_quad_wt_trig_1 (d01snc)
d01apcnag_1d_quad_wt_alglog_1 (d01spc)
d01aqcnag_1d_quad_wt_cauchy_1 (d01sqc)
d01ascnag_1d_quad_inf_wt_trig_1 (d01ssc)
d01bacnag_quad_1d_gauss_vec (d01uac)
e04cccnag_opt_simplex_easy (e04cbc)
g01cecnag_deviates_normal (g01fac)
g05cacnag_rand_basic (g05sac)
g05cbcnag_rand_init_repeatable (g05kfc)
g05cccnag_rand_init_nonrepeatable (g05kgc)
g05cfcNo longer required.
g05cgcNo longer required.
g05dacnag_rand_uniform (g05sqc)
g05dbcnag_rand_exp (g05sfc)
g05ddcnag_rand_normal (g05skc)
g05dycnag_rand_discrete_uniform (g05tlc)
g05eacnag_rand_matrix_multi_normal (g05rzc)
g05eccnag_rand_poisson (g05tjc)
g05edcnag_rand_binomial (g05tac)
g05ehcnag_rand_permute (g05ncc)
g05ejcnag_rand_sample (g05ndc)
g05excnag_rand_gen_discrete (g05tdc)
g05eycnag_rand_gen_discrete (g05tdc)
g05ezcnag_rand_matrix_multi_normal (g05rzc)
g05fecnag_rand_beta (g05sbc)
g05ffcnag_rand_gamma (g05sjc)
g05hacnag_rand_arma (g05phc)
g05hkcnag_rand_agarchI (g05pdc)
g05hlcnag_rand_agarchII (g05pec)
g05hmcnag_rand_garchGJR (g05pfc)
g05kacnag_rand_basic (g05sac)
g05kbcnag_rand_init_repeatable (g05kfc)
g05kccnag_rand_init_nonrepeatable (g05kgc)
g05kecnag_rand_logical (g05tbc)
g05lacnag_rand_normal (g05skc)
g05lbcnag_rand_students_t (g05snc)
g05lccnag_rand_chi_sq (g05sdc)
g05ldcnag_rand_f (g05shc)
g05lecnag_rand_beta (g05sbc)
g05lfcnag_rand_gamma (g05sjc)
g05lgcnag_rand_uniform (g05sqc)
g05lhcnag_rand_triangular (g05spc)
g05ljcnag_rand_exp (g05sfc)
g05lkcnag_rand_lognormal (g05smc)
g05llcnag_rand_cauchy (g05scc)
g05lmcnag_rand_weibull (g05ssc)
g05lncnag_rand_logistic (g05slc)
g05lpcnag_rand_von_mises (g05src)
g05lqcnag_rand_exp_mix (g05sgc)
g05lxcnag_rand_matrix_multi_students_t (g05ryc)
g05lycnag_rand_matrix_multi_normal (g05rzc)
g05lzcnag_rand_matrix_multi_normal (g05rzc)
g05macnag_rand_discrete_uniform (g05tlc)
g05mbcnag_rand_geom (g05tcc)
g05mccnag_rand_neg_bin (g05thc)
g05mdcnag_rand_logarithmic (g05tfc)
g05mecnag_rand_compd_poisson (g05tkc)
g05mjcnag_rand_binomial (g05tac)
g05mkcnag_rand_poisson (g05tjc)
g05mlcnag_rand_hypergeometric (g05tec)
g05mrcnag_rand_gen_multinomial (g05tgc)
g05mzcnag_rand_gen_discrete (g05tdc)
g05nacnag_rand_permute (g05ncc)
g05nbcnag_rand_sample (g05ndc)
g05pacnag_rand_arma (g05phc)
g05pccnag_rand_varma (g05pjc)
g05qacnag_rand_orthog_matrix (g05pxc)
g05qbcnag_rand_corr_matrix (g05pyc)
g05qdcnag_rand_2_way_table (g05pzc)
g05racnag_rand_copula_normal (g05rdc)
g05rbcnag_rand_copula_students_t (g05rcc)
g05yacnag_quasi_init (g05ylc) and nag_quasi_rand_uniform (g05ymc)
g05ybcnag_quasi_rand_normal (g05yjc) and nag_quasi_init (g05ylc)
x02dacNo longer required.
x02djcNo longer required.

4  Functions Scheduled for Withdrawal

The functions listed below are scheduled for withdrawal from the NAG C Library, because improved functions have now been included in the Library. You are advised to stop using functions which are scheduled for withdrawal and to use recommended replacement functions instead. See the document ‘Advice on Replacement Calls for Withdrawn/Superseded Functions’ for more detailed guidance, including advice on how to change a call to the old function into a call to its recommended replacement.
The following functions will be withdrawn at Mark 25.
Functions Scheduled
for Withdrawal

Replacement Function(s)
c05agcnag_zero_cont_func_brent_binsrch (c05auc)
c05sdcnag_zero_cont_func_brent (c05ayc)
c05ubcnag_zero_nonlin_eqns_deriv_easy (c05rbc)
d01fccnag_multid_quad_adapt_1 (d01wcc)
d01gbcnag_multid_quad_monte_carlo_1 (d01xbc)
f01bncnag_zpotrf (f07frc)
f01qccnag_dgeqrf (f08aec)
f01qdcnag_dormqr (f08agc)
f01qecnag_dorgqr (f08afc)
f01rccnag_zgeqrf (f08asc)
f01rdcnag_zunmqr (f08auc)
f01recnag_zungqr (f08atc)
f03aecnag_dpotrf (f07fdc) and nag_det_real_sym (f03bfc)
f03afcnag_dgetrf (f07adc) and nag_det_real_gen (f03bac)
f03ahcnag_zgetrf (f07arc) and nag_det_complex_gen (f03bnc)
f04adcnag_complex_gen_lin_solve (f04cac)
f04agcnag_dpotrs (f07fec)
f04ajcnag_dgetrs (f07aec)
f04akcnag_zgetrs (f07asc)
f04arcnag_real_gen_lin_solve (f04bac)
f04awcnag_zpotrs (f07fsc)
g02ewcnag_full_step_regsn_monfun (g02efh)
x04aecNo replacement required.
The following functions have been superseded, but will not be withdrawn from the Library until Mark 26 at the earliest.
Superseded
Function

Replacement Function(s)
c06eacnag_sum_fft_realherm_1d (c06pac)
c06ebcnag_sum_fft_realherm_1d (c06pac)
c06eccnag_sum_fft_complex_1d (c06pcc)
c06ekcnag_sum_convcorr_real (c06fkc)
c06frcnag_sum_fft_complex_1d_multi (c06psc)
c06fucnag_sum_fft_complex_2d (c06puc)
c06gbcNo replacement required
c06gccNo replacement required
c06hacnag_sum_fft_sine (c06rec)
c06hbcnag_sum_fft_cosine (c06rfc)
c06hccnag_sum_fft_qtrsine (c06rgc)
c06hdcnag_sum_fft_qtrcosine (c06rhc)
d02pccnag_ode_ivp_rkts_range (d02pec) and associated d02p functions
d02pdcnag_ode_ivp_rkts_onestep (d02pfc) and associated d02p functions
d02ppcNo replacement required
d02pvcnag_ode_ivp_rkts_setup (d02pqc)
d02pwcnag_ode_ivp_rkts_reset_tend (d02prc)
d02pxcnag_ode_ivp_rkts_interp (d02psc)
d02pzcnag_ode_ivp_rkts_errass (d02puc)
e04jbcnag_opt_nlp (e04ucc)
f02aacnag_dsyev (f08fac)
f02abcnag_dsyev (f08fac)
f02adcnag_dsygv (f08sac)
f02aecnag_dsygv (f08sac)
f02afcnag_dgeev (f08nac)
f02agcnag_dgeev (f08nac)
f02awcnag_zheev (f08fnc)
f02axcnag_zheev (f08fnc)
f02bjcnag_dggev (f08wac)
f02wecnag_dgesvd (f08kbc)
f02xecnag_zgesvd (f08kpc)
g01aacnag_summary_stats_onevar (g01atc)
g10bacnag_kernel_density_gauss (g10bbc)

NAG C Library News, Mark 24 (PDF version)
NAG Library Manual

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