CompoundSymMatrix Class Reference

#include <IpCompoundSymMatrix.hpp>

Inheritance diagram for CompoundSymMatrix:

SymMatrix Matrix TaggedObject ReferencedObject Subject

List of all members.


Detailed Description

Class for symmetric matrices consisting of other matrices.

Here, the lower left block of the matrix is stored.

Public Member Functions

void SetComp (Index irow, Index jcol, const Matrix &matrix)
 Method for setting an individual component at position (irow, icol) in the compound matrix.
void SetCompNonConst (Index irow, Index jcol, Matrix &matrix)
 Non const version of the same method.
SmartPtr< const MatrixGetComp (Index irow, Index jcol) const
 Method for retrieving one block from the compound matrix.
SmartPtr< MatrixGetCompNonConst (Index irow, Index jcol)
 Non const version of GetComp.
SmartPtr< CompoundSymMatrixMakeNewCompoundSymMatrix () const
 Method for creating a new matrix of this specific type.
Index NComps_Dim () const
 Number of block rows and columns.
Constructors / Destructors
 CompoundSymMatrix (const CompoundSymMatrixSpace *owner_space)
 Constructor, taking only the number for block components into the row and column direction.
 ~CompoundSymMatrix ()
 Destructor.

Protected Member Functions

Methods overloaded from matrix
virtual void MultVectorImpl (Number alpha, const Vector &x, Number beta, Vector &y) const
 Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
virtual bool HasValidNumbersImpl () const
 Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
virtual void PrintImpl (const Journalist &jnlst, EJournalLevel level, EJournalCategory category, const std::string &name, Index indent, const std::string &prefix) const
 Method for determining if all stored numbers are valid (i.e., no Inf or Nan).


Constructor & Destructor Documentation

CompoundSymMatrix ( const CompoundSymMatrixSpace owner_space  ) 

Constructor, taking only the number for block components into the row and column direction.

The owner_space has to be defined, so that at each block row and column contain at least one non-NULL component.

References CompoundSymMatrix::NComps_Dim().

Destructor.


Member Function Documentation

void SetComp ( Index  irow,
Index  jcol,
const Matrix matrix 
)

Method for setting an individual component at position (irow, icol) in the compound matrix.

The counting of indices starts at 0. Since this only the lower left components are stored, we need to have jcol<=irow, and if irow==jcol, the matrix must be a SymMatrix

References DBG_ASSERT, CompoundSymMatrixSpace::GetCompSpace(), CompoundSymMatrix::NComps_Dim(), and TaggedObject::ObjectChanged().

void SetCompNonConst ( Index  irow,
Index  jcol,
Matrix matrix 
)

SmartPtr<const Matrix> GetComp ( Index  irow,
Index  jcol 
) const [inline]

Method for retrieving one block from the compound matrix.

Since this only the lower left components are stored, we need to have jcol<=irow

SmartPtr<Matrix> GetCompNonConst ( Index  irow,
Index  jcol 
) [inline]

Non const version of GetComp.

You should only use this method if you are intending to change the matrix you receive, since this CompoundSymMatrix will be marked as changed.

References TaggedObject::ObjectChanged().

SmartPtr< CompoundSymMatrix > MakeNewCompoundSymMatrix (  )  const [inline]

Method for creating a new matrix of this specific type.

References CompoundSymMatrixSpace::MakeNewCompoundSymMatrix().

Index NComps_Dim (  )  const

void MultVectorImpl ( Number  alpha,
const Vector x,
Number  beta,
Vector y 
) const [protected, virtual]

bool HasValidNumbersImpl (  )  const [protected, virtual]

Method for determining if all stored numbers are valid (i.e., no Inf or Nan).

Reimplemented from Matrix.

References DBG_ASSERT, Matrix::HasValidNumbers(), and CompoundSymMatrix::NComps_Dim().

void PrintImpl ( const Journalist jnlst,
EJournalLevel  level,
EJournalCategory  category,
const std::string &  name,
Index  indent,
const std::string &  prefix 
) const [protected, virtual]

Method for determining if all stored numbers are valid (i.e., no Inf or Nan).

Implements Matrix.

References DBG_ASSERT, CompoundSymMatrix::NComps_Dim(), Matrix::Print(), Journalist::Printf(), and Journalist::PrintfIndented().


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

Generated on Fri Sep 26 07:44:25 2008 for SimTKcore by  doxygen 1.5.6