Nektar++
|
#include <NekNonlinSys.h>
Protected Member Functions | |
void | v_InitObject () override |
![]() | |
virtual void | v_InitObject () |
virtual void | v_SetSysOperators (const NekSysOperators &in) |
virtual int | v_SolveSystem (const int nGlobal, const Array< OneD, const NekDouble > &pInput, Array< OneD, NekDouble > &pOutput, const int nDir, const NekDouble tol, const NekDouble factor) |
virtual bool | v_ConvergenceCheck (const int nIteration, const Array< OneD, const NekDouble > &Residual, const NekDouble tol) |
virtual void | v_NekSysInitialGuess (const Array< OneD, const NekDouble > &pInput, Array< OneD, NekDouble > &pguess) |
Protected Attributes | |
NekLinSysIterSharedPtr | m_linsol |
NekDouble | m_NonlinIterTolRelativeL2 |
NekDouble | m_LinSysRelativeTolInNonlin |
std::string | m_LinSysIterSolverType |
int | m_totalIterations = 0 |
int | m_NtotLinSysIts = 0 |
Array< OneD, NekDouble > | m_Solution |
Array< OneD, NekDouble > | m_Residual |
Array< OneD, NekDouble > | m_DeltSltn |
Array< OneD, NekDouble > | m_SourceVec |
![]() | |
int | m_maxiter |
Maximum iterations. More... | |
NekDouble | m_tolerance |
Tolerance of iterative solver. More... | |
LibUtilities::CommSharedPtr | m_rowComm |
Communicate. More... | |
bool | m_converged |
Whether the iteration has been converged. More... | |
bool | m_root |
Root if parallel. More... | |
bool | m_verbose |
Verbose. More... | |
bool | m_FlagWarnings |
NekSysOperators | m_operator |
Operators. More... | |
int | m_SysDimen |
The dimension of the system. More... | |
Additional Inherited Members | |
![]() | |
static NekSysSharedPtr | CreateInstance (const LibUtilities::SessionReaderSharedPtr &pSession, const LibUtilities::CommSharedPtr &vRowComm, const int nDimen, const NekSysKey &pKey) |
Solves a nonlinear system using iterative methods.
Definition at line 54 of file NekNonlinSys.h.
Nektar::LibUtilities::NekNonlinSys::NekNonlinSys | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
const LibUtilities::CommSharedPtr & | vRowComm, | ||
const int | nDimen, | ||
const NekSysKey & | pKey | ||
) |
Definition at line 53 of file NekNonlinSys.cpp.
References ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::LibUtilities::GetNekLinSysIterFactory(), m_linsol, m_LinSysIterSolverType, Nektar::LibUtilities::NekSysKey::m_LinSysIterSolverTypeInNonlin, m_LinSysRelativeTolInNonlin, Nektar::LibUtilities::NekSysKey::m_LinSysRelativeTolInNonlin, Nektar::LibUtilities::NekSys::m_maxiter, Nektar::LibUtilities::NekSysKey::m_NekNonlinSysMaxIterations, m_NonlinIterTolRelativeL2, Nektar::LibUtilities::NekSysKey::m_NonlinIterTolRelativeL2, Nektar::LibUtilities::NekSys::m_rowComm, and Nektar::LibUtilities::NekSys::m_SysDimen.
|
overridedefault |
|
inline |
|
inline |
Definition at line 86 of file NekNonlinSys.h.
References m_NtotLinSysIts.
|
inline |
Definition at line 69 of file NekNonlinSys.h.
References m_Residual.
|
inline |
Definition at line 63 of file NekNonlinSys.h.
References m_Solution.
|
inline |
Definition at line 75 of file NekNonlinSys.h.
References m_SourceVec.
Definition at line 107 of file NekNonlinSys.h.
References m_LinSysRelativeTolInNonlin.
|
inline |
Definition at line 96 of file NekNonlinSys.h.
References Nektar::LibUtilities::NekSys::m_maxiter.
Definition at line 91 of file NekNonlinSys.h.
References Nektar::LibUtilities::NekSys::m_tolerance.
Definition at line 102 of file NekNonlinSys.h.
References m_NonlinIterTolRelativeL2.
|
overrideprotectedvirtual |
Reimplemented from Nektar::LibUtilities::NekSys.
Reimplemented in Nektar::LibUtilities::NekNonlinSysNewton.
Definition at line 73 of file NekNonlinSys.cpp.
References Nektar::LibUtilities::NekSys::v_InitObject().
Definition at line 125 of file NekNonlinSys.h.
Referenced by Nektar::LibUtilities::NekNonlinSysNewton::v_InitObject(), and Nektar::LibUtilities::NekNonlinSysNewton::v_SolveSystem().
|
protected |
Definition at line 113 of file NekNonlinSys.h.
Referenced by GetLinSys(), NekNonlinSys(), Nektar::LibUtilities::NekNonlinSysNewton::v_SetSysOperators(), and Nektar::LibUtilities::NekNonlinSysNewton::v_SolveSystem().
|
protected |
Definition at line 118 of file NekNonlinSys.h.
Referenced by NekNonlinSys().
|
protected |
Definition at line 116 of file NekNonlinSys.h.
Referenced by Nektar::LibUtilities::NekNonlinSysNewton::CalcInexactNewtonForcing(), NekNonlinSys(), and SetLinSysRelativeTolInNonlin().
|
protected |
Definition at line 115 of file NekNonlinSys.h.
Referenced by NekNonlinSys(), SetNonlinIterTolRelativeL2(), and Nektar::LibUtilities::NekNonlinSysNewton::v_ConvergenceCheck().
|
protected |
Definition at line 121 of file NekNonlinSys.h.
Referenced by GetNtotLinSysIts(), and Nektar::LibUtilities::NekNonlinSysNewton::v_SolveSystem().
Definition at line 124 of file NekNonlinSys.h.
Referenced by GetRefResidual(), Nektar::LibUtilities::NekNonlinSysNewton::v_InitObject(), and Nektar::LibUtilities::NekNonlinSysNewton::v_SolveSystem().
Definition at line 123 of file NekNonlinSys.h.
Referenced by GetRefSolution(), and Nektar::LibUtilities::NekNonlinSysNewton::v_SolveSystem().
Definition at line 126 of file NekNonlinSys.h.
Referenced by GetRefSourceVec(), and Nektar::LibUtilities::NekNonlinSysNewton::v_SolveSystem().
|
protected |
Definition at line 120 of file NekNonlinSys.h.