34 #ifndef NEKTAR_LIB_MULTIREGIONS_PRECONDITIONERLINEAR_H 35 #define NEKTAR_LIB_MULTIREGIONS_PRECONDITIONERLINEAR_H 46 namespace MultiRegions
62 const std::shared_ptr<GlobalLinSys> &plinsys,
63 const std::shared_ptr<AssemblyMap> &pLocToGloMap)
74 const std::shared_ptr<GlobalLinSys> &plinsys,
virtual void v_DoPreconditioner(const Array< OneD, NekDouble > &pInput, Array< OneD, NekDouble > &pOutput)
Apply a preconditioner to the conjugate gradient method.
static std::string solveTypeIds[]
virtual void v_InitObject()
virtual void v_DoPreconditionerWithNonVertOutput(const Array< OneD, NekDouble > &pInput, Array< OneD, NekDouble > &pOutput, const Array< OneD, NekDouble > &pNonVertOutput, Array< OneD, NekDouble > &pVertForce)
Apply a preconditioner to the conjugate gradient method with an output for non-vertex degrees of free...
static std::string className1
Name of class.
static PreconditionerSharedPtr create(const std::shared_ptr< GlobalLinSys > &plinsys, const std::shared_ptr< AssemblyMap > &pLocToGloMap)
Creates an instance of this class.
#define MULTI_REGIONS_EXPORT
std::shared_ptr< GlobalLinSys > GlobalLinSysSharedPtr
Pointer to a GlobalLinSys object.
std::shared_ptr< AssemblyMap > AssemblyMapSharedPtr
PreconditionerLinear(const std::shared_ptr< GlobalLinSys > &plinsys, const AssemblyMapSharedPtr &pLocToGloMap)
GlobalLinSysSharedPtr m_vertLinsys
std::shared_ptr< PreconditionerLinear > PreconditionerLinearSharedPtr
static std::shared_ptr< DataType > AllocateSharedPtr(const Args &...args)
Allocate a shared pointer from the memory pool.
virtual ~PreconditionerLinear()
static std::string solveType
std::shared_ptr< Preconditioner > PreconditionerSharedPtr
std::shared_ptr< AssemblyMap > m_vertLocToGloMap
virtual void v_BuildPreconditioner()