42 namespace MultiRegions
64 m_solnType(locToGloMap->GetGlobalSysSolnType()),
65 m_varFactors(varFactors),
66 m_varFactors_hashes(varFactors.size())
70 for (VarFactorsMap::const_iterator x = varFactors.begin();
71 x != varFactors.end(); ++x)
74 x->second.begin() + x->second.size());
86 m_solnType(key.m_solnType),
87 m_varFactors(key.m_varFactors),
88 m_varFactors_hashes(key.m_varFactors_hashes)
159 os <<
"Solution Type: "
165 <<
": " << x.second << endl;
167 os <<
"Number of variable coefficients: "
170 os <<
"Number of variable factors : "
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
GlobalSysSolnType GetGlobalSysSolnType() const
Return the associated solution type.
std::vector< std::size_t > m_varFactors_hashes
virtual ~GlobalLinSysKey()
Destructor.
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[]
std::ostream & operator<<(std::ostream &os, const GlobalLinSysKey &rhs)
Writes information about the object to a given stream.
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
std::map< StdRegions::VarCoeffType, Array< OneD, NekDouble > > VarCoeffMap
const char *const ConstFactorTypeMap[]
const char *const MatrixTypeMap[]
std::map< ConstFactorType, NekDouble > ConstFactorMap
The above copyright notice and this permission notice shall be included.
std::size_t hash_range(Iter first, Iter last)
void hash_combine(std::size_t &seed)