Playa::DenseSerialMatrix Class Reference

#include <PlayaDenseSerialMatrix.hpp>

Inheritance diagram for Playa::DenseSerialMatrix:

Playa::LinearOpWithSpaces< double > Playa::LoadableMatrix< double > Playa::Printable Playa::LinearOperatorBase< double > Playa::ObjectWithVerbosity

List of all members.

Public Member Functions

 DenseSerialMatrix (const VectorSpace< double > &domain, const VectorSpace< double > &range)
 ~DenseSerialMatrix ()
virtual void apply (Teuchos::ETransp transApplyType, const Vector< double > &in, Vector< double > out) const
virtual void addToRow (int globalRowIndex, int nElemsToInsert, const int *globalColumnIndices, const double *elementValues)
virtual void zero ()
void print (std::ostream &os) const
const double *const dataPtr () const
double * dataPtr ()
int numRows () const
int numCols () const
void setRow (int row, const Array< double > &rowVals)

Related Functions

(Note that these are not member functions.)

void denseSVD (const LinearOperator< double > &A, LinearOperator< double > &U, Vector< double > &Sigma, LinearOperator< double > &Vt)
SolverState< double > denseSolve (const LinearOperator< double > &A, const Vector< double > &b, Vector< double > &x)

Detailed Description

Linear operator implemented as a dense matrix.

Definition at line 30 of file PlayaDenseSerialMatrix.hpp.

Constructor & Destructor Documentation

DenseSerialMatrix::DenseSerialMatrix ( const VectorSpace< double > &  domain,
const VectorSpace< double > &  range 

Construct with domain and range spaces, which should be DenseSerialVectorSpace objects

Definition at line 35 of file PlayaDenseSerialMatrix.cpp.

Playa::DenseSerialMatrix::~DenseSerialMatrix (  )  [inline]

Virtual dtor

Definition at line 42 of file PlayaDenseSerialMatrix.hpp.

Member Function Documentation

void DenseSerialMatrix::apply ( Teuchos::ETransp  transApplyType,
const Vector< double > &  in,
Vector< double >  out 
) const [virtual]

Apply either the operator or its transpose

Implements Playa::LinearOperatorBase< double >.

Definition at line 45 of file PlayaDenseSerialMatrix.cpp.

void DenseSerialMatrix::addToRow ( int  globalRowIndex,
int  nElemsToInsert,
const int *  globalColumnIndices,
const double *  elementValues 
) [virtual]

Insert a set of elements in a row, adding to any previously existing values. The nonzero structure of the matrix must have been determined at construction time.

globalRowIndex the global index of the row to which these elements belong.
nElemsToInsert the number of elements being inserted in this step
globalColumnIndices array of column indices. Must be nElemsToInsert in length.
elements array of element values. Must be nElemsToInsert in length

Implements Playa::LoadableMatrix< double >.

Definition at line 59 of file PlayaDenseSerialMatrix.cpp.

void DenseSerialMatrix::zero (  )  [virtual]

Set all elements to zero, preserving the existing structure

Implements Playa::LoadableMatrix< double >.

Definition at line 73 of file PlayaDenseSerialMatrix.cpp.

void DenseSerialMatrix::print ( std::ostream &  os  )  const [virtual]

write to a stream

Implements Playa::Printable.

Definition at line 79 of file PlayaDenseSerialMatrix.cpp.

const double* const Playa::DenseSerialMatrix::dataPtr (  )  const [inline]

Definition at line 78 of file PlayaDenseSerialMatrix.hpp.

double* Playa::DenseSerialMatrix::dataPtr (  )  [inline]

Definition at line 81 of file PlayaDenseSerialMatrix.hpp.

int Playa::DenseSerialMatrix::numRows (  )  const [inline]

Definition at line 84 of file PlayaDenseSerialMatrix.hpp.

int Playa::DenseSerialMatrix::numCols (  )  const [inline]

Definition at line 87 of file PlayaDenseSerialMatrix.hpp.

void DenseSerialMatrix::setRow ( int  row,
const Array< double > &  rowVals 

Definition at line 105 of file PlayaDenseSerialMatrix.cpp.

Friends And Related Function Documentation

void denseSVD ( const LinearOperator< double > &  A,
LinearOperator< double > &  U,
Vector< double > &  Sigma,
LinearOperator< double > &  Vt 
) [related]

Definition at line 159 of file PlayaDenseSerialMatrix.cpp.

SolverState< double > denseSolve ( const LinearOperator< double > &  A,
const Vector< double > &  b,
Vector< double > &  x 
) [related]

Definition at line 122 of file PlayaDenseSerialMatrix.cpp.

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