61 m_varFactors_hashes(varFactors.size())
65 for (VarFactorsMap::const_iterator x = varFactors.begin();
66 x != varFactors.end(); ++x)
69 x->second.begin(), x->second.begin() + x->second.size());
77 m_solnType = locToGloMap->GetGlobalSysSolnType();
86 m_varFactors(key.m_varFactors),
87 m_varFactors_hashes(key.m_varFactors_hashes)
163 os <<
"Number of variable coefficients: " << rhs.
GetNVarCoeffs() << endl;
165 os <<
"Number of variable factors : " << rhs.
GetNVarFactors() << endl;
Describe a linear system.
GlobalLinSysKey(const StdRegions::MatrixType matrixType, const AssemblyMapSharedPtr &locToGloMap=NullAssemblyMapSharedPtr, const StdRegions::ConstFactorMap &factors=StdRegions::NullConstFactorMap, const StdRegions::VarCoeffMap &varCoeffs=StdRegions::NullVarCoeffMap, const VarFactorsMap &varFactos=NullVarFactorsMap)
GlobalSysSolnType m_solnType
Store the solution type associated with the linear system. This may be none, full matrix,...
int GetNVarFactors() const
VarFactorsMap m_varFactors
~GlobalLinSysKey() override
Destructor.
GlobalSysSolnType GetGlobalSysSolnType() const
Return the associated solution type.
std::vector< std::size_t > m_varFactors_hashes
Describes a matrix with ordering defined by a local to global map.
const StdRegions::ConstFactorMap & GetConstFactors() const
Returns all the constants.
int GetNVarCoeffs() const
int GetNConstFactors() const
Returns the number of constants defined for this matrix.
LibUtilities::ShapeType GetShapeType() const
Return the expansion type associated with key.
StdRegions::MatrixType GetMatrixType() const
Return the matrix type.
const char *const ShapeTypeMap[SIZE_ShapeType]
std::ostream & operator<<(std::ostream &os, const GlobalLinSysKey &rhs)
Writes information about the object to a given stream.
@ eNoSolnType
No Solution type specified.
static AssemblyMapSharedPtr NullAssemblyMapSharedPtr
const char *const GlobalSysSolnTypeMap[]
bool operator<(const GlobalLinSysKey &lhs, const GlobalLinSysKey &rhs)
std::map< StdRegions::ConstFactorType, Array< OneD, NekDouble > > VarFactorsMap
std::shared_ptr< AssemblyMap > AssemblyMapSharedPtr
const char *const ConstFactorTypeMap[]
const char *const MatrixTypeMap[]
std::map< ConstFactorType, NekDouble > ConstFactorMap
std::map< StdRegions::VarCoeffType, VarCoeffEntry > VarCoeffMap
StdRegions::ConstFactorMap factors
std::size_t hash_range(Iter first, Iter last)
void hash_combine(std::size_t &seed)