36#ifndef NEKTAR_LIB_UTILITIES_LINEAR_ALGEBRA_NEK_NONLINSYS_H
37#define NEKTAR_LIB_UTILITIES_LINEAR_ALGEBRA_NEK_NONLINSYS_H
44class NekNonlinSysIter;
#define LIB_UTILITIES_EXPORT
Provides a generic Factory class.
Array< OneD, NekDouble > m_Residual
const Array< OneD, const NekDouble > & GetRefResidual() const
const Array< OneD, const NekDouble > & GetRefSolution() const
Array< OneD, NekDouble > m_Solution
void v_InitObject() override
Array< OneD, NekDouble > m_SourceVec
int GetNtotLinSysIts() const
NekLinSysIterSharedPtr m_linsol
NekDouble m_NekNonLinSysTolerance
const NekLinSysIterSharedPtr & GetLinSys() const
void SetNekNonlinSysMaxIterations(const int in)
void SetNekLinSysTolerance(const NekDouble in)
const Array< OneD, const NekDouble > & GetRefSourceVec() const
NekDouble m_NonlinIterTolRelativeL2
void SetNonlinIterTolRelativeL2(const NekDouble in)
void ConvergenceCheck(const int nIteration, const Array< OneD, const NekDouble > &Residual)
void SetNekNonlinSysTolerance(const NekDouble in)
int m_NekNonlinSysMaxIterations
NekNonlinSysIter(const LibUtilities::SessionReaderSharedPtr &pSession, const LibUtilities::CommSharedPtr &vRowComm, const int nDimen, const NekSysKey &pKey)
Array< OneD, NekDouble > m_DeltSltn
NekDouble m_NekLinSysTolerance
std::string m_LinSysIterSolverType
~NekNonlinSysIter() override=default
void v_SetSysOperators(const NekSysOperators &in) override
std::shared_ptr< NekNonlinSysIter > NekNonlinSysIterSharedPtr
std::shared_ptr< NekLinSysIter > NekLinSysIterSharedPtr
NekNonlinSysIterFactory & GetNekNonlinSysIterFactory()
LibUtilities::NekFactory< std::string, NekNonlinSysIter, const LibUtilities::SessionReaderSharedPtr &, const LibUtilities::CommSharedPtr &, const int, const NekSysKey & > NekNonlinSysIterFactory
std::shared_ptr< SessionReader > SessionReaderSharedPtr
std::shared_ptr< Comm > CommSharedPtr
Pointer to a Communicator object.