пятница, 14 августа 2009 г.

Чуть-чуть о BLAS и Lapack

Не ищите процедуру умножения матриц (или матрицы на вектор) в Lapack. Это для Лапака слишком простая операция. Вот вычислить разложение Шура или сбалансировать матрицу (с целью уменьшения ее числа обусловленности) - пожалуйста.

Умножение матриц есть в BLAS и называется dgemm. Выполняет эта рутина следующую операцию: alpha * op(A) * op(B) + beta * C. Здесь альфа, бета - это числа; A, B, C - матрицы. Ну а op(X) = X или X', в зависимости от флага.

2 комментария:

Alexander Pozdneev комментирует...

Судя по твоим отрывычным записям, ты сейчас занимаешься чем-то жутко интересным!

Мне, кстати, очень нравится использовать BLAS/LAPACK, но, если вызывать эти функции из C, то могут быть проблемы с совместимостью, в зависимости от поставшика BLAS/LAPACK. На данный момент борюсь с этим с помощью #ifdef-ов.

trinidados комментирует...

:) пока я занимаюсь чистой воды самодеятельностью. Интересной,правда