Nektar++
|
#include <MatrixBase.hpp>
Public Member Functions | |
virtual | ~ConstMatrix ()=default |
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.
|
virtualdefault |
|
protected |
Definition at line 221 of file MatrixBase.cpp.
References Nektar::ConstMatrix< DataType >::m_size.
|
protected |
Definition at line 230 of file MatrixBase.cpp.
References Nektar::ConstMatrix< DataType >::m_size.
|
static |
Definition at line 110 of file MatrixBase.cpp.
Referenced by Nektar::NekMatrix< DataType, StandardMatrixTag >::CalculateIndex().
unsigned int Nektar::ConstMatrix< DataType >::GetColumns |
Definition at line 73 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 168 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 61 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 85 of file MatrixBase.cpp.
unsigned int Nektar::ConstMatrix< DataType >::GetStorageSize |
Definition at line 56 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 79 of file MatrixBase.cpp.
unsigned int Nektar::ConstMatrix< DataType >::GetTransposedRows | ( | char | transpose | ) | const |
Definition at line 67 of file MatrixBase.cpp.
char Nektar::ConstMatrix< DataType >::GetTransposeFlag |
Definition at line 104 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 42 of file MatrixBase.cpp.
References ASSERTL2.
|
protected |
Definition at line 238 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 249 of file MatrixBase.cpp.
|
protected |
Definition at line 256 of file MatrixBase.cpp.
void Nektar::ConstMatrix< DataType >::Transpose |
Definition at line 90 of file MatrixBase.cpp.
Referenced by Nektar::Transpose().
|
protectedpure virtual |
|
protectedvirtual |
Reimplemented in Nektar::NekMatrix< NekMatrix< DataType, InnerMatrixType >, ScaledMatrixTag >.
Definition at line 266 of file MatrixBase.cpp.
|
protectedpure virtual |
|
protectedvirtual |
Reimplemented in Nektar::NekMatrix< NekMatrix< DataType, InnerMatrixType >, BlockMatrixTag >.
Definition at line 261 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=().