NAG Numerical Library: Difference between revisions
Bunnyhop11 (talk | contribs) dab |
no space before <ref>, goes after punctuation |
||
Line 1: | Line 1: | ||
The '''NAG Numerical Library''' is a software product developed and sold by [[The Numerical Algorithms Group Ltd|The Numerical Algorithms Group]]. It is a [[library (computer science)|software library]] of [[numerical analysis]] routines, containing more than 1,700 mathematical and statistical algorithms. Areas covered by the library include [[linear equations|linear algebra]], [[Optimization problem|optimization]], [[quadrature]], the solution of [[ordinary differential equation|ordinary]] and [[partial differential equations]], [[regression analysis]], and [[time series analysis]]. |
The '''NAG Numerical Library''' is a software product developed and sold by [[The Numerical Algorithms Group Ltd|The Numerical Algorithms Group]]. It is a [[library (computer science)|software library]] of [[numerical analysis]] routines, containing more than 1,700 mathematical and statistical algorithms. Areas covered by the library include [[linear equations|linear algebra]], [[Optimization problem|optimization]], [[quadrature]], the solution of [[ordinary differential equation|ordinary]] and [[partial differential equations]], [[regression analysis]], and [[time series analysis]]. |
||
Users of the NAG Library call its routines from within their applications in order to incorporate its mathematical or statistical functionality and to solve numerical problems - for example, [[Optimization problem|finding the minimum or maximum of a function]], [[Curve_fitting|fitting a curve or surface to data]], or [[ordinary differential equation|solving a differential equation]]. The Library is currently available in the form of the NAG C Library |
Users of the NAG Library call its routines from within their applications in order to incorporate its mathematical or statistical functionality and to solve numerical problems - for example, [[Optimization problem|finding the minimum or maximum of a function]], [[Curve_fitting|fitting a curve or surface to data]], or [[ordinary differential equation|solving a differential equation]]. The Library is currently available in the form of the NAG C Library,<ref>[http://www.nag.co.uk/numeric/CL/CLdescription.asp NAG C Library]</ref> the NAG Fortran Library,<ref>[http://www.nag.co.uk/numeric/fl/FLdescription.asp NAG Fortran Library]</ref> and the NAG Library for .NET,<ref>[http://www.nag.co.uk/netdevelopers.asp NAG Library for .NET]</ref> and its contents are accessible from several computing environments, including standard languages such as [[C (programming language)|C]], [[C++]], [[Fortran]], [[Visual Basic]], [[Java (programming language)|Java]] and [[C Sharp (programming language)|C#]], as well as packages such as [[MATLAB]], [[R (programming language)|R]], [[LabVIEW]] and [[Microsoft Excel|Excel]]. Supported operating systems include the 32 bit and 64 bit versions of [[Microsoft Windows|Windows]], [[Linux]] and [[Mac OS X]], as well as [[Solaris Operating System|Solaris]], [[AIX operating system|AIX]] and [[HP-UX]]. |
||
== History == |
== History == |
||
Line 7: | Line 7: | ||
The original version of the NAG Library was written in [[Algol 60]] and [[Fortran]]. It contained 98 user-callable routines, and was released for the [[International Computers Limited|ICL]] [[ICT 1900 series#The 1900 A series|1906A]] and [[ICT 1900 series#The 1900 S series|1906S]] machines on October 1, 1971. Three further Marks of the library appeared in the following five years; during this time the Algol version was ported to Algol 68, with the following platforms being supported: [[CDC 7600]]/[[CDC Cyber|CYBER]] ([[Control Data Corporation|CDC]] [[ALGOL 68]]), [[IBM 360]]/370/AMDAHL ([[FLACC]] [[ALGOL 68]]), [[ICT 1900 series|ICL 1900]] ([[ALGOL 68R]]), ICL 1906A/S ([[ALGOL 68R]]), ICL 2900 ([[ALGOL 68RS]]) and [[Telefunken]] TR440 ([[ALGOL 68C]]). |
The original version of the NAG Library was written in [[Algol 60]] and [[Fortran]]. It contained 98 user-callable routines, and was released for the [[International Computers Limited|ICL]] [[ICT 1900 series#The 1900 A series|1906A]] and [[ICT 1900 series#The 1900 S series|1906S]] machines on October 1, 1971. Three further Marks of the library appeared in the following five years; during this time the Algol version was ported to Algol 68, with the following platforms being supported: [[CDC 7600]]/[[CDC Cyber|CYBER]] ([[Control Data Corporation|CDC]] [[ALGOL 68]]), [[IBM 360]]/370/AMDAHL ([[FLACC]] [[ALGOL 68]]), [[ICT 1900 series|ICL 1900]] ([[ALGOL 68R]]), ICL 1906A/S ([[ALGOL 68R]]), ICL 2900 ([[ALGOL 68RS]]) and [[Telefunken]] TR440 ([[ALGOL 68C]]). |
||
The first partially [[Vector processor|vectorized]] implementation of the NAG Fortran Library for the [[Cray-1]] was released in 1983, while the first release of the NAG Parallel Library |
The first partially [[Vector processor|vectorized]] implementation of the NAG Fortran Library for the [[Cray-1]] was released in 1983, while the first release of the NAG Parallel Library<ref>[http://www.nag.co.uk/numeric/fd/FDdescription.asp NAG Parallel Library]</ref> (which is specially designed for [[distributed memory]] parallel computer architectures) was in the early 1990s. Mark 1 of the NAG C Library was released in 1990. In 1992, the Library incorporated [[LAPACK]] routines for the first time; NAG had been a collaborator in the LAPACK project since 1987. The first release of the NAG Library for SMP & multicore,<ref>[http://www.nag.co.uk/numeric/FL/FSdescription.asp NAG Library for SMP & multicore]</ref> which takes advantage of the [[shared memory]] parallelism of [[SMP - Symmetric Multiprocessor System|Symmetric Multi-Processors]] (SMP) and [[Multi-core processor|multicore processors]], appeared in 1997 for multiprocessor machines built using the [[DEC Alpha|Dec Alpha]] and [[SPARC]] architectures. The NAG Library for .NET, which is a [[.NET assembly|.NET DLL assembly]] containing methods and objects that give [[.NET framework|.NET]] users access to NAG algorithms, was first released in 2010. |
||
== Current version == |
== Current version == |
Revision as of 10:17, 9 February 2012
The NAG Numerical Library is a software product developed and sold by The Numerical Algorithms Group. It is a software library of numerical analysis routines, containing more than 1,700 mathematical and statistical algorithms. Areas covered by the library include linear algebra, optimization, quadrature, the solution of ordinary and partial differential equations, regression analysis, and time series analysis.
Users of the NAG Library call its routines from within their applications in order to incorporate its mathematical or statistical functionality and to solve numerical problems - for example, finding the minimum or maximum of a function, fitting a curve or surface to data, or solving a differential equation. The Library is currently available in the form of the NAG C Library,[1] the NAG Fortran Library,[2] and the NAG Library for .NET,[3] and its contents are accessible from several computing environments, including standard languages such as C, C++, Fortran, Visual Basic, Java and C#, as well as packages such as MATLAB, R, LabVIEW and Excel. Supported operating systems include the 32 bit and 64 bit versions of Windows, Linux and Mac OS X, as well as Solaris, AIX and HP-UX.
History
The original version of the NAG Library was written in Algol 60 and Fortran. It contained 98 user-callable routines, and was released for the ICL 1906A and 1906S machines on October 1, 1971. Three further Marks of the library appeared in the following five years; during this time the Algol version was ported to Algol 68, with the following platforms being supported: CDC 7600/CYBER (CDC ALGOL 68), IBM 360/370/AMDAHL (FLACC ALGOL 68), ICL 1900 (ALGOL 68R), ICL 1906A/S (ALGOL 68R), ICL 2900 (ALGOL 68RS) and Telefunken TR440 (ALGOL 68C).
The first partially vectorized implementation of the NAG Fortran Library for the Cray-1 was released in 1983, while the first release of the NAG Parallel Library[4] (which is specially designed for distributed memory parallel computer architectures) was in the early 1990s. Mark 1 of the NAG C Library was released in 1990. In 1992, the Library incorporated LAPACK routines for the first time; NAG had been a collaborator in the LAPACK project since 1987. The first release of the NAG Library for SMP & multicore,[5] which takes advantage of the shared memory parallelism of Symmetric Multi-Processors (SMP) and multicore processors, appeared in 1997 for multiprocessor machines built using the Dec Alpha and SPARC architectures. The NAG Library for .NET, which is a .NET DLL assembly containing methods and objects that give .NET users access to NAG algorithms, was first released in 2010.
Current version
Mark 23, the latest release of the NAG Fortran Library, was announced in July 2011. Its contents include:
- A02: Complex Arithmetic
- C02: Zeros of Polynomials
- C05: Roots of One or More Transcendental Equations
- C06: Summation of Series
- C09: Wavelet Transforms
- D01: Quadrature
- D02: Ordinary Differential Equations
- D03: Partial Differential Equations
- D04: Numerical Differentiation
- D05: Integral Equations
- E01: Interpolation
- E02: Curve and Surface Fitting
- E04: Minimising or Maximising a Function
- E05: Global optimization of a function
- F01: Matrix Operations, including Inversion
- F02: Eigenvalues and Eigenvectors
- F03: Determinants
- F04: Simultaneous Linear Equations
- F05: Orthogonalization
- F07: Linear Equations (LAPACK)
- F08: Least Squares and Eigenvalue Problems (LAPACK)
- F11: Large Scale Linear Systems
- F12: Large Scale Eigenproblems
- G01: Simple Calculations on Statistical Data
- G02: Correlations and Regression Analysis
- G03: Multivariate Methods
- G04: Analysis of Variance
- G05: Random Number Generators
- G07: Univariate Estimation
- G08: Nonparametric Statistics
- G10: Smoothing in Statistics
- G11: Contingency Table Analysis
- G12: Survival Analysis
- G13: Time Series Analysis
- H: Operations Research
- M01: Sorting and Searching
- P01: Error Trapping
- S: Approximations of Special Functions
- T01: Vector and Matrix Operations
- X02: Machine Constants
- X03: Inner Products
References
See also
External links