Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
Nektar::Matrix< DataType > Class Template Reference

#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)
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.
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.

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

Definition at line 298 of file MatrixBase.cpp.

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

Definition at line 304 of file MatrixBase.cpp.

:
ConstMatrix<DataType>(rhs)
{
}

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=().

{
return *this;
}
template<typename DataType >
Matrix< DataType > & Nektar::Matrix< DataType >::operator= ( const ConstMatrix< DataType > &  rhs)
protected

Reimplemented from Nektar::ConstMatrix< DataType >.

Definition at line 317 of file MatrixBase.cpp.

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

{
return *this;
}
template<typename DataType >
void Nektar::Matrix< DataType >::SetValue ( unsigned int  row,
unsigned int  column,
typename boost::call_traits< DataType >::const_reference  d 
)

Reimplemented in Nektar::NekMatrix< DataType, StandardMatrixTag >.

Definition at line 286 of file MatrixBase.cpp.

References ASSERTL2.

{
ASSERTL2(row < this->GetRows(), std::string("Row ") + boost::lexical_cast<std::string>(row) +
std::string(" requested in a matrix with a maximum of ") + boost::lexical_cast<std::string>(this->GetRows()) +
std::string(" rows"));
ASSERTL2(column < this->GetColumns(), std::string("Column ") + boost::lexical_cast<std::string>(column) +
std::string(" requested in a matrix with a maximum of ") + boost::lexical_cast<std::string>(this->GetColumns()) +
std::string(" columns"));
v_SetValue(row, column, d);
}
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