NAG Numerical Library — это программный продукт, разработанный и продаваемый The Numerical Algorithms Group Ltd. Это программная библиотека подпрограмм численного анализа , содержащая более 1900 математических и статистических алгоритмов. Области, охватываемые библиотекой, включают линейную алгебру , оптимизацию , квадратуру , решение обыкновенных и частных дифференциальных уравнений , регрессионный анализ и анализ временных рядов .
Пользователи библиотеки NAG вызывают ее процедуры из своих приложений, чтобы включить ее математические или статистические функции и решить численные задачи, например, найти минимум или максимум функции , подогнать кривую или поверхность к данным или решить дифференциальное уравнение . Библиотека NAG [1] доступна из различных языков и сред, таких как C/C++, [2] Fortran, [3] Python, [4] AD, [5] MATLAB, [6] Java [7] и .NET. [8] Основными поддерживаемыми системами в настоящее время являются Windows , Linux и macOS, работающие на архитектурах x86-64; поддержка 32-разрядной Windows постепенно прекращается. Некоторые решатели математической оптимизации NAG доступны через пакет моделирования оптимизации. [9]
Первоначальная версия библиотеки NAG была написана на Algol 60 и Fortran . Она содержала 98 вызываемых пользователем подпрограмм и была выпущена для машин ICL 1906A и 1906S 1 октября 1971 года. В последующие пять лет появились еще три Marks библиотеки; за это время версия Algol была перенесена на Algol 68, при этом поддерживались следующие платформы: 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 ) и Telefunken TR440 ( ALGOL 68C ).
Первая частично векторизованная реализация библиотеки NAG Fortran для Cray-1 была выпущена в 1983 году, в то время как первый выпуск параллельной библиотеки NAG (которая была специально разработана для параллельных компьютерных архитектур с распределенной памятью ) состоялся в начале 1990-х годов. Mark 1 библиотеки NAG C была выпущена в 1990 году. В 1992 году библиотека впервые включила процедуры LAPACK ; NAG была соавтором проекта LAPACK с 1987 года. Первый выпуск библиотеки NAG для SMP и многоядерных процессоров [10] , которая использует преимущества параллелизма общей памяти симметричных многоядерных процессоров (SMP) и многоядерных процессоров , появился в 1997 году для многопроцессорных машин, построенных с использованием архитектур Dec Alpha и SPARC . Библиотека NAG для .NET, представляющая собой сборку CLI DLL, содержащую методы и объекты, которые предоставляют пользователям Common Language Infrastructure (CLI) доступ к алгоритмам NAG, была впервые выпущена в 2010 году.
Mark 29 библиотеки NAG включает математические и статистические алгоритмы, организованные в главы. [11]
{{cite web}}
: Внешняя ссылка в |website=
( помощь )