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 |
![]() | |
~Matrix () override | |
void | SetValue (unsigned int row, unsigned int column, typename boost::call_traits< DataType >::const_reference d) |
![]() | |
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 ThisType | CreateWrapper (const ThisType &rhs) |
static std::shared_ptr< ThisType > | CreateWrapper (const std::shared_ptr< ThisType > &rhs) |
![]() | |
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 |
![]() | |
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) |
![]() | |
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(), and Nektar::eWrapper.
Nektar::NekMatrix< DataType, StandardMatrixTag >::NekMatrix | ( | const ThisType & | rhs | ) |
Definition at line 143 of file StandardMatrix.cpp.
|
protected |
Definition at line 498 of file StandardMatrix.cpp.
DataType Nektar::NekMatrix< DataType, StandardMatrixTag >::AbsMaxtoMinEigenValueRatio | ( | void | ) |
Definition at line 742 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 419 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 427 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 699 of file StandardMatrix.cpp.
Referenced by operator==().
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin |
Definition at line 290 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin | ( | char | transpose | ) |
Definition at line 706 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::begin | ( | char | transpose | ) | const |
Definition at line 297 of file StandardMatrix.cpp.
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::CalculateIndex | ( | unsigned int | row, |
unsigned int | col, | ||
const char | transpose | ||
) | const |
Definition at line 224 of file StandardMatrix.cpp.
References Nektar::ConstMatrix< DataType >::CalculateIndex().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::CalculateNumberOfRows |
Definition at line 374 of file StandardMatrix.cpp.
|
static |
Definition at line 489 of file StandardMatrix.cpp.
References Nektar::eWrapper.
|
static |
Definition at line 481 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 764 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 721 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag >::const_iterator Nektar::NekMatrix< DataType, StandardMatrixTag >::end |
Definition at line 311 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 318 of file StandardMatrix.cpp.
|
protected |
Definition at line 509 of file StandardMatrix.cpp.
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetNumberOfSubDiagonals |
Definition at line 338 of file StandardMatrix.cpp.
Referenced by Nektar::Transpose().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetNumberOfSuperDiagonals |
Definition at line 356 of file StandardMatrix.cpp.
Referenced by Nektar::Transpose().
Array< OneD, DataType > & Nektar::NekMatrix< DataType, StandardMatrixTag >::GetPtr |
Definition at line 686 of file StandardMatrix.cpp.
const Array< OneD, const DataType > & Nektar::NekMatrix< DataType, StandardMatrixTag >::GetPtr |
Definition at line 271 of file StandardMatrix.cpp.
Referenced by Nektar::Transpose().
DataType * Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRawPtr |
Definition at line 692 of file StandardMatrix.cpp.
const DataType * Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRawPtr |
Definition at line 283 of file StandardMatrix.cpp.
Referenced by Nektar::NekMultiplyLowerTriangularMatrix(), and Nektar::NekMultiplyUpperTriangularMatrix().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetRequiredStorageSize |
Definition at line 215 of file StandardMatrix.cpp.
References Nektar::ConstMatrix< DataType >::GetRequiredStorageSize().
unsigned int Nektar::NekMatrix< DataType, StandardMatrixTag >::GetStorageSize |
Definition at line 332 of file StandardMatrix.cpp.
Array< OneD, DataType > & Nektar::NekMatrix< DataType, StandardMatrixTag >::GetTempSpace |
Definition at line 840 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 236 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 253 of file StandardMatrix.cpp.
PointerWrapper Nektar::NekMatrix< DataType, StandardMatrixTag >::GetWrapperType |
Definition at line 412 of file StandardMatrix.cpp.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::Invert |
Definition at line 798 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 619 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 190 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 636 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 207 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag > & Nektar::NekMatrix< DataType, StandardMatrixTag >::operator*= | ( | const NumberType & | s | ) |
Definition at line 866 of file StandardMatrix.cpp.
NekMatrix< DataType, StandardMatrixTag > Nektar::NekMatrix< DataType, StandardMatrixTag >::operator- |
Definition at line 857 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 177 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 153 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 381 of file StandardMatrix.cpp.
References begin(), Nektar::ConstMatrix< DataType >::GetColumns(), Nektar::ConstMatrix< DataType >::GetRows(), and Nektar::ConstMatrix< DataType >::GetTransposeFlag().
|
private |
Definition at line 565 of file StandardMatrix.cpp.
References Nektar::CopyArrayN(), Nektar::eWrapper, m_data, and Nektar::Array< OneD, const DataType >::size().
|
protected |
Definition at line 515 of file StandardMatrix.cpp.
References ASSERTL0, Nektar::CopyArrayN(), Nektar::eCopy, and Nektar::eWrapper.
|
protected |
Definition at line 558 of file StandardMatrix.cpp.
|
protected |
Definition at line 534 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 277 of file StandardMatrix.cpp.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::SetSize | ( | unsigned int | rows, |
unsigned int | cols | ||
) |
Definition at line 602 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 652 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 668 of file StandardMatrix.cpp.
References Nektar::UnitTests::d(), Nektar::ErrorUtil::efatal, and NEKERROR.
void Nektar::NekMatrix< DataType, StandardMatrixTag >::SwapTempAndDataBuffers |
Definition at line 850 of file StandardMatrix.cpp.
|
overrideprotectedvirtual |
Implements Nektar::ConstMatrix< DataType >.
Definition at line 588 of file StandardMatrix.cpp.
|
overrideprotectedvirtual |
Implements Nektar::ConstMatrix< DataType >.
Definition at line 581 of file StandardMatrix.cpp.
|
overrideprotectedvirtual |
Implements Nektar::Matrix< DataType >.
Definition at line 594 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.