Nektar++
|
#include <StandardMatrix.hpp>
Classes | |
class | iterator_impl |
class | Proxy |
Public Types | |
typedef Matrix< DataType > | BaseType |
typedef NekMatrix< DataType, StandardMatrixTag > | ThisType |
typedef DataType | NumberType |
typedef const DataType & | ConstGetValueType |
typedef DataType | GetValueType |
typedef iterator_impl< const DataType, const ThisType > | const_iterator |
typedef iterator_impl< DataType, ThisType > | iterator |
Public Member Functions | |
NekMatrix () | |
Creates an empty matrix. More... | |
NekMatrix (unsigned int rows, unsigned int columns, MatrixStorage policy=eFULL, unsigned int subDiagonals=std::numeric_limits< unsigned int >::max(), unsigned int superDiagonals=std::numeric_limits< unsigned int >::max()) | |
Creates a rows by columns matrix. More... | |
NekMatrix (unsigned int rows, unsigned int columns, MatrixStorage policy, unsigned int subDiagonals, unsigned int superDiagonals, unsigned int capacity) | |
NekMatrix (unsigned int rows, unsigned int columns, typename boost::call_traits< DataType >::const_reference initValue, MatrixStorage policy=eFULL, unsigned int subDiagonals=std::numeric_limits< unsigned int >::max(), unsigned int superDiagonals=std::numeric_limits< unsigned int >::max()) | |
Creates a rows by columns matrix. More... | |
NekMatrix (unsigned int rows, unsigned int columns, const DataType *data, MatrixStorage policy=eFULL, unsigned int subDiagonals=std::numeric_limits< unsigned int >::max(), unsigned int superDiagonals=std::numeric_limits< unsigned int >::max()) | |
Creates a rows by columns matrix. More... | |
NekMatrix (unsigned int rows, unsigned int columns, const Array< OneD, const DataType > &d, MatrixStorage policy=eFULL, unsigned int subDiagonals=std::numeric_limits< unsigned int >::max(), unsigned int superDiagonals=std::numeric_limits< unsigned int >::max()) | |
Creates a rows by columns matrix. More... | |
NekMatrix (unsigned int rows, unsigned int columns, const Array< OneD, DataType > &d, PointerWrapper wrapperType=eCopy, MatrixStorage policy=eFULL, unsigned int subDiagonals=std::numeric_limits< unsigned int >::max(), unsigned int superDiagonals=std::numeric_limits< unsigned int >::max()) | |
Creates a rows by columns matrix. More... | |
NekMatrix (const ThisType &rhs) | |
ThisType & | operator= (const ThisType &rhs) |
ThisType & | operator= (const DataType &rhs) |
Fill matrix with scalar. More... | |
template<typename InnerMatrixType > | |
ThisType & | operator= (const NekMatrix< InnerMatrixType, ScaledMatrixTag > &rhs) |
ConstGetValueType | operator() (unsigned int row, unsigned int column) const |
Returns the element value at the given row and column. More... | |
ConstGetValueType | operator() (unsigned int row, unsigned int column, char transpose) const |
Returns the element value at the given row and column. More... | |
unsigned int | GetRequiredStorageSize () const |
unsigned int | CalculateIndex (unsigned int row, unsigned int col, const char transpose) const |
boost::call_traits< DataType >::const_reference | GetValue (unsigned int row, unsigned int column) const |
Returns the element value at the given row and column. More... | |
ConstGetValueType | GetValue (unsigned int row, unsigned int column, char transpose) const |
Returns the element value at the given row and column. More... | |
const Array< OneD, const DataType > & | GetPtr () const |
DataType | Scale () const |
Returns the scaling used by this matrix. More... | |
const DataType * | GetRawPtr () const |
iterator | begin () |
iterator | begin (char transpose) |
iterator | end () |
iterator | end (char transpose) |
const_iterator | begin () const |
const_iterator | begin (char transpose) const |
const_iterator | end () const |
const_iterator | end (char transpose) const |
unsigned int | GetStorageSize () const |
unsigned int | GetNumberOfSubDiagonals () const |
unsigned int | GetNumberOfSuperDiagonals () const |
unsigned int | CalculateNumberOfRows () const |
bool | operator== (const NekMatrix< DataType, StandardMatrixTag > &rhs) const |
Returns true if the this matrix and rhs are equivalent. More... | |
PointerWrapper | GetWrapperType () const |
std::tuple< unsigned int, unsigned int > | Advance (unsigned int curRow, unsigned int curColumn) const |
std::tuple< unsigned int, unsigned int > | Advance (unsigned int curRow, unsigned int curColumn, char transpose) const |
void | SetSize (unsigned int rows, unsigned int cols) |
Proxy | operator() (unsigned int row, unsigned int column) |
Proxy | operator() (unsigned int row, unsigned int column, char transpose) |
void | SetValue (unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d) |
void | SetValue (unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d, char transpose) |
Array< OneD, DataType > & | GetPtr () |
DataType * | GetRawPtr () |
DataType | AbsMaxtoMinEigenValueRatio (void) |
void | EigenSolve (Array< OneD, DataType > &EigValReal, Array< OneD, DataType > &EigValImag, Array< OneD, DataType > &EigVecs) |
void | Invert () |
Array< OneD, DataType > & | GetTempSpace () |
void | SwapTempAndDataBuffers () |
ThisType & | operator*= (const NumberType &s) |
NekMatrix< DataType, StandardMatrixTag > | operator- () const |
Public Member Functions inherited from Nektar::Matrix< DataType > | |
~Matrix () override | |
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 | 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 ThisType | CreateWrapper (const ThisType &rhs) |
static std::shared_ptr< ThisType > | CreateWrapper (const std::shared_ptr< ThisType > &rhs) |
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) |
Protected Member Functions | |
NekMatrix (const ThisType &rhs, PointerWrapper wrapperType) | |
Array< OneD, DataType > & | GetData () |
void | RemoveExcessCapacity () |
void | ResizeDataArrayIfNeeded (unsigned int requiredStorageSize) |
void | ResizeDataArrayIfNeeded () |
boost::call_traits< DataType >::value_type | v_GetValue (unsigned int row, unsigned int column) const override |
unsigned int | v_GetStorageSize () const override |
void | v_SetValue (unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d) override |
Protected Member Functions inherited from Nektar::Matrix< DataType > | |
Matrix (unsigned int rows, unsigned int columns, MatrixStorage policy=eFULL) | |
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, 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 Member Functions | |
void | PerformCopyConstruction (const ThisType &rhs) |
Private Attributes | |
Array< OneD, DataType > | m_data |
PointerWrapper | m_wrapperType |
unsigned int | m_numberOfSuperDiagonals |
unsigned int | m_numberOfSubDiagonals |
Array< OneD, DataType > | m_tempSpace |
Standard Matrix.
DataType | The type stored in each element. |
Matrices are stored in column major order to make it easier to interoperate with Blas and Lapack.
Definition at line 55 of file StandardMatrix.hpp.
typedef Matrix<DataType> Nektar::NekMatrix< DataType, StandardMatrixTag >::BaseType |
Definition at line 58 of file StandardMatrix.hpp.
typedef iterator_impl<const DataType, const ThisType> Nektar::NekMatrix< DataType, StandardMatrixTag >::const_iterator |
Definition at line 425 of file StandardMatrix.hpp.
typedef const DataType& Nektar::NekMatrix< DataType, StandardMatrixTag >::ConstGetValueType |
Definition at line 61 of file StandardMatrix.hpp.
typedef DataType Nektar::NekMatrix< DataType, StandardMatrixTag >::GetValueType |
Definition at line 62 of file StandardMatrix.hpp.
typedef iterator_impl<DataType, ThisType> Nektar::NekMatrix< DataType, StandardMatrixTag >::iterator |
Definition at line 426 of file StandardMatrix.hpp.
typedef DataType Nektar::NekMatrix< DataType, StandardMatrixTag >::NumberType |
Definition at line 60 of file StandardMatrix.hpp.
typedef NekMatrix<DataType, StandardMatrixTag> Nektar::NekMatrix< DataType, StandardMatrixTag >::ThisType |
Definition at line 59 of file StandardMatrix.hpp.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix |
Creates an empty matrix.
Definition at line 41 of file StandardMatrix.cpp.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | unsigned int | rows, |
unsigned int | columns, | ||
MatrixStorage | policy = eFULL , |
||
unsigned int | subDiagonals = std::numeric_limits<unsigned int>::max() , |
||
unsigned int | superDiagonals = std::numeric_limits<unsigned int>::max() |
||
) |
Creates a rows by columns matrix.
rows The number of rows in the matrix.
columns The number of columns in the matrix.
Definition at line 51 of file StandardMatrix.cpp.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | unsigned int | rows, |
unsigned int | columns, | ||
MatrixStorage | policy, | ||
unsigned int | subDiagonals, | ||
unsigned int | superDiagonals, | ||
unsigned int | capacity | ||
) |
Definition at line 64 of file StandardMatrix.cpp.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | unsigned int | rows, |
unsigned int | columns, | ||
typename boost::call_traits< DataType >::const_reference | initValue, | ||
MatrixStorage | policy = eFULL , |
||
unsigned int | subDiagonals = std::numeric_limits<unsigned int>::max() , |
||
unsigned int | superDiagonals = std::numeric_limits<unsigned int>::max() |
||
) |
Creates a rows by columns matrix.
rows The number of rows in the matrix.
columns The number of columns in the matrix.
initValue The value used to initialize each element.
policySpecificData Data the is specific to the storage type assigned to this matrix. Check MatrixStoragePolicy<StorageType> to see if the StoragePolicy for this matrix has policy specific data.
Definition at line 80 of file StandardMatrix.cpp.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | unsigned int | rows, |
unsigned int | columns, | ||
const DataType * | data, | ||
MatrixStorage | policy = eFULL , |
||
unsigned int | subDiagonals = std::numeric_limits<unsigned int>::max() , |
||
unsigned int | superDiagonals = std::numeric_limits<unsigned int>::max() |
||
) |
Creates a rows by columns matrix.
rows The number of rows in the matrix.
columns The number of columns in the matrix.
data An array of data use to initialize the matrix.
policySpecificData Data the is specific to the storage type assigned to this matrix. Check MatrixStoragePolicy<StorageType> to see if the StoragePolicy for this matrix has policy specific data.
Definition at line 94 of file StandardMatrix.cpp.
References CellMLToNektar.pycml::copy().
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | unsigned int | rows, |
unsigned int | columns, | ||
const Array< OneD, const DataType > & | d, | ||
MatrixStorage | policy = eFULL , |
||
unsigned int | subDiagonals = std::numeric_limits<unsigned int>::max() , |
||
unsigned int | superDiagonals = std::numeric_limits<unsigned int>::max() |
||
) |
Creates a rows by columns matrix.
rows The number of rows in the matrix.
columns The number of columns in the matrix.
d An array of data used to initialize the matrix. Values from d are copied into the matrix. policySpecificData Data the is specific to the storage type assigned to this matrix. Check MatrixStoragePolicy<StorageType> to see if the StoragePolicy for this matrix has policy specific data.
Definition at line 110 of file StandardMatrix.cpp.
References Nektar::CopyArrayN(), and Nektar::UnitTests::d().
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | unsigned int | rows, |
unsigned int | columns, | ||
const Array< OneD, DataType > & | d, | ||
PointerWrapper | wrapperType = eCopy , |
||
MatrixStorage | policy = eFULL , |
||
unsigned int | subDiagonals = std::numeric_limits<unsigned int>::max() , |
||
unsigned int | superDiagonals = std::numeric_limits<unsigned int>::max() |
||
) |
Creates a rows by columns matrix.
rows The number of rows in the matrix.
columns The number of columns in the matrix.
d An array of data used to initialize the matrix. If wrapperType is eCopy, then each element is copied from d to the matrix. If wrapperType is eWrapper, then the matrix uses d directly as its matrix data and no copies are made.
policySpecificData Data the is specific to the storage type assigned to this matrix. Check MatrixStoragePolicy<StorageType> to see if the StoragePolicy for this matrix has policy specific data.
Definition at line 123 of file StandardMatrix.cpp.
References Nektar::CopyArrayN(), Nektar::UnitTests::d(), Nektar::eVECTOR_WRAPPER, and Nektar::eWrapper.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | const ThisType & | rhs | ) |
Definition at line 143 of file StandardMatrix.cpp.
|
protected |
Definition at line 499 of file StandardMatrix.cpp.
DataType Nektar::NekMatrix< DataType, StandardMatrixTag >::AbsMaxtoMinEigenValueRatio | ( | void | ) |
Definition at line 743 of file StandardMatrix.cpp.
References tinysimd::sqrt(), Vmath::Vadd(), Vmath::Vmax(), Vmath::Vmin(), and Vmath::Vmul().
std::tuple< unsigned int, unsigned int > Nektar::NekMatrix< DataType, StandardMatrixTag >::Advance | ( | unsigned int | curRow, |
unsigned int | curColumn | ||
) | const |
Definition at line 420 of file StandardMatrix.cpp.
std::tuple< unsigned int, unsigned int > Nektar::NekMatrix< DataType, StandardMatrixTag >::Advance | ( | unsigned int | curRow, |
unsigned int | curColumn, | ||
char | transpose | ||
) | const |
Definition at line 428 of file StandardMatrix.cpp.
References Nektar::BandedMatrixFuncs::Advance(), Nektar::FullMatrixFuncs::Advance(), Nektar::UpperTriangularMatrixFuncs::Advance(), Nektar::SymmetricMatrixFuncs::Advance(), Nektar::DiagonalMatrixFuncs::Advance(), Nektar::LowerTriangularMatrixFuncs::Advance(), 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.
NekMatrix< DataType, StandardMatrixTag >::iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin |
Definition at line 700 of file StandardMatrix.cpp.
Referenced by operator==().
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin |
Definition at line 291 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin | ( | char | transpose | ) |
Definition at line 707 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin | ( | char | transpose | ) | const |
Definition at line 298 of file StandardMatrix.cpp.
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::CalculateIndex | ( | unsigned int | row, |
unsigned int | col, | ||
const char | transpose | ||
) | const |
Definition at line 225 of file StandardMatrix.cpp.
References Nektar::ConstMatrix< DataType >::CalculateIndex().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::CalculateNumberOfRows |
Definition at line 375 of file StandardMatrix.cpp.
|
static |
Definition at line 490 of file StandardMatrix.cpp.
References Nektar::eWrapper.
|
static |
Definition at line 482 of file StandardMatrix.cpp.
References Nektar::eWrapper.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::EigenSolve | ( | Array< OneD, DataType > & | EigValReal, |
Array< OneD, DataType > & | EigValImag, | ||
Array< OneD, DataType > & | EigVecs | ||
) |
Definition at line 765 of file StandardMatrix.cpp.
References ASSERTL0, Nektar::eBANDED, Nektar::eDIAGONAL, Nektar::ErrorUtil::efatal, Nektar::eFULL, Nektar::FullMatrixFuncs::EigenSolve(), Nektar::eLOWER_TRIANGULAR, Nektar::eLOWER_TRIANGULAR_BANDED, Nektar::eSYMMETRIC, Nektar::eSYMMETRIC_BANDED, Nektar::eUPPER_TRIANGULAR, Nektar::eUPPER_TRIANGULAR_BANDED, NEKERROR, Vmath::Vcopy(), and Vmath::Zero().
NekMatrix< DataType, StandardMatrixTag >::iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::end |
Definition at line 722 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::end |
Definition at line 312 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::end | ( | char | transpose | ) |
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::end | ( | char | transpose | ) | const |
Definition at line 319 of file StandardMatrix.cpp.
|
protected |
Definition at line 510 of file StandardMatrix.cpp.
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetNumberOfSubDiagonals |
Definition at line 339 of file StandardMatrix.cpp.
Referenced by Nektar::Transpose().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetNumberOfSuperDiagonals |
Definition at line 357 of file StandardMatrix.cpp.
Referenced by Nektar::Transpose().
Array< OneD, DataType > & Nektar::NekMatrix< DataType, StandardMatrixTag >::GetPtr |
Definition at line 687 of file StandardMatrix.cpp.
const Array< OneD, const DataType > & Nektar::NekMatrix< DataType, StandardMatrixTag >::GetPtr |
Definition at line 272 of file StandardMatrix.cpp.
Referenced by Nektar::Transpose().
DataType * Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRawPtr |
Definition at line 693 of file StandardMatrix.cpp.
const DataType * Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRawPtr |
Definition at line 284 of file StandardMatrix.cpp.
Referenced by Nektar::NekMultiplyLowerTriangularMatrix(), and Nektar::NekMultiplyUpperTriangularMatrix().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRequiredStorageSize |
Definition at line 216 of file StandardMatrix.cpp.
References Nektar::ConstMatrix< DataType >::GetRequiredStorageSize().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetStorageSize |
Definition at line 333 of file StandardMatrix.cpp.
Array< OneD, DataType > & Nektar::NekMatrix< DataType, StandardMatrixTag >::GetTempSpace |
Definition at line 841 of file StandardMatrix.cpp.
boost::call_traits< DataType >::const_reference Nektar::NekMatrix< DataType, StandardMatrixTag >::GetValue | ( | unsigned int | row, |
unsigned int | column | ||
) | const |
Returns the element value at the given row and column.
Definition at line 237 of file StandardMatrix.cpp.
References ASSERTL2.
NekMatrix< DataType, StandardMatrixTag >::ConstGetValueType Nektar::NekMatrix< DataType, StandardMatrixTag >::GetValue | ( | unsigned int | row, |
unsigned int | column, | ||
char | transpose | ||
) | const |
Returns the element value at the given row and column.
row The element's row.
column The element's column.
transpose If transpose = 'N', then the return value is element [row, column]. If transpose = 'T', then the return value is element [column, row].
Definition at line 254 of file StandardMatrix.cpp.
PointerWrapper Nektar::NekMatrix< DataType, StandardMatrixTag >::GetWrapperType |
Definition at line 413 of file StandardMatrix.cpp.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::Invert |
Definition at line 799 of file StandardMatrix.cpp.
References ASSERTL0, Nektar::eBANDED, Nektar::eDIAGONAL, Nektar::ErrorUtil::efatal, Nektar::eFULL, Nektar::eLOWER_TRIANGULAR, Nektar::eLOWER_TRIANGULAR_BANDED, Nektar::eSYMMETRIC, Nektar::eSYMMETRIC_BANDED, Nektar::eUPPER_TRIANGULAR, Nektar::eUPPER_TRIANGULAR_BANDED, Nektar::SymmetricMatrixFuncs::Invert(), Nektar::DiagonalMatrixFuncs::Invert(), Nektar::FullMatrixFuncs::Invert(), and NEKERROR.
NekMatrix< DataType, StandardMatrixTag >::Proxy Nektar::NekMatrix< DataType, StandardMatrixTag >::operator() | ( | unsigned int | row, |
unsigned int | column | ||
) |
Definition at line 620 of file StandardMatrix.cpp.
References ASSERTL2.
NekMatrix< DataType, StandardMatrixTag >::ConstGetValueType Nektar::NekMatrix< DataType, StandardMatrixTag >::operator() | ( | unsigned int | row, |
unsigned int | column | ||
) | const |
Returns the element value at the given row and column.
Definition at line 191 of file StandardMatrix.cpp.
References ASSERTL2.
NekMatrix< DataType, StandardMatrixTag >::Proxy Nektar::NekMatrix< DataType, StandardMatrixTag >::operator() | ( | unsigned int | row, |
unsigned int | column, | ||
char | transpose | ||
) |
Definition at line 637 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::ConstGetValueType Nektar::NekMatrix< DataType, StandardMatrixTag >::operator() | ( | unsigned int | row, |
unsigned int | column, | ||
char | transpose | ||
) | const |
Returns the element value at the given row and column.
row The element's row.
column The element's column.
transpose If transpose = 'N', then the return value is element [row, column]. If transpose = 'T', then the return value is element [column, row].
Definition at line 208 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag > & Nektar::NekMatrix< DataType, StandardMatrixTag >::operator*= | ( | const NumberType & | s | ) |
Definition at line 867 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag > Nektar::NekMatrix< DataType, StandardMatrixTag >::operator- |
Definition at line 858 of file StandardMatrix.cpp.
References Nektar::NegateInPlace().
NekMatrix< DataType, StandardMatrixTag > & Nektar::NekMatrix< DataType, StandardMatrixTag >::operator= | ( | const DataType & | rhs | ) |
Fill matrix with scalar.
Definition at line 178 of file StandardMatrix.cpp.
References Vmath::Fill().
|
inline |
Definition at line 312 of file StandardMatrix.hpp.
NekMatrix< DataType, StandardMatrixTag > & Nektar::NekMatrix< DataType, StandardMatrixTag >::operator= | ( | const ThisType & | rhs | ) |
Definition at line 154 of file StandardMatrix.cpp.
References CellMLToNektar.pycml::copy(), Nektar::Array< OneD, DataType >::data(), m_data, m_numberOfSubDiagonals, m_numberOfSuperDiagonals, and Nektar::Matrix< DataType >::operator=().
bool Nektar::NekMatrix< DataType, StandardMatrixTag >::operator== | ( | const NekMatrix< DataType, StandardMatrixTag > & | rhs | ) | const |
Returns true if the this matrix and rhs are equivalent.
Two matrices are equivalent if they have the same size and each element is the same.
Definition at line 382 of file StandardMatrix.cpp.
References begin(), Nektar::ConstMatrix< DataType >::GetColumns(), Nektar::ConstMatrix< DataType >::GetRows(), and Nektar::ConstMatrix< DataType >::GetTransposeFlag().
|
private |
Definition at line 566 of file StandardMatrix.cpp.
References Nektar::CopyArrayN(), Nektar::eWrapper, m_data, and Nektar::Array< OneD, const DataType >::size().
|
protected |
Definition at line 516 of file StandardMatrix.cpp.
References ASSERTL0, Nektar::CopyArrayN(), Nektar::eCopy, and Nektar::eWrapper.
|
protected |
Definition at line 559 of file StandardMatrix.cpp.
|
protected |
Definition at line 535 of file StandardMatrix.cpp.
References ASSERTL0, CellMLToNektar.pycml::copy(), Nektar::Array< OneD, DataType >::data(), Nektar::eCopy, and Nektar::eWrapper.
DataType Nektar::NekMatrix< DataType, StandardMatrixTag >::Scale |
Returns the scaling used by this matrix.
Since this matrix is not a scaled matrix, this method always returns 1.
Definition at line 278 of file StandardMatrix.cpp.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::SetSize | ( | unsigned int | rows, |
unsigned int | cols | ||
) |
Definition at line 603 of file StandardMatrix.cpp.
References ASSERTL0.
Referenced by Nektar::Multiply().
void Nektar::NekMatrix< DataType, StandardMatrixTag >::SetValue | ( | unsigned int | row, |
unsigned int | column, | ||
typename boost::call_traits< DataType >::const_reference | d | ||
) |
Definition at line 653 of file StandardMatrix.cpp.
References ASSERTL2, and Nektar::UnitTests::d().
void Nektar::NekMatrix< DataType, StandardMatrixTag >::SetValue | ( | unsigned int | row, |
unsigned int | column, | ||
typename boost::call_traits< DataType >::const_reference | d, | ||
char | transpose | ||
) |
Definition at line 669 of file StandardMatrix.cpp.
References Nektar::UnitTests::d(), Nektar::ErrorUtil::efatal, and NEKERROR.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::SwapTempAndDataBuffers |
Definition at line 851 of file StandardMatrix.cpp.
|
overrideprotectedvirtual |
Implements Nektar::ConstMatrix< DataType >.
Definition at line 589 of file StandardMatrix.cpp.
|
overrideprotectedvirtual |
Implements Nektar::ConstMatrix< DataType >.
Definition at line 582 of file StandardMatrix.cpp.
|
overrideprotectedvirtual |
Implements Nektar::Matrix< DataType >.
Definition at line 595 of file StandardMatrix.cpp.
References Nektar::UnitTests::d().
|
private |
Definition at line 540 of file StandardMatrix.hpp.
Referenced by operator=(), and PerformCopyConstruction().
|
private |
Definition at line 545 of file StandardMatrix.hpp.
Referenced by operator=().
|
private |
Definition at line 544 of file StandardMatrix.hpp.
Referenced by operator=().
|
private |
Definition at line 548 of file StandardMatrix.hpp.
|
private |
Definition at line 541 of file StandardMatrix.hpp.