At Mark 7 of the C Library new functionality has been introduced in addition to improvements in existing areas. The Library now contains 860 documented routines, of which 397 are new at this Mark.
This is a significant enhancement over Mark 6. New chapters have been introduced to cover LAPACK (Chapters f07 and f08), Partial Differential Equations (d03), Mesh Generation (d06) and Input/Output Utilities (x04). Significant new material capability has been added to Random Number Generators (g05). New functionality has also been added to Interpolation (e01), Curve and Surface Fitting (e02), Simple Calculations on Statistical Data (g01), Correlation and Regression Analysis (g02), Univariate Estimation (g07), Nonparametric Statistics (g08), Contingency Table Analysis (g11), Survival Analysis (g12) and Time Series Analysis (g13). The special function chapter (s) sees the addition of a number of special functions with particular appeal to theoretical physicists.
A major innovation at this mark is the introduction of the order parameter, which allows data to be specified either in row or column major order. This allows the C Library functions to be easily callable from other environments such as Visual Basic. For further details please refer to the Essential Introduction.
Finally, in environments where vendor supplied BLAS functions are available, these can now be called by the C Library to further enhance performance. This is achieved by the use of NAG's interface to BLAS, a proportion of which are documented in the new NAG C BLAS chapter (f16).
The 397 new user-callable routines included in the C Library at Mark 7 are as follows.
| c06pfc | nag_fft_multid_single One-dimensional complex discrete Fourier transform of multi-dimensional data (using complex data type) |
| c06pjc | nag_fft_multid_full Multi-dimensional complex discrete Fourier transform of multi-dimensional data (using complex data type) |
| c06pxc | nag_fft_3d Three-dimensional complex discrete Fourier transform, complex data format |
| d03ncc | nag_pde_bs_1d Finite difference solution of the Black–Scholes equations |
| d03ndc | nag_pde_bs_1d_analytic Analytic solution of the Black–Scholes equations |
| d03nec | nag_pde_bs_1d_means Compute average values for d03ndc |
| d03pcc | nag_pde_parab_1d_fd General system of parabolic PDEs, method of lines, finite differences, one space variable |
| d03pdc | nag_pde_parab_1d_coll General system of parabolic PDEs, method of lines, Chebyshev C0 collocation, one space variable |
| d03pec | nag_pde_parab_1d_keller General system of first-order PDEs, method of lines, Keller box discretisation, one space variable |
| d03pfc | nag_pde_parab_1d_cd General system of convection-diffusion PDEs with source terms in conservative form, method of lines, upwind scheme using numerical flux function based on Riemann solver, one space variable |
| d03phc | nag_pde_parab_1d_fd_ode General system of parabolic PDEs, coupled DAEs, method of lines, finite differences, one space variable |
| d03pjc | nag_pde_parab_1d_coll_ode General system of parabolic PDEs, coupled DAEs, method of lines, Chebyshev C0 collocation, one space variable |
| d03pkc | nag_pde_parab_1d_keller_ode General system of first-order PDEs, coupled DAEs, method of lines, Keller box discretisation, one space variable |
| d03plc | nag_pde_parab_1d_cd_ode General system of convection-diffusion PDEs with source terms in conservative form, coupled DAEs, method of lines, upwind scheme using numerical flux function based on Riemann solver, one space variable |
| d03ppc | nag_pde_parab_1d_fd_ode_remesh General system of parabolic PDEs, coupled DAEs, method of lines, finite differences, remeshing, one space variable |
| d03prc | nag_pde_parab_1d_keller_ode_remesh General system of first-order PDEs, coupled DAEs, method of lines, Keller box discretisation, remeshing, one space variable |
| d03psc | nag_pde_parab_1d_cd_ode_remesh General system of convection-diffusion PDEs with source terms in conservative form, coupled DAEs, method of lines, upwind scheme using numerical flux function based on Riemann solver, remeshing, one space variable |
| d03puc | nag_pde_parab_1d_euler_roe Roe's approximate Riemann solver for Euler equations in conservative form, for use with d03pfc, d03plc and d03psc |
| d03pvc | nag_pde_parab_1d_euler_osher Osher's approximate Riemann solver for Euler equations in conservative form, for use with d03pfc, d03plc and d03psc |
| d03pwc | nag_pde_parab_1d_euler_hll Modified HLL Riemann solver for Euler equations in conservative form, for use with d03pfc, d03plc and d03psc |
| d03pxc | nag_pde_parab_1d_euler_exact Exact Riemann Solver for Euler equations in conservative form, for use with d03pfc, d03plc and d03psc |
| d03pyc | nag_pde_interp_1d_coll PDEs, spatial interpolation with d03pdc or d03pjc |
| d03pzc | nag_pde_interp_1d_fd PDEs, spatial interpolation with d03pcc, d03pec, d03pfc, d03phc, d03pkc, d03plc, d03ppc, d03prc or d03psc |
| d06aac | nag_mesh2d_inc Generates a two-dimensional mesh using a simple incremental method |
| d06abc | nag_mesh2d_delaunay Generates a two-dimensional mesh using a Delaunay–Voronoi process |
| d06acc | nag_mesh2d_front Generates a two-dimensional mesh using an Advancing-front method |
| d06bac | nag_mesh2d_bound Generates a boundary mesh |
| d06cac | nag_mesh2d_smooth Uses a barycentering technique to smooth a given mesh |
| d06cbc | nag_mesh2d_sparse Generates a sparsity pattern of a Finite Element matrix associated with a given mesh |
| d06ccc | nag_mesh2d_renum Renumbers a given mesh using Gibbs method |
| d06dac | nag_mesh2d_trans Generates a mesh resulting from an affine transformation of a given mesh |
| d06dbc | nag_mesh2d_join Joins together two given adjacent (possibly overlapping) meshes |
| e01aec | nag_1d_cheb_interp Interpolating functions, polynomial interpolant, data may include derivative values, one variable |
| e01rac | nag_1d_ratnl_interp Interpolating functions, rational interpolant, one variable |
| e01rbc | nag_1d_ratnl_eval Interpolated values, evaluate rational interpolant computed by e01rac, one variable |
| e01tgc | nag_3d_shep_interp Interpolating functions, modified Shepard's method, three variables |
| e01thc | nag_3d_shep_eval Interpolated values, evaluate interpolant computed by e01tgc, function and first derivatives, three variables |
| e02agc | nag_1d_cheb_fit_constr Least-squares polynomial fit, values and derivatives may be constrained, arbitrary data points |
| e02ahc | nag_1d_cheb_deriv Derivative of fitted polynomial in Chebyshev series form |
| e02ajc | nag_1d_cheb_intg Integral of fitted polynomial in Chebyshev series form |
| e02akc | nag_1d_cheb_eval2 Evaluation of fitted polynomial in one variable from Chebyshev series form |
| e02cac | nag_2d_cheb_fit_lines Least-squares surface fit by polynomials, data on lines |
| e02cbc | nag_2d_cheb_eval Evaluation of fitted polynomial in two variables |
| e02gac | nag_lone_fit L1-approximation by general linear function |
| e02gcc | nag_linf_fit L∞-approximation by general linear function |
| e02rac | nag_1d_pade Padé-approximants |
| e02rbc | nag_1d_pade_eval Evaluation of fitted rational function as computed by e02rac |
| f07adc | nag_dgetrf LU factorization of real m by n matrix |
| f07aec | nag_dgetrs Solution of real system of linear equations, multiple right-hand sides, matrix already factorized by f07adc |
| f07agc | nag_dgecon Estimate condition number of real matrix, matrix already factorized by f07adc |
| f07ahc | nag_dgerfs Refined solution with error bounds of real system of linear equations, multiple right-hand sides |
| f07ajc | nag_dgetri Inverse of real matrix, matrix already factorized by f07adc |
| f07arc | nag_zgetrf LU factorization of complex m by n matrix |
| f07asc | nag_zgetrs Solution of complex system of linear equations, multiple right-hand sides, matrix already factorized by f07arc |
| f07auc | nag_zgecon Estimate condition number of complex matrix, matrix already factorized by f07arc |
| f07avc | nag_zgerfs Refined solution with error bounds of complex system of linear equations, multiple right-hand sides |
| f07awc | nag_zgetri Inverse of complex matrix, matrix already factorized by f07arc |
| f07bdc | nag_dgbtrf LU factorization of real m by n band matrix |
| f07bec | nag_dgbtrs Solution of real band system of linear equations, multiple right-hand sides, matrix already factorized by f07bdc |
| f07bgc | nag_dgbcon Estimate condition number of real band matrix, matrix already factorized by f07bdc |
| f07bhc | nag_dgbrfs Refined solution with error bounds of real band system of linear equations, multiple right-hand sides |
| f07brc | nag_zgbtrf LU factorization of complex m by n band matrix |
| f07bsc | nag_zgbtrs Solution of complex band system of linear equations, multiple right-hand sides, matrix already factorized by f07brc |
| f07buc | nag_zgbcon Estimate condition number of complex band matrix, matrix already factorized by f07brc |
| f07bvc | nag_zgbrfs Refined solution with error bounds of complex band system of linear equations, multiple right-hand sides |
| f07fdc | nag_dpotrf Cholesky factorization of real symmetric positive-definite matrix |
| f07fec | nag_dpotrs Solution of real symmetric positive-definite system of linear equations, multiple right-hand sides, matrix already factorized by f07fdc |
| f07fgc | nag_dpocon Estimate condition number of real symmetric positive-definite matrix, matrix already factorized by f07fdc |
| f07fhc | nag_dporfs Refined solution with error bounds of real symmetric positive-definite system of linear equations, multiple right-hand sides |
| f07fjc | nag_dpotri Inverse of real symmetric positive-definite matrix, matrix already factorized by f07fdc |
| f07frc | nag_zpotrf Cholesky factorization of complex Hermitian positive-definite matrix |
| f07fsc | nag_zpotrs Solution of complex Hermitian positive-definite system of linear equations, multiple right-hand sides, matrix already factorized by f07frc |
| f07fuc | nag_zpocon Estimate condition number of complex Hermitian positive-definite matrix, matrix already factorized by f07frc |
| f07fvc | nag_zporfs Refined solution with error bounds of complex Hermitian positive-definite system of linear equations, multiple right-hand sides |
| f07fwc | nag_zpotri Inverse of complex Hermitian positive-definite matrix, matrix already factorized by f07frc |
| f07gdc | nag_dpptrf Cholesky factorization of real symmetric positive-definite matrix, packed storage |
| f07gec | nag_dpptrs Solution of real symmetric positive-definite system of linear equations, multiple right-hand sides, matrix already factorized by f07gdc, packed storage |
| f07ggc | nag_dppcon Estimate condition number of real symmetric positive-definite matrix, matrix already factorized by f07gdc, packed storage |
| f07ghc | nag_dpprfs Refined solution with error bounds of real symmetric positive-definite system of linear equations, multiple right-hand sides, packed storage |
| f07gjc | nag_dpptri Inverse of real symmetric positive-definite matrix, matrix already factorized by f07gdc, packed storage |
| f07grc | nag_zpptrf Cholesky factorization of complex Hermitian positive-definite matrix, packed storage |
| f07gsc | nag_zpptrs Solution of complex Hermitian positive-definite system of linear equations, multiple right-hand sides, matrix already factorized by f07grc, packed storage |
| f07guc | nag_zppcon Estimate condition number of complex Hermitian positive-definite matrix, matrix already factorized by f07grc, packed storage |
| f07gvc | nag_zpprfs Refined solution with error bounds of complex Hermitian positive-definite system of linear equations, multiple right-hand sides, packed storage |
| f07gwc | nag_zpptri Inverse of complex Hermitian positive-definite matrix, matrix already factorized by f07grc, packed storage |
| f07hdc | nag_dpbtrf Cholesky factorization of real symmetric positive-definite band matrix |
| f07hec | nag_dpbtrs Solution of real symmetric positive-definite band system of linear equations, multiple right-hand sides, matrix already factorized by f07hdc |
| f07hgc | nag_dpbcon Estimate condition number of real symmetric positive-definite band matrix, matrix already factorized by f07hdc |
| f07hhc | nag_dpbrfs Refined solution with error bounds of real symmetric positive-definite band system of linear equations, multiple right-hand sides |
| f07hrc | nag_zpbtrf Cholesky factorization of complex Hermitian positive-definite band matrix |
| f07hsc | nag_zpbtrs Solution of complex Hermitian positive-definite band system of linear equations, multiple right-hand sides, matrix already factorized by f07hrc |
| f07huc | nag_zpbcon Estimate condition number of complex Hermitian positive-definite band matrix, matrix already factorized by f07hrc |
| f07hvc | nag_zpbrfs Refined solution with error bounds of complex Hermitian positive-definite band system of linear equations, multiple right-hand sides |
| f07mdc | nag_dsytrf Bunch–Kaufman factorization of real symmetric indefinite matrix |
| f07mec | nag_dsytrs Solution of real symmetric indefinite system of linear equations, multiple right-hand sides, matrix already factorized by f07mdc |
| f07mgc | nag_dsycon Estimate condition number of real symmetric indefinite matrix, matrix already factorized by f07mdc |
| f07mhc | nag_dsyrfs Refined solution with error bounds of real symmetric indefinite system of linear equations, multiple right-hand sides |
| f07mjc | nag_dsytri Inverse of real symmetric indefinite matrix, matrix already factorized by f07mdc |
| f07mrc | nag_zhetrf Bunch–Kaufman factorization of complex Hermitian indefinite matrix |
| f07msc | nag_zhetrs Solution of complex Hermitian indefinite system of linear equations, multiple right-hand sides, matrix already factorized by f07mrc |
| f07muc | nag_zhecon Estimate condition number of complex Hermitian indefinite matrix, matrix already factorized by f07mrc |
| f07mvc | nag_zherfs Refined solution with error bounds of complex Hermitian indefinite system of linear equations, multiple right-hand sides |
| f07mwc | nag_zhetri Inverse of complex Hermitian indefinite matrix, matrix already factorized by f07mrc |
| f07nrc | nag_zsytrf Bunch–Kaufman factorization of complex symmetric matrix |
| f07nsc | nag_zsytrs Solution of complex symmetric system of linear equations, multiple right-hand sides, matrix already factorized by f07nrc |
| f07nuc | nag_zsycon Estimate condition number of complex symmetric matrix, matrix already factorized by f07nrc |
| f07nvc | nag_zsyrfs Refined solution with error bounds of complex symmetric system of linear equations, multiple right-hand sides |
| f07nwc | nag_zsytri Inverse of complex symmetric matrix, matrix already factorized by f07nrc |
| f07pdc | nag_dsptrf Bunch–Kaufman factorization of real symmetric indefinite matrix, packed storage |
| f07pec | nag_dsptrs Solution of real symmetric indefinite system of linear equations, multiple right-hand sides, matrix already factorized by f07pdc, packed storage |
| f07pgc | nag_dspcon Estimate condition number of real symmetric indefinite matrix, matrix already factorized by f07pdc, packed storage |
| f07phc | nag_dsprfs Refined solution with error bounds of real symmetric indefinite system of linear equations, multiple right-hand sides, packed storage |
| f07pjc | nag_dsptri Inverse of real symmetric indefinite matrix, matrix already factorized by f07pdc, packed storage |
| f07prc | nag_zhptrf Bunch–Kaufman factorization of complex Hermitian indefinite matrix, packed storage |
| f07psc | nag_zhptrs Solution of complex Hermitian indefinite system of linear equations, multiple right-hand sides, matrix already factorized by f07prc, packed storage |
| f07puc | nag_zhpcon Estimate condition number of complex Hermitian indefinite matrix, matrix already factorized by f07prc, packed storage |
| f07pvc | nag_zhprfs Refined solution with error bounds of complex Hermitian indefinite system of linear equations, multiple right-hand sides, packed storage |
| f07pwc | nag_zhptri Inverse of complex Hermitian indefinite matrix, matrix already factorized by f07prc, packed storage |
| f07qrc | nag_zsptrf Bunch–Kaufman factorization of complex symmetric matrix, packed storage |
| f07qsc | nag_zsptrs Solution of complex symmetric system of linear equations, multiple right-hand sides, matrix already factorized by f07qrc, packed storage |
| f07quc | nag_zspcon Estimate condition number of complex symmetric matrix, matrix already factorized by f07qrc, packed storage |
| f07qvc | nag_zsprfs Refined solution with error bounds of complex symmetric system of linear equations, multiple right-hand sides, packed storage |
| f07qwc | nag_zsptri Inverse of complex symmetric matrix, matrix already factorized by f07qrc, packed storage |
| f07tec | nag_dtrtrs Solution of real triangular system of linear equations, multiple right-hand sides |
| f07tgc | nag_dtrcon Estimate condition number of real triangular matrix |
| f07thc | nag_dtrrfs Error bounds for solution of real triangular system of linear equations, multiple right-hand sides |
| f07tjc | nag_dtrtri Inverse of real triangular matrix |
| f07tsc | nag_ztrtrs Solution of complex triangular system of linear equations, multiple right-hand sides |
| f07tuc | nag_ztrcon Estimate condition number of complex triangular matrix |
| f07tvc | nag_ztrrfs Error bounds for solution of complex triangular system of linear equations, multiple right-hand sides |
| f07twc | nag_ztrtri Inverse of complex triangular matrix |
| f07uec | nag_dtptrs Solution of real triangular system of linear equations, multiple right-hand sides, packed storage |
| f07ugc | nag_dtpcon Estimate condition number of real triangular matrix, packed storage |
| f07uhc | nag_dtprfs Error bounds for solution of real triangular system of linear equations, multiple right-hand sides, packed storage |
| f07ujc | nag_dtptri Inverse of real triangular matrix, packed storage |
| f07usc | nag_ztptrs Solution of complex triangular system of linear equations, multiple right-hand sides, packed storage |
| f07uuc | nag_ztpcon Estimate condition number of complex triangular matrix, packed storage |
| f07uvc | nag_ztprfs Error bounds for solution of complex triangular system of linear equations, multiple right-hand sides, packed storage |
| f07uwc | nag_ztptri Inverse of complex triangular matrix, packed storage |
| f07vec | nag_dtbtrs Solution of real band triangular system of linear equations, multiple right-hand sides |
| f07vgc | nag_dtbcon Estimate condition number of real band triangular matrix |
| f07vhc | nag_dtbrfs Error bounds for solution of real band triangular system of linear equations, multiple right-hand sides |
| f07vsc | nag_ztbtrs Solution of complex band triangular system of linear equations, multiple right-hand sides |
| f07vuc | nag_ztbcon Estimate condition number of complex band triangular matrix |
| f07vvc | nag_ztbrfs Error bounds for solution of complex band triangular system of linear equations, multiple right-hand sides |
| f08aec | nag_dgeqrf QR factorization of real general rectangular matrix |
| f08afc | nag_dorgqr Form all or part of orthogonal Q from QR factorization determined by f08aec or f08bec |
| f08agc | nag_dormqr Apply orthogonal transformation determined by f08aec or f08bec |
| f08ahc | nag_dgelqf LQ factorization of real general rectangular matrix |
| f08ajc | nag_dorglq Form all or part of orthogonal Q from LQ factorization determined by f08ahc |
| f08akc | nag_dormlq Apply orthogonal transformation determined by f08ahc |
| f08asc | nag_zgeqrf QR factorization of complex general rectangular matrix |
| f08atc | nag_zungqr Form all or part of unitary Q from QR factorization determined by f08asc or f08bsc |
| f08auc | nag_zunmqr Apply unitary transformation determined by f08asc or f08bsc |
| f08avc | nag_zgelqf LQ factorization of complex general rectangular matrix |
| f08awc | nag_zunglq Form all or part of unitary Q from LQ factorization determined by f08avc |
| f08axc | nag_zunmlq Apply unitary transformation determined by f08avc |
| f08bec | nag_dgeqpf QR factorization of real general rectangular matrix with column pivoting |
| f08bsc | nag_zgeqpf QR factorization of complex general rectangular matrix with column pivoting |
| f08fcc | nag_dsyevd All eigenvalues and optionally all eigenvectors of real symmetric matrix, using divide and conquer |
| f08fec | nag_dsytrd Orthogonal reduction of real symmetric matrix to symmetric tridiagonal form |
| f08ffc | nag_dorgtr Generate orthogonal transformation matrix from reduction to tridiagonal form determined by f08fec |
| f08fgc | nag_dormtr Apply orthogonal transformation determined by f08fec |
| f08fqc | nag_zheevd All eigenvalues and optionally all eigenvectors of complex Hermitian matrix, using divide and conquer |
| f08fsc | nag_zhetrd Unitary reduction of complex Hermitian matrix to real symmetric tridiagonal form |
| f08ftc | nag_zungtr Generate unitary transformation matrix from reduction to tridiagonal form determined by f08fsc |
| f08fuc | nag_zunmtr Apply unitary transformation matrix determined by f08fsc |
| f08gcc | nag_dspevd All eigenvalues and optionally all eigenvectors of real symmetric matrix, packed storage, using divide and conquer |
| f08gec | nag_dsptrd Orthogonal reduction of real symmetric matrix to symmetric tridiagonal form, packed storage |
| f08gfc | nag_dopgtr Generate orthogonal transformation matrix from reduction to tridiagonal form determined by f08gec |
| f08ggc | nag_dopmtr Apply orthogonal transformation determined by f08gec |
| f08gqc | nag_zhpevd All eigenvalues and optionally all eigenvectors of complex Hermitian matrix, packed storage, using divide and conquer |
| f08gsc | nag_zhptrd Unitary reduction of complex Hermitian matrix to real symmetric tridiagonal form, packed storage |
| f08gtc | nag_zupgtr Generate unitary transformation matrix from reduction to tridiagonal form determined by f08gsc |
| f08guc | nag_zupmtr Apply unitary transformation matrix determined by f08gsc |
| f08hcc | nag_dsbevd All eigenvalues and optionally all eigenvectors of real symmetric band matrix, using divide and conquer |
| f08hec | nag_dsbtrd Orthogonal reduction of real symmetric band matrix to symmetric tridiagonal form |
| f08hqc | nag_zhbevd All eigenvalues and optionally all eigenvectors of complex Hermitian band matrix, using divide and conquer |
| f08hsc | nag_zhbtrd Unitary reduction of complex Hermitian band matrix to real symmetric tridiagonal form |
| f08jcc | nag_dstevd All eigenvalues and optionally all eigenvectors of real symmetric tridiagonal matrix, using divide and conquer |
| f08jec | nag_dsteqr All eigenvalues and eigenvectors of real symmetric tridiagonal matrix, reduced from real symmetric matrix using implicit QL or QR |
| f08jfc | nag_dsterf All eigenvalues of real symmetric tridiagonal matrix, root-free variant of QL or QR |
| f08jgc | nag_dpteqr All eigenvalues and eigenvectors of real symmetric positive-definite tridiagonal matrix, reduced from real symmetric positive-definite matrix |
| f08jjc | nag_dstebz Selected eigenvalues of real symmetric tridiagonal matrix by bisection |
| f08jkc | nag_dstein Selected eigenvectors of real symmetric tridiagonal matrix by inverse iteration, storing eigenvectors in real array |
| f08jsc | nag_zsteqr All eigenvalues and eigenvectors of real symmetric tridiagonal matrix, reduced from complex Hermitian matrix, using implicit QL or QR |
| f08juc | nag_zpteqr All eigenvalues and eigenvectors of real symmetric positive-definite tridiagonal matrix, reduced from complex Hermitian positive-definite matrix |
| f08jxc | nag_zstein Selected eigenvectors of real symmetric tridiagonal matrix by inverse iteration, storing eigenvectors in complex array |
| f08kec | nag_dgebrd Orthogonal reduction of real general rectangular matrix to bidiagonal form |
| f08kfc | nag_dorgbr Generate orthogonal transformation matrices from reduction to bidiagonal form determined by f08kec |
| f08kgc | nag_dormbr Apply orthogonal transformations from reduction to bidiagonal form determined by f08kec |
| f08ksc | nag_zgebrd Unitary reduction of complex general rectangular matrix to bidiagonal form |
| f08ktc | nag_zungbr Generate unitary transformation matrices from reduction to bidiagonal form determined by f08ksc |
| f08kuc | nag_zunmbr Apply unitary transformations from reduction to bidiagonal form determined by f08ksc |
| f08lec | nag_dgbbrd Reduction of real rectangular band matrix to upper bidiagonal form |
| f08lsc | nag_zgbbrd Reduction of complex rectangular band matrix to upper bidiagonal form |