MatrixOpSerial nonmember inline functions.

Level-1 BLAS



void AbstractLinAlgPack::Mp_StM (DMatrixSlice *gms_lhs, value_type alpha, const MatrixOpSerial &M_rhs, BLAS_Cpp::Transp trans_rhs)
 gms_lhs += alpha * op(M_rhs) (BLAS xAXPY)
void AbstractLinAlgPack::Mp_StMtP (DMatrixSlice *gms_lhs, value_type alpha, const MatrixOpSerial &M_rhs, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans)
 gms_lhs += alpha * op(M_rhs) * op(P_rhs)
void AbstractLinAlgPack::Mp_StPtM (DMatrixSlice *gms_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans, const MatrixOpSerial &M_rhs, BLAS_Cpp::Transp M_trans)
 gms_lhs += alpha * op(P) * op(M_rhs)
void AbstractLinAlgPack::Mp_StPtMtP (DMatrixSlice *gms_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, const MatrixOpSerial &M_rhs, BLAS_Cpp::Transp trans_rhs, const GenPermMatrixSlice &P_rhs2, BLAS_Cpp::Transp P_rhs2_trans)
 gms_lhs += alpha * op(P_rhs1) * op(M_rhs) * op(P_rhs2)

Level-2 BLAS



void AbstractLinAlgPack::Vp_StMtV (DVectorSlice *vs_lhs, value_type alpha, const MatrixOpSerial &M_rhs1, BLAS_Cpp::Transp trans_rhs1, const DVectorSlice &vs_rhs2, value_type beta=1.0)
 vs_lhs = alpha * op(M_rhs1) * vs_rhs2 + beta * vs_lhs (BLAS xGEMV)
void AbstractLinAlgPack::Vp_StMtV (DVectorSlice *vs_lhs, value_type alpha, const MatrixOpSerial &M_rhs1, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2, value_type beta=1.0)
 vs_lhs = alpha * op(M_rhs1) * sv_rhs2 + beta * vs_lhs (BLAS xGEMV)
void AbstractLinAlgPack::Vp_StPtMtV (DVectorSlice *vs_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp M_rhs2_trans, const DVectorSlice &vs_rhs3, value_type beta=1.0)
 vs_lhs = alpha * op(P_rhs1) * op(M_rhs2) * vs_rhs3 + beta * vs_rhs
void AbstractLinAlgPack::Vp_StPtMtV (DVectorSlice *vs_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp M_rhs2_trans, const SpVectorSlice &sv_rhs3, value_type beta=1.0)
 vs_lhs = alpha * op(P_rhs1) * op(M_rhs2) * sv_rhs3 + beta * vs_rhs
value_type AbstractLinAlgPack::transVtMtV (const DVectorSlice &vs_rhs1, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp trans_rhs2, const DVectorSlice &vs_rhs3)
 result = vs_rhs1' * op(M_rhs2) * vs_rhs3
value_type AbstractLinAlgPack::transVtMtV (const SpVectorSlice &sv_rhs1, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp trans_rhs2, const SpVectorSlice &sv_rhs3)
 result = sv_rhs1' * op(M_rhs2) * sv_rhs3

Level-3 BLAS



void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const MatrixOpSerial &M_rhs1, BLAS_Cpp::Transp trans_rhs1, const DMatrixSlice &gms_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(M_rhs1) * op(gms_rhs2) + beta * gms_lhs (right) (xGEMM)
void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const DMatrixSlice &gms_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(gms_rhs1) * op(M_rhs2) + beta * gms_lhs (left) (xGEMM)
void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const MatrixOpSerial &mwo_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOpSerial &gms_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(mwo_rhs1) * op(mwo_rhs2) + beta * gms_lhs (right) (xGEMM)
void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const MatrixOpSerial &M_rhs1, BLAS_Cpp::Transp trans_rhs1, const DMatrixSliceSym &sym_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(M_rhs1) * op(sym_rhs2) + beta * gms_lhs (right) (xSYMM)
void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const DMatrixSliceSym &sym_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(sym_rhs1) * op(M_rhs2) + beta * gms_lhs (left) (xSYMM)
void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const MatrixOpSerial &M_rhs1, BLAS_Cpp::Transp trans_rhs1, const DMatrixSliceTri &tri_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(M_rhs1) * op(tri_rhs2) + beta * gms_lhs (right) (xTRMM)
void AbstractLinAlgPack::Mp_StMtM (DMatrixSlice *gms_lhs, value_type alpha, const DMatrixSliceTri &tri_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOpSerial &M_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta=1.0)
 gms_lhs = alpha * op(tri_rhs1) * op(M_rhs2) + beta * gms_lhs (left) (xTRMM)

Detailed Description

These nonmember functions allow operations to be called on MatrixOpSerial objects in similar manner to those in DenseLinAlgPack.


Function Documentation

void AbstractLinAlgPack::Mp_StM ( DMatrixSlice gms_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs,
BLAS_Cpp::Transp  trans_rhs 
) [inline]

