Nektar++
|
#include <MatrixBase.hpp>
Public Member Functions | |
virtual | ~ConstMatrix () |
boost::call_traits< DataType >::value_type | operator() (unsigned int row, unsigned int column) const |
unsigned int | GetStorageSize () const |
MatrixStorage | GetType () 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 |
Static Public Member Functions | |
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) |
Protected Member Functions | |
ConstMatrix (unsigned int rows, unsigned int columns, MatrixStorage policy=eFULL) | |
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 |
virtual boost::call_traits< DataType >::value_type | v_GetValue (unsigned int row, unsigned int column) const =0 |
virtual unsigned int | v_GetStorageSize () const =0 |
virtual void | v_Transpose () |
virtual char | v_GetTransposeFlag () const |
Private Attributes | |
unsigned int | m_size [2] |
char | m_transpose |
MatrixStorage | m_storageType |
Definition at line 53 of file MatrixBase.hpp.
|
virtual |
Definition at line 40 of file MatrixBase.cpp.
|
protected |
Definition at line 239 of file MatrixBase.cpp.
References Nektar::ConstMatrix< DataType >::m_size.
|
protected |
Definition at line 248 of file MatrixBase.cpp.
References Nektar::ConstMatrix< DataType >::m_size.
|
static |
Definition at line 128 of file MatrixBase.cpp.
References ASSERTL1, Nektar::UpperTriangularMatrixFuncs::CalculateIndex(), Nektar::SymmetricMatrixFuncs::CalculateIndex(), Nektar::SymmetricBandedMatrixFuncs::CalculateIndex(), Nektar::DiagonalMatrixFuncs::CalculateIndex(), Nektar::LowerTriangularMatrixFuncs::CalculateIndex(), Nektar::FullMatrixFuncs::CalculateIndex(), Nektar::BandedMatrixFuncs::CalculateIndex(), Nektar::eBANDED, Nektar::eDIAGONAL, Nektar::ErrorUtil::efatal, Nektar::eFULL, Nektar::eLOWER_TRIANGULAR, Nektar::eLOWER_TRIANGULAR_BANDED, Nektar::ePOSITIVE_DEFINITE_SYMMETRIC, Nektar::ePOSITIVE_DEFINITE_SYMMETRIC_BANDED, Nektar::eSYMMETRIC, Nektar::eSYMMETRIC_BANDED, Nektar::eUPPER_TRIANGULAR, Nektar::eUPPER_TRIANGULAR_BANDED, and NEKERROR.
Referenced by Nektar::NekMatrix< DataType, StandardMatrixTag >::CalculateIndex().
unsigned int Nektar::ConstMatrix< DataType >::GetColumns |
Definition at line 84 of file MatrixBase.cpp.
Referenced by Nektar::AddEqualNegatedLhs(), Nektar::MultiplyEqual(), Nektar::NegateInPlace(), Nektar::NekMultiplyLowerTriangularMatrix(), Nektar::NekMultiplyUpperTriangularMatrix(), Nektar::NekMatrix< DataType, StandardMatrixTag >::operator==(), Nektar::SubtractEqualNegatedLhs(), and Nektar::Transpose().
|
inlineprotected |
Definition at line 116 of file MatrixBase.hpp.
References Nektar::ConstMatrix< DataType >::m_transpose.
|
static |
Definition at line 186 of file MatrixBase.cpp.
References ASSERTL1, Nektar::eBANDED, Nektar::eDIAGONAL, Nektar::ErrorUtil::efatal, Nektar::eFULL, Nektar::eLOWER_TRIANGULAR, Nektar::eLOWER_TRIANGULAR_BANDED, Nektar::ePOSITIVE_DEFINITE_SYMMETRIC, Nektar::ePOSITIVE_DEFINITE_SYMMETRIC_BANDED, Nektar::eSYMMETRIC, Nektar::eSYMMETRIC_BANDED, Nektar::eUPPER_TRIANGULAR, Nektar::eUPPER_TRIANGULAR_BANDED, Nektar::FullMatrixFuncs::GetRequiredStorageSize(), Nektar::TriangularMatrixFuncs::GetRequiredStorageSize(), Nektar::SymmetricMatrixFuncs::GetRequiredStorageSize(), Nektar::DiagonalMatrixFuncs::GetRequiredStorageSize(), Nektar::SymmetricBandedMatrixFuncs::GetRequiredStorageSize(), Nektar::BandedMatrixFuncs::GetRequiredStorageSize(), and NEKERROR.
Referenced by Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRequiredStorageSize().
unsigned int Nektar::ConstMatrix< DataType >::GetRows |
Definition at line 65 of file MatrixBase.cpp.
Referenced by Nektar::AddEqualNegatedLhs(), Nektar::MultiplyEqual(), Nektar::NegateInPlace(), Nektar::NekMultiplyLowerTriangularMatrix(), Nektar::NekMultiplyUpperTriangularMatrix(), Nektar::NekMatrix< DataType, StandardMatrixTag >::operator==(), Nektar::SubtractEqualNegatedLhs(), and Nektar::Transpose().
const unsigned int * Nektar::ConstMatrix< DataType >::GetSize |
Definition at line 103 of file MatrixBase.cpp.
unsigned int Nektar::ConstMatrix< DataType >::GetStorageSize |
Definition at line 60 of file MatrixBase.cpp.
|
inline |
Definition at line 69 of file MatrixBase.hpp.
References Nektar::ConstMatrix< DataType >::m_storageType.
unsigned int Nektar::ConstMatrix< DataType >::GetTransposedColumns | ( | char | transpose | ) | const |
Definition at line 90 of file MatrixBase.cpp.
unsigned int Nektar::ConstMatrix< DataType >::GetTransposedRows | ( | char | transpose | ) | const |
Definition at line 71 of file MatrixBase.cpp.
char Nektar::ConstMatrix< DataType >::GetTransposeFlag |
Definition at line 122 of file MatrixBase.cpp.
Referenced by Nektar::NekMultiplyLowerTriangularMatrix(), Nektar::NekMultiplyUpperTriangularMatrix(), and Nektar::NekMatrix< DataType, StandardMatrixTag >::operator==().
|
inline |
Definition at line 64 of file MatrixBase.hpp.
References Nektar::ConstMatrix< DataType >::m_storageType.
Referenced by Nektar::Transpose().
boost::call_traits< DataType >::value_type Nektar::ConstMatrix< DataType >::operator() | ( | unsigned int | row, |
unsigned int | column | ||
) | const |
Definition at line 46 of file MatrixBase.cpp.
References ASSERTL2.
|
protected |
Definition at line 256 of file MatrixBase.cpp.
References Nektar::ConstMatrix< DataType >::m_size, Nektar::ConstMatrix< DataType >::m_storageType, and Nektar::ConstMatrix< DataType >::m_transpose.
Referenced by Nektar::Matrix< DataType >::operator=().
|
protected |
Resets the rows and columns in the array. This method does not update the data storage to match the new row and column counts.
Definition at line 267 of file MatrixBase.cpp.
|
protected |
Definition at line 274 of file MatrixBase.cpp.
void Nektar::ConstMatrix< DataType >::Transpose |
Definition at line 108 of file MatrixBase.cpp.
Referenced by Nektar::Transpose().
|
protectedpure virtual |
|
protectedvirtual |
Reimplemented in Nektar::NekMatrix< NekMatrix< DataType, InnerMatrixType >, ScaledMatrixTag >.
Definition at line 284 of file MatrixBase.cpp.
|
protectedpure virtual |
|
protectedvirtual |
Reimplemented in Nektar::NekMatrix< NekMatrix< DataType, InnerMatrixType >, BlockMatrixTag >.
Definition at line 279 of file MatrixBase.cpp.
|
private |
Definition at line 128 of file MatrixBase.hpp.
Referenced by Nektar::ConstMatrix< DataType >::ConstMatrix(), and Nektar::ConstMatrix< DataType >::operator=().
|
private |
Definition at line 130 of file MatrixBase.hpp.
Referenced by Nektar::ConstMatrix< DataType >::GetStorageType(), Nektar::ConstMatrix< DataType >::GetType(), and Nektar::ConstMatrix< DataType >::operator=().
|
private |
Definition at line 129 of file MatrixBase.hpp.
Referenced by Nektar::ConstMatrix< DataType >::GetRawTransposeFlag(), and Nektar::ConstMatrix< DataType >::operator=().