Matrix Template Library

Matrix Template Library
Matrix Template Library
Тип

Математическое ПО

Операционная система

Linux, Unix, Mac OS X, Windows

Языки интерфейса

C++

Лицензия

Boost Software License

Сайт

http://www.mtl4.org

Матричная библиотека шаблонов (MTL) — это библиотека линейной алгебры для С++ программ.

MTL использует шаблоны С++, которые значительно сокращают код программы. Все матрицы и векторы допустимы во всех классических числовых форматах: float, double, complex <float> или complex <double>.

Более того, обобщённое программирование допускает использование произвольных типов до тех пор пока они производят необходимые операции. Например, можно использовать произвольные числовые форматы (например, unsigned short), типы для интервальной арифметики (например, boost: интервал из Boost библиотеки, кватернионы (например, boost:кватернион), типы высокой точности (например, GNU Multi-Precision Library) и соответствующие определённые пользователем типы.

MTL поддерживает различные реализации плотной матрицы и разрежённой матрицы. MTL2 была разработана Jeremy Siek и Andrew Lumsdaine.[1]

Последняя версия, MTL4, была разработана Peter Gottschling и Andrew Lumsdaine. Она содержит большинство функций MTL2, а также дополнена новыми техниками оптимизации, такими как метанастройка, например, раскрутка цикла динамически размеренных контейнеров может быть определена в вызове функции. Независимая от платформы масштабируемость производительности достигнута рекурсивной структурой данных и рекурсивными алгоритмами.[2]

Универсальные приложения могут быть написаны в натуральной нотации (кодировке), например, v += A*q - w; тогда как библиотека самостоятельно обращается к соответствующим алгоритмам: матрично-векторное умножение или умножение матриц или векторно-скалярное умножение и т. д. Целью является скрыть реализационные вопросы внутри библиотеки и предоставить пользователю наглядный интерфейс. MTL4 используется в различных пакетах, таких как метод конечных элементов и Метод конечных объёмов, например, FEniCS Project.[3]

Примечания

См. также

  • Boost uBLAS, альтернативная библиотека линейной алгебры для С++

Ссылки

  • MTL домашняя страница
  • MTL4 домашняя страница

Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Полезное


Смотреть что такое "Matrix Template Library" в других словарях:

  • Matrix Template Library — Operating system Linux, Unix, Mac OS X, Windows Available in C++ Type Scientific software library Lice …   Wikipedia

  • Matrix Template Library — Betriebssystem Linux, Unix, Mac OS X, Windows Programmier­sprache C++ Kategorie Wissenschaftliche Programmbibliothek Lizenz …   Deutsch Wikipedia

  • Matrix Template Library — Matrix Template Librery 4 Desarrollador SimuNova http://www.simunova.com/mtl4 …   Wikipedia Español

  • Matrix Template Library — La Matrix Template Library (MTL) est une bibliothèque d algèbre linéaire pour les programmes C++. La MTL utilise la programmation générique, qui réduit considérablement la longueur des codes. Toutes les matrices et vecteurs sont disponibles dans… …   Wikipédia en Français

  • Iterative Template Library — The Iterative Template Library (ITL) is a generic component library that provides iterative methods for solving linear systems. ITL also provides numerous preconditioners which is for MTL. The ITL was written at the Open Systems Lab of Indiana… …   Wikipedia

  • Template Numerical Toolkit — The Template Numerical Toolkit (or TNT) is a software library for manipulating vectors and matrices in C++ created by the U.S. National Institute of Standards and Technology. TNT provides the fundamental linear algebra operations (for example,… …   Wikipedia

  • Monte Carlo Machine Learning Library (MCMLL) — The Monte Carlo Machine Learning Library (MCMLL) is an open source C++ template library which already relies on some C++0x specs. MCMLL is licensed under the GNU GPL. It is developed under the 64 bit Linux OS. MCMLL should be usable on other… …   Wikipedia

  • DNA-encoded chemical library — DNA encoded chemical libraries (DEL) are a new technology for the synthesis and screening of collections of chemical compounds of unprecedented size and quality. DEL represents an advance in medicinal chemistry which bridges the fields of… …   Wikipedia

  • С++ — См. также: Си (язык программирования) C++ Семантика: мультипарадигмальный: объектно ориентированное, обобщённое, процедурное, метапрограммирование Тип исполнения: компилируемый Появился в: 1985 г. Автор(ы): Бьёрн Страуструп …   Википедия

  • Basic Linear Algebra Subprograms — BLAS Betriebssystem plattformunabhängig Kategorie Programmbibliothek für: Lineare Algebra www.netlib.org/blas Basic Linear Algebra Subprograms (BLAS) bezeichnet eine Softwareb …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»