42 #ifndef SLAP_MATRIX_SYM_WITH_OP_SERIAL_H
43 #define SLAP_MATRIX_SYM_WITH_OP_SERIAL_H
45 #include "AbstractLinAlgPack_MatrixOpSerial.hpp"
46 #include "AbstractLinAlgPack_MatrixSymOp.hpp"
48 namespace AbstractLinAlgPack {
131 ,value_type beta = 1.0
134 M.
Mp_StPtMtP(sym_lhs,alpha,dummy_place_holder,gpms_rhs,gpms_rhs_trans,beta);
144 ,value_type beta = 1.0
147 M.
Mp_StMtMtM(sym_lhs,alpha,dummy_place_holder,mwo_rhs,mwo_rhs_trans,beta);
154 #endif // SLAP_MATRIX_SYM_WITH_OP_SERIAL_H
void Mp_StPtMtP(DMatrixSliceSym *sym_lhs, value_type alpha, MatrixSymOpSerial::EMatRhsPlaceHolder dummy_place_holder, const MatrixSymOpSerial &M, const GenPermMatrixSlice &gpms_rhs, BLAS_Cpp::Transp gpms_rhs_trans, value_type beta=1.0)
sym_lhs = alpha * op(gpms_rhs') * M * op(gpms_rhs) + beta * sym_lhs.
virtual void Mp_StPtMtP(DMatrixSliceSym *sym_lhs, value_type alpha, EMatRhsPlaceHolder dummy_place_holder, const GenPermMatrixSlice &gpms_rhs, BLAS_Cpp::Transp gpms_rhs_trans, value_type beta) const
sym_lhs = alpha * op(gpms_rhs') * M * op(gpms_rhs) + beta * sym_lhs.
friend void Mp_StPtMtP(MatrixSymOp *sym_lhs, value_type alpha, EMatRhsPlaceHolder dummy_place_holder, const MatrixSymOp &M, const GenPermMatrixSlice &gpms_rhs, BLAS_Cpp::Transp gpms_rhs_trans, value_type beta)
Base class for all matrices implemented in a shared memory address space.
Interface adding operations specific for a symmetric matrix {abstract}.
Abstract base class for all AbstractLinAlgPack::MatrixSymOp objects implemented in shared memory spac...
const VectorSpace & space_rows() const
Must be overridden to call MatrixOpSerial::space_rows()
void Mp_StMtMtM(DMatrixSliceSym *sym_lhs, value_type alpha, MatrixSymOpSerial::EMatRhsPlaceHolder dummy_place_holder, const MatrixSymOpSerial &M, const MatrixOpSerial &mwo_rhs, BLAS_Cpp::Transp mwo_rhs_trans, value_type beta=1.0)
sym_lhs = alpha * op(mwo_rhs') * M * op(mwo_rhs) + beta * sym_lhs
Abstract interface for objects that represent a space for mutable coordinate vectors.
Base class for all matrices that support basic matrix operations.
virtual void Mp_StMtMtM(DMatrixSliceSym *sym_lhs, value_type alpha, EMatRhsPlaceHolder dummy_place_holder, const MatrixOpSerial &mwo_rhs, BLAS_Cpp::Transp mwo_rhs_trans, value_type beta) const
sym_lhs = alpha * op(mwo_rhs') * M * op(mwo_rhs).
Concrete matrix type to represent general permutation (mapping) matrices.