Nektar++
Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
Nektar::Matrix< DataType > Class Template Referenceabstract

#include <MatrixBase.hpp>

Inheritance diagram for Nektar::Matrix< DataType >:
Inheritance graph
[legend]
Collaboration diagram for Nektar::Matrix< DataType >:
Collaboration graph
[legend]

Public Member Functions

virtual ~Matrix ()
 
void SetValue (unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d)
 
- Public Member Functions inherited from Nektar::ConstMatrix< DataType >
virtual ~ConstMatrix ()
 
boost::call_traits< DataType >::value_type operator() (unsigned int row, unsigned int column) const
 
unsigned int GetStorageSize () const
 
MatrixStorage GetStorageType () const
 
unsigned int GetRows () const
 
unsigned int GetTransposedRows (char transpose) const
 
unsigned int GetColumns () const
 
unsigned int GetTransposedColumns (char transpose) const
 
const unsigned int * GetSize () const
 
void Transpose ()
 
char GetTransposeFlag () const
 

Protected Member Functions

 Matrix (unsigned int rows, unsigned int columns)
 
 Matrix (const Matrix< DataType > &rhs)
 
Matrix< DataType > & operator= (const Matrix< DataType > &rhs)
 
Matrix< DataType > & operator= (const ConstMatrix< DataType > &rhs)
 
- Protected Member Functions inherited from Nektar::ConstMatrix< DataType >
 ConstMatrix (unsigned int rows, unsigned int columns)
 
 ConstMatrix (const ConstMatrix< DataType > &rhs)
 
ConstMatrix< DataType > & operator= (const ConstMatrix< DataType > &rhs)
 
void Resize (unsigned int rows, unsigned int columns)
 Resets the rows and columns in the array. This method does not update the data storage to match the new row and column counts. More...
 
void SetTransposeFlag (char newValue)
 
char GetRawTransposeFlag () const
 

Private Member Functions

virtual void v_SetValue (unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d)=0
 

Additional Inherited Members

- Static Public Member Functions inherited from Nektar::ConstMatrix< DataType >
static unsigned int CalculateIndex (MatrixStorage type, unsigned int row, unsigned int col, unsigned int numRows, unsigned int numColumns, const char transpose= 'N', unsigned int numSubDiags=0, unsigned int numSuperDiags=0)
 
static unsigned int GetRequiredStorageSize (MatrixStorage type, unsigned int rows, unsigned int columns, unsigned int subDiags=0, unsigned int superDiags=0)
 

Detailed Description

template<typename DataType>
class Nektar::Matrix< DataType >

Definition at line 120 of file MatrixBase.hpp.

Constructor & Destructor Documentation

template<typename DataType >
Nektar::Matrix< DataType >::~Matrix ( )
virtual

Definition at line 283 of file MatrixBase.cpp.

283 {}
template<typename DataType >
Nektar::Matrix< DataType >::Matrix ( unsigned int  rows,
unsigned int  columns 
)
protected

Definition at line 298 of file MatrixBase.cpp.

298  :
299  ConstMatrix<DataType>(rows, columns)
300  {
301  }
template<typename DataType >
Nektar::Matrix< DataType >::Matrix ( const Matrix< DataType > &  rhs)
protected

Definition at line 304 of file MatrixBase.cpp.

304  :
305  ConstMatrix<DataType>(rhs)
306  {
307  }

Member Function Documentation

template<typename DataType >
Matrix< DataType > & Nektar::Matrix< DataType >::operator= ( const Matrix< DataType > &  rhs)
protected

Definition at line 310 of file MatrixBase.cpp.

References Nektar::ConstMatrix< DataType >::operator=().

Referenced by Nektar::NekMatrix< DataType, StandardMatrixTag >::operator=().

311  {
313  return *this;
314  }
ConstMatrix< DataType > & operator=(const ConstMatrix< DataType > &rhs)
Definition: MatrixBase.cpp:250
template<typename DataType >
Matrix< DataType > & Nektar::Matrix< DataType >::operator= ( const ConstMatrix< DataType > &  rhs)
protected

Definition at line 317 of file MatrixBase.cpp.

References Nektar::ConstMatrix< DataType >::operator=().

318  {
320  return *this;
321  }
ConstMatrix< DataType > & operator=(const ConstMatrix< DataType > &rhs)
Definition: MatrixBase.cpp:250
template<typename DataType >
void Nektar::Matrix< DataType >::SetValue ( unsigned int  row,
unsigned int  column,
typename boost::call_traits< DataType >::const_reference  d 
)

Definition at line 286 of file MatrixBase.cpp.

References ASSERTL2.

287  {
288  ASSERTL2(row < this->GetRows(), std::string("Row ") + boost::lexical_cast<std::string>(row) +
289  std::string(" requested in a matrix with a maximum of ") + boost::lexical_cast<std::string>(this->GetRows()) +
290  std::string(" rows"));
291  ASSERTL2(column < this->GetColumns(), std::string("Column ") + boost::lexical_cast<std::string>(column) +
292  std::string(" requested in a matrix with a maximum of ") + boost::lexical_cast<std::string>(this->GetColumns()) +
293  std::string(" columns"));
294  v_SetValue(row, column, d);
295  }
virtual void v_SetValue(unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d)=0
unsigned int GetColumns() const
Definition: MatrixBase.cpp:84
unsigned int GetRows() const
Definition: MatrixBase.cpp:65
#define ASSERTL2(condition, msg)
Assert Level 2 – Debugging which is used FULLDEBUG compilation mode. This level assert is designed t...
Definition: ErrorUtil.hpp:213
template<typename DataType>
virtual void Nektar::Matrix< DataType >::v_SetValue ( unsigned int  row,
unsigned int  column,
typename boost::call_traits< DataType >::const_reference  d 
)
privatepure virtual