AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects Version of the Day
AbstractLinAlgPack::MatrixZero Class Reference

Implementation of a matrix with all zeros. More...

#include <AbstractLinAlgPack_MatrixZero.hpp>

Inheritance diagram for AbstractLinAlgPack::MatrixZero:
Inheritance graph
[legend]

List of all members.

Constructors/initializers

 MatrixZero (const VectorSpace::space_ptr_t &space_cols=Teuchos::null, const VectorSpace::space_ptr_t &space_rows=Teuchos::null)
 Calls this->initalize()
void initialize (const VectorSpace::space_ptr_t &space_cols, const VectorSpace::space_ptr_t &space_rows)
 Initialize (or initialize) given the columns and rows vector spaces.

Overridden from MatrixBase

size_type rows () const
 
size_type cols () const
 
size_type nz () const
 

Overridden from MatrixOp

const VectorSpacespace_cols () const
 
const VectorSpacespace_rows () const
 
void zero_out ()
 
void Mt_S (value_type alpha)
 
MatrixOpoperator= (const MatrixOp &M)
 
std::ostream & output (std::ostream &out) const
 
bool Mp_StM (MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs) const
 
bool Mp_StMtP (MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans) const
 
bool Mp_StPtM (MatrixOp *mwo_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs, BLAS_Cpp::Transp P_rhs_trans, BLAS_Cpp::Transp M_trans) const
 
bool Mp_StPtMtP (MatrixOp *mwo_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_trans, const GenPermMatrixSlice &P_rhs2, BLAS_Cpp::Transp P_rhs2_trans) const
 
void Vp_StMtV (VectorMutable *vs_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const Vector &v_rhs2, value_type beta) const
 
void Vp_StMtV (VectorMutable *vs_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const SpVectorSlice &sv_rhs2, value_type beta) const
 
void Vp_StPtMtV (VectorMutable *vs_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const Vector &v_rhs3, value_type beta) const
 
void Vp_StPtMtV (VectorMutable *vs_lhs, value_type alpha, const GenPermMatrixSlice &P_rhs1, BLAS_Cpp::Transp P_rhs1_trans, BLAS_Cpp::Transp M_rhs2_trans, const SpVectorSlice &sv_rhs3, value_type beta) const
 
value_type transVtMtV (const Vector &v_rhs1, BLAS_Cpp::Transp trans_rhs2, const Vector &v_rhs3) const
 
value_type transVtMtV (const SpVectorSlice &sv_rhs1, BLAS_Cpp::Transp trans_rhs2, const SpVectorSlice &sv_rhs3) const
 
void syr2k (BLAS_Cpp::Transp M_trans, value_type alpha, const GenPermMatrixSlice &P1, BLAS_Cpp::Transp P1_trans, const GenPermMatrixSlice &P2, BLAS_Cpp::Transp P2_trans, value_type beta, MatrixSymOp *symwo_lhs) const
 
bool Mp_StMtM (MatrixOp *mwo_lhs, value_type alpha, BLAS_Cpp::Transp trans_rhs1, const MatrixOp &mwo_rhs2, BLAS_Cpp::Transp trans_rhs2, value_type beta) const
 
bool Mp_StMtM (MatrixOp *mwo_lhs, value_type alpha, const MatrixOp &mwo_rhs1, BLAS_Cpp::Transp trans_rhs1, BLAS_Cpp::Transp trans_rhs2, value_type beta) const
 
bool syrk (BLAS_Cpp::Transp M_trans, value_type alpha, value_type beta, MatrixSymOp *sym_lhs) const
 

Detailed Description

Implementation of a matrix with all zeros.

This may seem like a silly class but it is helpful in some circumstances. This class needs to be updated whenever methods are added or removed from MatrixOp.

Definition at line 56 of file AbstractLinAlgPack_MatrixZero.hpp.


Constructor & Destructor Documentation

AbstractLinAlgPack::MatrixZero::MatrixZero ( const VectorSpace::space_ptr_t space_cols = Teuchos::null,
const VectorSpace::space_ptr_t space_rows = Teuchos::null 
)

Calls this->initalize()

Definition at line 53 of file AbstractLinAlgPack_MatrixZero.cpp.


Member Function Documentation

void AbstractLinAlgPack::MatrixZero::initialize ( const VectorSpace::space_ptr_t space_cols,
const VectorSpace::space_ptr_t space_rows 
)

Initialize (or initialize) given the columns and rows vector spaces.

Preconditions:

  • [space_cols.get() == NULL] space_rows.get() == NULL (throw std::invalid_argument)
  • [space_cols.get() != NULL] space_rows.get() != NULL (throw std::invalid_argument)

Postconditions:

  • [space_cols.get() == NULL] this->rows() == 0
  • [space_cols.get() == NULL] this->cols() == 0
  • [space_cols.get() != NULL] &this->space_cols() == space_cols.get()
  • [space_cols.get() != NULL] &this->space_rows() == space_rows.get()

Definition at line 61 of file AbstractLinAlgPack_MatrixZero.cpp.

size_type AbstractLinAlgPack::MatrixZero::rows ( ) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixBase.

Definition at line 78 of file AbstractLinAlgPack_MatrixZero.cpp.

size_type AbstractLinAlgPack::MatrixZero::cols ( ) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixBase.

