42 #ifndef ABSTRACT_LIN_ALG_PACK_ASSERT_OP_H
43 #define ABSTRACT_LIN_ALG_PACK_ASSERT_OP_H
45 #include "AbstractLinAlgPack_Types.hpp"
47 namespace AbstractLinAlgPack {
90 const MatrixOp& m_rhs1,
BLAS_Cpp::Transp trans_rhs1,
const SpVectorSlice& sv_rhs2 );
94 ,
const MatrixOp& m_rhs1,
BLAS_Cpp::Transp trans_rhs1,
const Vector& v_rhs2 );
98 ,
const MatrixOp& m_rhs1,
BLAS_Cpp::Transp trans_rhs1,
const SpVectorSlice& sv_rhs2 );
117 #ifndef ABSTRACTLINALGPACK_ASSERT_COMPATIBILITY
176 #endif // ABSTRACTLINALGPACK_ASSERT_COMPATIBILITY
180 #endif // ABSTRACT_LIN_ALG_PACK_ASSERT_OP_H
void MtV_assert_compatibility(const MatrixOp &m_rhs1, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2)
op(m_rhs1) * sv_rhs2
void Vp_V_assert_compatibility(VectorMutable *v_lhs, const SpVectorSlice &sv_rhs)
v_lhs += op sv_rhs
Abstract interface for immutable, finite dimensional, coordinate vectors {abstract}.
void VopV_assert_compatibility(const SpVectorSlice &sv_rhs1, const Vector &v_rhs2)
sv_rhs1 op v_rhs2
void Vp_MtV_assert_compatibility(VectorMutable *v_lhs, const MatrixOp &m_rhs1, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2)
v_lhs += op(m_rhs1) * sv_rhs2
void MopM_assert_compatibility(const MatrixOp &m_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &m_rhs2, BLAS_Cpp::Transp trans_rhs2)
op(m_rhs1) op op(m_rhs2)
void MtM_assert_compatibility(const MatrixOp &m_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &m_rhs2, BLAS_Cpp::Transp trans_rhs2)
op(m_lhs) += op(m_rhs1)
void Mp_MtM_assert_compatibility(MatrixOp *m_lhs, BLAS_Cpp::Transp trans_lhs, const MatrixOp &m_rhs1, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &m_rhs2, BLAS_Cpp::Transp trans_rhs2)
op(m_lhs) += op(m_rhs1) * op(m_rhs2)
Base class for all matrices that support basic matrix operations.
Abstract interface for mutable coordinate vectors {abstract}.
void Mp_M_assert_compatibility(MatrixOp *m_lhs, BLAS_Cpp::Transp trans_lhs, const MatrixOp &m_rhs, BLAS_Cpp::Transp trans_rhs)
op(m_lhs) += op op(m_rhs)