Escript  Revision_4320
Public Member Functions | Private Member Functions | Private Attributes | List of all members
escript::AbstractSystemMatrix Class Reference

Give a short description of what AbstractSystemMatrix does. More...

#include <AbstractSystemMatrix.h>

Inheritance diagram for escript::AbstractSystemMatrix:
paso::SystemMatrixAdapter

Public Member Functions

 AbstractSystemMatrix ()
 Default constructor for AbstractSystemMatrix.
 AbstractSystemMatrix (const int row_blocksize, const FunctionSpace &row_functionspace, const int column_blocksize, const FunctionSpace &column_functionspace)
virtual ~AbstractSystemMatrix ()
 Destructor.
Data vectorMultiply (Data &right) const
 matrix*vector multiplication
int isEmpty () const
 returns true if the matrix is empty
FunctionSpace getColumnFunctionSpace () const
 returns the column function space
FunctionSpace getRowFunctionSpace () const
 returns the row function space
int getRowBlockSize () const
 returns the row block size
int getColumnBlockSize () const
 returns the column block size
Data solve (Data &in, boost::python::object &options) const
 returns the solution u of the linear system this*u=in
virtual void nullifyRowsAndCols (escript::Data &row_q, escript::Data &col_q, const double mdv) const
 nullifyRowsAndCols - calls Paso_SystemMatrix_nullifyRowsAndCols.
virtual void saveMM (const std::string &fileName) const
 writes the matrix to a file using the Matrix Market file format
virtual void saveHB (const std::string &fileName) const
 writes the matrix to a file using the Harwell-Boeing file format
virtual void resetValues () const
 resets the matrix entries

Private Member Functions

virtual void setToSolution (Data &out, Data &in, boost::python::object &options) const
 solves the linear system this*out=in
virtual void ypAx (Data &y, Data &x) const
 performs y+=this*x

Private Attributes

int m_empty
int m_column_blocksize
int m_row_blocksize
FunctionSpace m_row_functionspace
FunctionSpace m_column_functionspace

Detailed Description

Give a short description of what AbstractSystemMatrix does.

Description: Give a detailed description of AbstractSystemMatrix

Template Parameters: For templates describe any conditions that the parameters used in the template must satisfy

Constructor & Destructor Documentation

escript::AbstractSystemMatrix::AbstractSystemMatrix ( )

Default constructor for AbstractSystemMatrix.

Description: Default constructor for AbstractSystemMatrix

Preconditions: Describe any preconditions

Throws: Describe any exceptions thrown

References m_empty.

escript::AbstractSystemMatrix::AbstractSystemMatrix ( const int  row_blocksize,
const FunctionSpace row_functionspace,
const int  column_blocksize,
const FunctionSpace column_functionspace 
)
escript::AbstractSystemMatrix::~AbstractSystemMatrix ( )
virtual

Destructor.

Member Function Documentation

int escript::AbstractSystemMatrix::getColumnBlockSize ( ) const
inline
FunctionSpace escript::AbstractSystemMatrix::getColumnFunctionSpace ( ) const
inline
int escript::AbstractSystemMatrix::getRowBlockSize ( ) const
inline
FunctionSpace escript::AbstractSystemMatrix::getRowFunctionSpace ( ) const
inline
int escript::AbstractSystemMatrix::isEmpty ( ) const
void escript::AbstractSystemMatrix::nullifyRowsAndCols ( escript::Data row_q,
escript::Data col_q,
const double  mdv 
) const
virtual

nullifyRowsAndCols - calls Paso_SystemMatrix_nullifyRowsAndCols.

Reimplemented in paso::SystemMatrixAdapter.

Referenced by BOOST_PYTHON_MODULE().

void escript::AbstractSystemMatrix::resetValues ( ) const
virtual

resets the matrix entries

Reimplemented in paso::SystemMatrixAdapter.

Referenced by BOOST_PYTHON_MODULE().

void escript::AbstractSystemMatrix::saveHB ( const std::string &  fileName) const
virtual

writes the matrix to a file using the Harwell-Boeing file format

Reimplemented in paso::SystemMatrixAdapter.

Referenced by BOOST_PYTHON_MODULE().

void escript::AbstractSystemMatrix::saveMM ( const std::string &  fileName) const
virtual

writes the matrix to a file using the Matrix Market file format

Reimplemented in paso::SystemMatrixAdapter.

Referenced by BOOST_PYTHON_MODULE().

void escript::AbstractSystemMatrix::setToSolution ( Data out,
Data in,
boost::python::object &  options 
) const
privatevirtual

solves the linear system this*out=in

Referenced by solve().

Data escript::AbstractSystemMatrix::solve ( Data in,
boost::python::object &  options 
) const
Data escript::AbstractSystemMatrix::vectorMultiply ( Data right) const
void escript::AbstractSystemMatrix::ypAx ( Data y,
Data x 
) const
privatevirtual

performs y+=this*x

Referenced by vectorMultiply().

Member Data Documentation

int escript::AbstractSystemMatrix::m_column_blocksize
private
FunctionSpace escript::AbstractSystemMatrix::m_column_functionspace
private

Referenced by getColumnFunctionSpace().

int escript::AbstractSystemMatrix::m_empty
private

Referenced by AbstractSystemMatrix(), and isEmpty().

int escript::AbstractSystemMatrix::m_row_blocksize
private
FunctionSpace escript::AbstractSystemMatrix::m_row_functionspace
private

Referenced by getRowFunctionSpace().


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