Matrix Template Library

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 les formats numériques classiques: float, double, complex<float> et complex<double>. La programmation générique permit aussi l'utilisation de tous les types qui disposent les opérations nécessaires. En conséquence, on peut utiliser tous les formats des nombres entiers (p. ex. unsigned short), des types pour l'arithmétique d'intervalles (p. ex. Boost::interval), des quaternions (p. ex. Boost::quaternion), des types de précision supérieur (p. ex. GNU MP) et des nouveaux types appropriés. La MTL soutient plusieurs implémentations de matrices denses et de matrices creuses. La MTL2 a été développée dans l'université de l'Indiana par Jeremy Siek et Andrew Lumsdaine[1].

La dernière version nommée MTL4, est actuellement développée par Peter Gottschling et Andrew Lumsdaine[2]. Elle contient la majorité des fonctionnalités de MTL2 et ajoute des nouvelles techniques d'optimisation comme le meta-tuning, par exemple le déroulement des boucles dans les opérations de matrices/vecteurs de taille dynamique ce qui peut être spécifié dans l'appel de fonction. D'une part, les applications génériques peuvent être écrites en notation naturelle, par exemple v += A*q - w;, d'autre part, la bibliothèque sélectionne les algorithmes appropriés : produits des matrices et vecteurs, ou produits matriciels ou multiplications des vecteurs par des scalaires etc.. Le but est d'encapsuler les détails techniques reliés à la performance dans la bibliothèque et de fournir aux scientifiques une interface intuitive.

Références

Article connexe

Liens externes


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Matrix Template Library de Wikipédia en français (auteurs)

Игры ⚽ Поможем написать реферат

Regardez d'autres dictionnaires:

  • 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 — Тип Математическое ПО Операционная система Linux, Unix, Mac OS X, Windows Языки интерфейса C++ Лицензия Boost Software License …   Википедия

  • 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

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”