gms_lhs += alpha * op(M_rhs) (BLAS xAXPY)

Definition at line 310 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtP ( DMatrixSlice gms_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs,
BLAS_Cpp::Transp  M_trans,
const GenPermMatrixSlice &  P_rhs,
BLAS_Cpp::Transp  P_rhs_trans 
) [inline]

gms_lhs += alpha * op(M_rhs) * op(P_rhs)

Definition at line 317 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StPtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const GenPermMatrixSlice &  P_rhs,
BLAS_Cpp::Transp  P_rhs_trans,
const MatrixOpSerial &  M_rhs,
BLAS_Cpp::Transp  M_trans 
) [inline]

gms_lhs += alpha * op(P) * op(M_rhs)

Definition at line 326 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StPtMtP ( DMatrixSlice gms_lhs,
value_type  alpha,
const GenPermMatrixSlice &  P_rhs1,
BLAS_Cpp::Transp  P_rhs1_trans,
const MatrixOpSerial &  M_rhs,
BLAS_Cpp::Transp  trans_rhs,
const GenPermMatrixSlice &  P_rhs2,
BLAS_Cpp::Transp  P_rhs2_trans 
) [inline]

gms_lhs += alpha * op(P_rhs1) * op(M_rhs) * op(P_rhs2)

Definition at line 335 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Vp_StMtV ( DVectorSlice *  vs_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const DVectorSlice &  vs_rhs2,
value_type  beta = 1.0 
) [inline]

vs_lhs = alpha * op(M_rhs1) * vs_rhs2 + beta * vs_lhs (BLAS xGEMV)

Definition at line 350 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Vp_StMtV ( DVectorSlice *  vs_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const SpVectorSlice &  sv_rhs2,
value_type  beta = 1.0 
) [inline]

vs_lhs = alpha * op(M_rhs1) * sv_rhs2 + beta * vs_lhs (BLAS xGEMV)

Definition at line 357 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Vp_StPtMtV ( DVectorSlice *  vs_lhs,
value_type  alpha,
const GenPermMatrixSlice &  P_rhs1,
BLAS_Cpp::Transp  P_rhs1_trans,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  M_rhs2_trans,
const DVectorSlice &  vs_rhs3,
value_type  beta = 1.0 
) [inline]

vs_lhs = alpha * op(P_rhs1) * op(M_rhs2) * vs_rhs3 + beta * vs_rhs

Definition at line 364 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Vp_StPtMtV ( DVectorSlice *  vs_lhs,
value_type  alpha,
const GenPermMatrixSlice &  P_rhs1,
BLAS_Cpp::Transp  P_rhs1_trans,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  M_rhs2_trans,
const SpVectorSlice &  sv_rhs3,
value_type  beta = 1.0 
) [inline]

vs_lhs = alpha * op(P_rhs1) * op(M_rhs2) * sv_rhs3 + beta * vs_rhs

Definition at line 373 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

value_type AbstractLinAlgPack::transVtMtV ( const DVectorSlice &  vs_rhs1,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
const DVectorSlice &  vs_rhs3 
) [inline]

result = vs_rhs1' * op(M_rhs2) * vs_rhs3

Definition at line 382 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

value_type AbstractLinAlgPack::transVtMtV ( const SpVectorSlice &  sv_rhs1,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
const SpVectorSlice &  sv_rhs3 
) [inline]

result = sv_rhs1' * op(M_rhs2) * sv_rhs3

Definition at line 389 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const DMatrixSlice gms_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(M_rhs1) * op(gms_rhs2) + beta * gms_lhs (right) (xGEMM)

Definition at line 401 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const DMatrixSlice gms_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(gms_rhs1) * op(M_rhs2) + beta * gms_lhs (left) (xGEMM)

Definition at line 409 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const MatrixOpSerial &  mwo_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const MatrixOpSerial &  gms_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(mwo_rhs1) * op(mwo_rhs2) + beta * gms_lhs (right) (xGEMM)

Definition at line 417 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const DMatrixSliceSym sym_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(M_rhs1) * op(sym_rhs2) + beta * gms_lhs (right) (xSYMM)

Definition at line 425 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const DMatrixSliceSym sym_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(sym_rhs1) * op(M_rhs2) + beta * gms_lhs (left) (xSYMM)

Definition at line 433 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const MatrixOpSerial &  M_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const DMatrixSliceTri tri_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(M_rhs1) * op(tri_rhs2) + beta * gms_lhs (right) (xTRMM)

Definition at line 441 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

void AbstractLinAlgPack::Mp_StMtM ( DMatrixSlice gms_lhs,
value_type  alpha,
const DMatrixSliceTri tri_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
const MatrixOpSerial &  M_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta = 1.0 
) [inline]

gms_lhs = alpha * op(tri_rhs1) * op(M_rhs2) + beta * gms_lhs (left) (xTRMM)

Definition at line 449 of file AbstractLinAlgPack_MatrixOpSerial.hpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
Generated on Wed Apr 13 10:09:16 2011 for AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects by  doxygen 1.6.3