Вычисляет произведение матриц, где входная матрица A треугольная.
C = alpha*op(A) или
C = alpha*B*op(A),
где A — треугольная матрица размера m на m при side='L' или размера n на n в противном случае; B и C — матрицы размера m на n.
BLAS-функция TRMM.
Вычисления для типа matrix<double>
bool matrix::BlasL3TrMM(
|
Вычисления для типа matrix<float>
bool matrixf::BlasL3TrMM(
|
Вычисления для типа matrix<complex>
bool matrixc::BlasL3TrMM(
|
Вычисления для типа matrix<complexf>
bool matrixcf::BlasL3TrMM(
|
Параметры
side
[in] Значение перечисления ENUM_BLAS_SIDE, задающее сторону входной матрицы A в произведении:
если side= 'L', то C = alpha*op(A)*B;
если side= 'R', то C = alpha*B*op(A).
transa
[in] Значение перечисления ENUM_BLAS_TRANS, задающее операцию:
если transa= 'N', то op(A) = A;
если transa= 'T', то op(A) = A**T;
если transa= 'C', то op(A) = A**H.
B
[in] Матрица B размера m на n.
C
[out] Результирующая матрица C размера m на n.
Возвращаемое значение
Возвращает true при успешном выполнении, иначе false в случае ошибки.
Примечание
Входной матрицей может быть верхняя или нижняя треугольная матрица.
ENUM_BLAS_SIDE
Перечисление, определяющее сторону входной матрицы A в произведении.
ID |
Описание |
|---|---|
BLASSIDE_L |
'L': левая сторона |
BLASSIDE_R |
'R': правая сторона |
ENUM_BLAS_TRANS
Перечисление, определяющее вариант op(A).
ID |
Описание |
|---|---|
BLASTRANS_N |
'N': без транспонирования |
BLASTRANS_T |
'T': транспонирование |
BLASTRANS_C |
'C': сопряженное транспонирование |