Definition at line 83 of file AbstractLinAlgPack_MatrixZero.cpp.

size_type AbstractLinAlgPack::MatrixZero::nz ( ) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixBase.

Definition at line 88 of file AbstractLinAlgPack_MatrixZero.cpp.

const VectorSpace & AbstractLinAlgPack::MatrixZero::space_cols ( ) const [virtual]

Implements AbstractLinAlgPack::MatrixBase.

Definition at line 95 of file AbstractLinAlgPack_MatrixZero.cpp.

const VectorSpace & AbstractLinAlgPack::MatrixZero::space_rows ( ) const [virtual]

Implements AbstractLinAlgPack::MatrixBase.

Definition at line 101 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::zero_out ( ) [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 107 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::Mt_S ( value_type  alpha) [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 113 of file AbstractLinAlgPack_MatrixZero.cpp.

MatrixOp & AbstractLinAlgPack::MatrixZero::operator= ( const MatrixOp M) [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 119 of file AbstractLinAlgPack_MatrixZero.cpp.

std::ostream & AbstractLinAlgPack::MatrixZero::output ( std::ostream &  out) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 126 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::Mp_StM ( MatrixOp mwo_lhs,
value_type  alpha,
BLAS_Cpp::Transp  trans_rhs 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 134 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::Mp_StMtP ( MatrixOp mwo_lhs,
value_type  alpha,
BLAS_Cpp::Transp  M_trans,
const GenPermMatrixSlice P_rhs,
BLAS_Cpp::Transp  P_rhs_trans 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 142 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::Mp_StPtM ( MatrixOp mwo_lhs,
value_type  alpha,
const GenPermMatrixSlice P_rhs,
BLAS_Cpp::Transp  P_rhs_trans,
BLAS_Cpp::Transp  M_trans 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 152 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::Mp_StPtMtP ( MatrixOp mwo_lhs,
value_type  alpha,
const GenPermMatrixSlice P_rhs1,
BLAS_Cpp::Transp  P_rhs1_trans,
BLAS_Cpp::Transp  M_trans,
const GenPermMatrixSlice P_rhs2,
BLAS_Cpp::Transp  P_rhs2_trans 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 162 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::Vp_StMtV ( VectorMutable vs_lhs,
value_type  alpha,
BLAS_Cpp::Transp  trans_rhs1,
const Vector v_rhs2,
value_type  beta 
) const [virtual]

Implements AbstractLinAlgPack::MatrixOp.

Definition at line 175 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::Vp_StMtV ( VectorMutable vs_lhs,
value_type  alpha,
BLAS_Cpp::Transp  trans_rhs1,
const SpVectorSlice sv_rhs2,
value_type  beta 
) const

Definition at line 184 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::Vp_StPtMtV ( VectorMutable vs_lhs,
value_type  alpha,
const GenPermMatrixSlice P_rhs1,
BLAS_Cpp::Transp  P_rhs1_trans,
BLAS_Cpp::Transp  M_rhs2_trans,
const Vector v_rhs3,
value_type  beta 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 192 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::Vp_StPtMtV ( VectorMutable vs_lhs,
value_type  alpha,
const GenPermMatrixSlice P_rhs1,
BLAS_Cpp::Transp  P_rhs1_trans,
BLAS_Cpp::Transp  M_rhs2_trans,
const SpVectorSlice sv_rhs3,
value_type  beta 
) const

Definition at line 202 of file AbstractLinAlgPack_MatrixZero.cpp.

value_type AbstractLinAlgPack::MatrixZero::transVtMtV ( const Vector v_rhs1,
BLAS_Cpp::Transp  trans_rhs2,
const Vector v_rhs3 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 212 of file AbstractLinAlgPack_MatrixZero.cpp.

value_type AbstractLinAlgPack::MatrixZero::transVtMtV ( const SpVectorSlice sv_rhs1,
BLAS_Cpp::Transp  trans_rhs2,
const SpVectorSlice sv_rhs3 
) const

Definition at line 220 of file AbstractLinAlgPack_MatrixZero.cpp.

void AbstractLinAlgPack::MatrixZero::syr2k ( BLAS_Cpp::Transp  M_trans,
value_type  alpha,
const GenPermMatrixSlice P1,
BLAS_Cpp::Transp  P1_trans,
const GenPermMatrixSlice P2,
BLAS_Cpp::Transp  P2_trans,
value_type  beta,
MatrixSymOp symwo_lhs 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 228 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::Mp_StMtM ( MatrixOp mwo_lhs,
value_type  alpha,
BLAS_Cpp::Transp  trans_rhs1,
const MatrixOp mwo_rhs2,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 240 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::Mp_StMtM ( MatrixOp mwo_lhs,
value_type  alpha,
const MatrixOp mwo_rhs1,
BLAS_Cpp::Transp  trans_rhs1,
BLAS_Cpp::Transp  trans_rhs2,
value_type  beta 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 250 of file AbstractLinAlgPack_MatrixZero.cpp.

bool AbstractLinAlgPack::MatrixZero::syrk ( BLAS_Cpp::Transp  M_trans,
value_type  alpha,
value_type  beta,
MatrixSymOp sym_lhs 
) const [virtual]

Reimplemented from AbstractLinAlgPack::MatrixOp.

Definition at line 260 of file AbstractLinAlgPack_MatrixZero.cpp.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends