Iterative Template Library

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Lige (обсуждение | вклад) в 12:43, 24 сентября 2013 (Особенности). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску
Iterative Template Library
Тип Библиотека
Разработчик Open Systems Lab
Написана на C++
Операционная система Кроссплатформенное программное обеспечение
Последняя версия 4.0.0 (26 октября 2001 года)
Лицензия Полусвободное ПО[1]
Сайт www.osl.iu.edu/research/itl

Iterative Template Library (ITL) — библиотека компонентов, предназначенных для применения итеративных численных методов в манипуляциях с объектами линейной алгебры.

Особенности

ITL состоит из двух функциональных групп. Первая группа представляет собой коллекцию сложных итеративных методов, использующих алгоритмы базовых операций линейной алгебры, реализованные в специализированных пакетах типа Matrix Template Library (MTL) или en:Blitz++. Вторая группа — это набор алгоритмов предобуславливания, разработанный специально для работы с MTL.

Библиотека ITL использует абстрактные интерфейсы для операций вида матрица-вектор, вектор-вектор и вектор-скаляр, что позволяет прозрачно использовать их реализацию в сторонних библиотеках.

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

Данная библиотека была создана в Open Systems Lab — исследовательской лаборатории Индианского университета, как часть MTL.

Впервые была опубликована отдельно от MTL 25 июля 2000 года. Новый релиз включал в себя, кроме всего прочего, несколько интерфейсов для BLAS и Blitz++.

В последнем релизе (4.0.0) была произведена декомпозиция библиотеки на три функциональные области: методы для работы с подпространством Крылова; предобуславливания и интерфейсы. Методы для работы с подпространством Крылова являются базовыми, и не ограничены в использовании стандартными библиотеками, реализующими объекты линейной алгебры. Интерфейсы предназначены для использования в итеративных алгоритмах подпространства Крылова основных операций линейной алгебры, реализованных в сторонних библиотеках, таких как: MTL, Blitz++. Предобуславливания реализованы только для работы с библиотекой MTL.

Также, в этот релиз были включены экспериментальные интерфейсы для поддержки параллельных вычислений.

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

Примечания

См. также

Ссылки