AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | List of all members
AbstractLinAlgPack::DirectSparseSolver::BasisMatrix Class Referenceabstract

Abstract class for objects that represent the factorized matrix and can be used to solve for different right-hand-sides. More...

#include <AbstractLinAlgPack_DirectSparseSolver.hpp>

Inheritance diagram for AbstractLinAlgPack::DirectSparseSolver::BasisMatrix:
Inheritance graph
[legend]

Public Types

typedef Teuchos::RCP
< FactorizationStructure
fact_struc_ptr_t
 

Public Member Functions

virtual const fact_struc_ptr_tget_fact_struc () const =0
 Return a reference to a smart pointer to the object that represents the factorization structure. More...
 
- Public Member Functions inherited from AbstractLinAlgPack::MatrixNonsing
virtual mat_mns_mut_ptr_t clone_mns ()
 Clone the non-const matrix object (if supported). More...
 
virtual mat_mns_ptr_t clone_mns () const
 Clone the const matrix object (if supported). More...
 
virtual void V_InvMtV (VectorMutable *v_lhs, BLAS_Cpp::Transp trans_rhs1, const Vector &v_rhs2) const =0
 v_lhs = inv(op(M_rhs1)) * vs_rhs2 More...
 
virtual void V_InvMtV (VectorMutable *v_lhs, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2) const
 v_lhs = inv(op(M_rhs1)) * sv_rhs2 More...
 
virtual value_type transVtInvMtV (const Vector &v_rhs1, BLAS_Cpp::Transp trans_rhs2, const Vector &v_rhs3) const
 result = vs_rhs1' * inv(op(M_rhs2)) * vs_rhs3 More...
 
virtual value_type transVtInvMtV (const SpVectorSlice &sv_rhs1, BLAS_Cpp::Transp trans_rhs2, const SpVectorSlice &sv_rhs3) const
 result = sv_rhs1' * inv(op(M_rhs2)) * sv_rhs3 More...
 
virtual void M_StInvMtM (MatrixOp *m_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &mwo_rhs2, BLAS_Cpp::Transp trans_rhs2) const
 m_lhs = alpha * inv(op(M_rhs1)) * op(mwo_rhs2) (right). More...
 
virtual void M_StMtInvM (MatrixOp *m_lhs, value_type alpha, const MatrixOp &mwo_rhs1, BLAS_Cpp::Transp trans_rhs1, BLAS_Cpp::Transp trans_rhs2) const
 m_lhs = alpha * op(mwo_rhs1) * inv(op(M_rhs2)) (left). More...
 
- Public Member Functions inherited from AbstractLinAlgPack::MatrixBase
virtual ~MatrixBase ()
 Virtual destructor. More...
 
virtual const VectorSpacespace_cols () const =0
 Vector space for vectors that are compatible with the columns of the matrix. More...
 
virtual const VectorSpacespace_rows () const =0
 Vector space for vectors that are compatible with the rows of the matrix. More...
 
virtual size_type rows () const
 Return the number of rows in the matrix. More...
 
virtual size_type cols () const
 Return the number of columns in the matrix. More...
 
virtual size_type nz () const
 Return the number of nonzero elements in the matrix. More...
 

Detailed Description

Abstract class for objects that represent the factorized matrix and can be used to solve for different right-hand-sides.

This object encapsulates the factorzation structure and the nonzero values of the factorized basis matrix.

Definition at line 263 of file AbstractLinAlgPack_DirectSparseSolver.hpp.

Member Typedef Documentation

Definition at line 266 of file AbstractLinAlgPack_DirectSparseSolver.hpp.

Member Function Documentation

virtual const fact_struc_ptr_t& AbstractLinAlgPack::DirectSparseSolver::BasisMatrix::get_fact_struc ( ) const
pure virtual

Return a reference to a smart pointer to the object that represents the factorization structure.

Returning a reference to a RCP<> object verses returning a RCP<> object itself is critical so that we can rely on RCP<>::count() to tell us how many clients have a reference to this object.

Implemented in AbstractLinAlgPack::DirectSparseSolverImp::BasisMatrixImp.


The documentation for this class was generated from the following file: