Кольт (библиотеки) - Colt (libraries)
Оригинальный автор (ы) | NIST |
---|---|
Стабильный выпуск | 1.2.0 / 9 сентября 2004 г. |
Операционная система | Кроссплатформенность |
Тип | Библиотека |
Лицензия | ЦЕРН и LGPL |
Интернет сайт | ACS |
Кольт это набор Открытый исходный код Библиотеки для высокопроизводительных научных и технических вычислений, написанные на Ява и разработан в ЦЕРН. Кольт был разработан с упором на физику высоких энергий, но может применяться для решения многих других задач. Последний раз Colt обновлялся в 2004 году (когда текущим выпуском была Java 1.4), и его кодовая база была включена в Параллельный кольт кодовая база, получившая более позднее развитие.
Colt предоставляет инфраструктуру для масштабируемых научных и технических вычислений на Java. Это особенно полезно в области физики высоких энергий в ЦЕРНе. Он содержит, среди прочего, эффективные и удобные структуры данных и алгоритмы для автономного и оперативного анализа данных, линейной алгебры, многомерных массивов, статистики, гистограмм, моделирования Монте-Карло, параллельного и параллельного программирования. Он объединяет некоторые из лучших концепций, проектов и реализаций, со временем придуманных сообществом, переносит или улучшает их и вводит новые подходы там, где возникает необходимость.
Возможности
Ниже приводится обзор возможностей Colt, перечисленных на веб-сайте проекта:[1]
Особенность | Описание |
---|---|
Шаблонные списки и карты | Динамическое изменение размеров списков, содержащих объекты или примитивные типы данных, такие как int, double и т. Д. Операции с примитивными массивами, алгоритмы со списками Colt и алгоритмы JAL (см. Ниже) могут свободно смешиваться с нулевыми накладными расходами на копирование. Подробнее. Автоматическое увеличение и уменьшение карт, содержащих объекты или примитивные типы данных, такие как int, double и т. Д. |
Шаблонные многомерные матрицы | Плотные и разреженные матрицы фиксированного размера (без изменения размера) 1,2, 3 и d, содержащие объекты или примитивные типы данных, такие как int, double и т. Д .; Также известны как многомерные массивы или кубы данных. |
Линейная алгебра | Стандартные матричные операции и разложения. LU, QR, Холецкий, собственное значение, сингулярное значение. |
Гистограмма | Компактная, расширяемая, модульная и высокопроизводительная функция гистограмм. AIDA предлагает функции гистограммы HTL и HBOOK. |
Математика | Инструменты для базовой и продвинутой математики: арифметика и алгебра, многочлены и ряды Чебышева, функции Бесселя и Эйри, константы и единицы, тригонометрические функции и т. Д. |
Статистика | Инструменты для базовой и расширенной статистики: оценки, гамма-функции, бета-функции, вероятности, специальные интегралы и т. Д. |
Случайные числа и случайная выборка | Сильный, но быстрый. Частично порт CLHEP. |
util.concurrent | Эффективные служебные классы, часто встречающиеся в параллельном и параллельном программировании. |
Пример использования
Пример разложения по сингулярным значениям (SVD):
SingularValueDecomposition s = новый SingularValueDecomposition(matA);DoubleMatrix2D U = s.getU();DoubleMatrix2D S = s.GetS();DoubleMatrix2D V = s.getV();
Пример умножения матриц:
Алгебра alg = новый Алгебра();DoubleMatrix2D результат = alg.мульт(matA,matB);
Рекомендации
- ^ "Страница проекта Кольта". Кольт. Получено 15 июня, 2013.