La biblioteca numérica NAG es un producto de software comercial desarrollado y comercializado por The Numerical Algorithms Group Ltd. Se trata de una biblioteca de rutinas de análisis numérico que contiene más de 1900 algoritmos matemáticos y estadísticos. Las áreas que abarca la biblioteca incluyen álgebra lineal , optimización , cuadratura , resolución de ecuaciones diferenciales ordinarias y parciales , análisis de regresión y análisis de series temporales .
Los usuarios de la biblioteca NAG llaman a sus rutinas desde dentro de sus aplicaciones para incorporar su funcionalidad matemática o estadística y resolver problemas numéricos, por ejemplo, encontrar el mínimo o el máximo de una función , ajustar una curva o superficie a datos o resolver una ecuación diferencial . La biblioteca NAG [ 1 ] se puede acceder desde una variedad de lenguajes y entornos de programación como C / C++ , [ 2 ] Fortran , [ 3 ] Python , [ 4 ] MATLAB , [ 5 ] Java , [ 6 ] y .NET . [ 7 ] Una biblioteca separada admite la diferenciación automática (AD). [ 8 ] Los principales sistemas compatibles actualmente son Windows , Linux y macOS ejecutándose en arquitecturas x86-64; la compatibilidad con Windows de 32 bits se está eliminando gradualmente. Algunos solucionadores de optimización matemática de NAG son accesibles a través del conjunto de modelado de optimización. [ 9 ]
Historia
La versión original de la biblioteca NAG fue escrita en ALGOL 60 y Fortran . Contenía 98 rutinas invocables por el usuario y fue lanzada para las máquinas International Computers Limited (ICL) 1906A y 1906S el 1 de octubre de 1971. Tres versiones más de la biblioteca aparecieron en los cinco años siguientes; durante este tiempo, la versión ALGOL fue portada a ALGOL 68, con soporte para las siguientes plataformas: 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 ) y Telefunken TR440 ( ALGOL 68C ).
La primera implementación parcialmente vectorizada de la biblioteca NAG Fortran para Cray-1 se publicó en 1983, mientras que la primera versión de la biblioteca paralela NAG (diseñada especialmente para arquitecturas de computadoras paralelas de memoria distribuida ) se publicó a principios de la década de 1990. La versión Mark 1 de la biblioteca NAG C se publicó en 1990. En 1992, la biblioteca incorporó rutinas LAPACK por primera vez; NAG había colaborado en el proyecto LAPACK desde 1987. La primera versión de la biblioteca NAG para SMP y multinúcleo, [ 10 ] que aprovecha el paralelismo de memoria compartida de los multiprocesadores simétricos (SMP) y los procesadores multinúcleo , apareció en 1997 para máquinas multiprocesador construidas con las arquitecturas Dec Alpha y SPARC . La biblioteca NAG para .NET, que es un ensamblado DLL de CLI que contiene métodos y objetos que dan a los usuarios de Common Language Infrastructure (CLI) acceso a los algoritmos NAG, se publicó por primera vez en 2010.
Versión actual
Mark 29 de la Biblioteca NAG incluye algoritmos matemáticos y estadísticos organizados en capítulos. [ 11 ]
Véase también
Referencias
- ↑ Biblioteca NAG
- ↑ Biblioteca NAG para C/C++
- ↑ Biblioteca NAG para Fortran
- ↑ Biblioteca NAG para Python
- ↑ NAG Toolbox para MATLAB
- ↑ Biblioteca NAG para Java
- ↑ Biblioteca NAG para .NET
- ^ Introducción a la biblioteca NAG AD
- ↑ Suite de modelado de optimización NAG
- ↑ Biblioteca NAG para SMP y multinúcleo
- ↑ "La interfaz CL de NAG" . Support.NAG.com . Consultado el 19 de enero de 2025 .
Enlaces externos
- La biblioteca de la NAG
- Historia de la informática en el Reino Unido
- Bibliotecas numéricas
- Ciencia y tecnología en Oxfordshire