JAMA (англ. Java Matrix Library — библиотека матриц на языке Java) — библиотека функций линейной алгебры. Библиотека создана в NIST и является общественным достоянием.

JAMA
Тип Библиотека
Разработчик NIST
Написана на Java, C++
Операционная система Кроссплатформенное программное обеспечение
Первый выпуск 1998
Последняя версия 1.0.3 (9 ноября 2012 года)
Лицензия Общественное достояние
Сайт math.nist.gov/javanumeri…

Особенности

править

Библиотека существует в двух версиях: на языке Java (собственно JAMA) и библиотека шаблонов на языке C++ (JAMA/C++). Версия на C++ использует Template Numerical Toolkit, разработанный там же. Версия на Java выполняет низкоуровневые операции сама.

Основные операции, выполняемые библиотекой:

Поскольку JAMA не содержит ничего, кроме заголовочных файлов с шаблонами, библиотека не требует компиляции. Поскольку все классы используют шаблоны, одинаково легко использовать матрицы и вектора с элементами типа float, double или описанных пользователем типов.

История развития

править

Первый выпуск библиотеки был представлен 5 августа 1998 года.

С 2000 года библиотека почти не развивается, производится только нерегулярное исправление замеченных ошибок.[1]

Альтернативы

править

Еще одним проектом NIST, а также, альтернативой JAMA, является библиотека Jampack, более гибкая в плане расширения функциональности.[2]

Примеры использования

править

Сингулярное разложение:

SingularValueDecomposition s = matA.svd();

Matrix U = s.getU();
Matrix S = s.getS();
Matrix V = s.getV();

Умножение матриц:

Matrix result = A.times(B);

Примечания

править
  1. JAMA Change Log. Дата обращения: 23 сентября 2013. Архивировано 14 июня 2013 года.
  2. Описание библиотеки JAMA Архивная копия от 10 ноября 2015 на Wayback Machine на сайте ГАИШ

Ссылки

править