Главная
Новости
Строительство
Ремонт
Дизайн и интерьер




18.04.2021


18.04.2021


18.04.2021


18.04.2021


18.04.2021





Яндекс.Метрика

Template Numerical Toolkit

25.07.2022

Template Numerical Toolkit (TNT; рус. Библиотека численных шаблонов) — библиотека шаблонов в языке программирования C++ для манипуляций одномерными, двумерными и трёхмерными массивами. Библиотека создана в Национальном институте стандартов и технологий США (NIST) и является общественным достоянием.

TNT предоставляет возможность присваивания без копирования с автоматическим подсчётом числа ссылок, поэлементных операций (сложения, вычитания, умножения и деления) и ввода-вывода массивов разной размерности, а также матричного умножения.

Более сложные операции линейной алгебры, в частности LU-разложение, обращение матриц, вычисление определителей, собственных значений и векторов, QR-разложение, разложение Холецкого, сингулярное разложение, предоставляются библиотекой шаблонов JAMA, также разработанной в NIST и использующей TNT. Как и TNT, JAMA является общественным достоянием.

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

Разработчик TNT — Рольдан Посо.