|
Nektar++
|
#include <NekNonlinSysIter.h>
Protected Member Functions | |
| void | v_InitObject () override |
| void | v_SetSysOperators (const NekSysOperators &in) override |
| void | ConvergenceCheck (const int nIteration, const Array< OneD, const NekDouble > &Residual) |
Protected Member Functions inherited from Nektar::LibUtilities::NekSys | |
| 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) |
Protected Attributes | |
| NekDouble | m_SysResNorm0 |
| NekDouble | m_SysResNorm |
| NekLinSysIterSharedPtr | m_linsol |
| NekDouble | m_NekLinSysTolerance |
| NekDouble | m_NekNonLinSysTolerance |
| NekDouble | m_NonlinIterTolRelativeL2 |
| int | m_NekNonlinSysMaxIterations |
| int | m_totalIterations = 0 |
| int | m_NtotLinSysIts = 0 |
| std::string | m_LinSysIterSolverType |
| Array< OneD, NekDouble > | m_Solution |
| Array< OneD, NekDouble > | m_Residual |
| Array< OneD, NekDouble > | m_DeltSltn |
| Array< OneD, NekDouble > | m_SourceVec |
Protected Attributes inherited from Nektar::LibUtilities::NekSys | |
| LibUtilities::CommSharedPtr | m_rowComm |
| bool | m_converged |
| bool | m_root |
| bool | m_verbose |
| bool | m_FlagWarnings |
| int | m_SysDimen |
| NekSysOperators | m_operator |
| NekDouble | m_rhs_magnitude = NekConstants::kNekUnsetDouble |
Additional Inherited Members | |
Static Public Member Functions inherited from Nektar::LibUtilities::NekSys | |
| 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 NekNonlinSysIter.h.
| Nektar::LibUtilities::NekNonlinSysIter::NekNonlinSysIter | ( | const LibUtilities::SessionReaderSharedPtr & | pSession, |
| const LibUtilities::CommSharedPtr & | vRowComm, | ||
| const int | nDimen, | ||
| const NekSysKey & | pKey | ||
| ) |
Definition at line 51 of file NekNonlinSysIter.cpp.
References ASSERTL0, Nektar::LibUtilities::NekFactory< tKey, tBase, tParam >::CreateInstance(), Nektar::LibUtilities::GetNekLinSysIterFactory(), m_linsol, m_LinSysIterSolverType, Nektar::LibUtilities::NekSysKey::m_LinSysIterSolverTypeInNonlin, m_NekLinSysTolerance, Nektar::LibUtilities::NekSysKey::m_NekLinSysTolerance, m_NekNonlinSysMaxIterations, Nektar::LibUtilities::NekSysKey::m_NekNonlinSysMaxIterations, m_NekNonLinSysTolerance, Nektar::LibUtilities::NekSysKey::m_NekNonLinSysTolerance, m_NonlinIterTolRelativeL2, Nektar::LibUtilities::NekSysKey::m_NonlinIterTolRelativeL2, Nektar::LibUtilities::NekSys::m_rowComm, and Nektar::LibUtilities::NekSys::m_SysDimen.
|
overridedefault |
|
protected |
Definition at line 86 of file NekNonlinSysIter.cpp.
References Vmath::Dot(), Nektar::NekConstants::kNekUnsetDouble, Nektar::LibUtilities::NekSys::m_converged, m_NekNonLinSysTolerance, m_NonlinIterTolRelativeL2, Nektar::LibUtilities::NekSys::m_rhs_magnitude, Nektar::LibUtilities::NekSys::m_rowComm, m_SysResNorm, m_SysResNorm0, and Nektar::LibUtilities::ReduceSum.
Referenced by Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
inline |
Definition at line 81 of file NekNonlinSysIter.h.
References m_linsol.
|
inline |
Definition at line 86 of file NekNonlinSysIter.h.
References m_NtotLinSysIts.
|
inline |
Definition at line 69 of file NekNonlinSysIter.h.
References m_Residual.
|
inline |
Definition at line 63 of file NekNonlinSysIter.h.
References m_Solution.
|
inline |
Definition at line 75 of file NekNonlinSysIter.h.
References m_SourceVec.
Definition at line 91 of file NekNonlinSysIter.h.
References m_NekLinSysTolerance.
|
inline |
Definition at line 106 of file NekNonlinSysIter.h.
References m_NekNonlinSysMaxIterations.
Definition at line 96 of file NekNonlinSysIter.h.
References m_NekNonLinSysTolerance.
|
inline |
Definition at line 101 of file NekNonlinSysIter.h.
References m_NonlinIterTolRelativeL2.
|
overrideprotectedvirtual |
Reimplemented from Nektar::LibUtilities::NekSys.
Reimplemented in Nektar::LibUtilities::NekNonlinSysIterNewton.
Definition at line 73 of file NekNonlinSysIter.cpp.
References m_DeltSltn, m_Residual, Nektar::LibUtilities::NekSys::m_SysDimen, and Nektar::LibUtilities::NekSys::v_InitObject().
Referenced by Nektar::LibUtilities::NekNonlinSysIterNewton::v_InitObject().
|
overrideprotectedvirtual |
Reimplemented from Nektar::LibUtilities::NekSys.
Definition at line 80 of file NekNonlinSysIter.cpp.
References m_linsol, and Nektar::LibUtilities::NekSys::v_SetSysOperators().
Definition at line 129 of file NekNonlinSysIter.h.
Referenced by v_InitObject(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
protected |
Definition at line 115 of file NekNonlinSysIter.h.
Referenced by GetLinSys(), NekNonlinSysIter(), v_SetSysOperators(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
protected |
Definition at line 125 of file NekNonlinSysIter.h.
Referenced by NekNonlinSysIter().
|
protected |
Definition at line 117 of file NekNonlinSysIter.h.
Referenced by Nektar::LibUtilities::NekNonlinSysIterNewton::CalcInexactNewtonForcing(), NekNonlinSysIter(), and SetNekLinSysTolerance().
|
protected |
Definition at line 121 of file NekNonlinSysIter.h.
Referenced by NekNonlinSysIter(), SetNekNonlinSysMaxIterations(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
protected |
Definition at line 118 of file NekNonlinSysIter.h.
Referenced by ConvergenceCheck(), NekNonlinSysIter(), and SetNekNonlinSysTolerance().
|
protected |
Definition at line 119 of file NekNonlinSysIter.h.
Referenced by ConvergenceCheck(), NekNonlinSysIter(), and SetNonlinIterTolRelativeL2().
|
protected |
Definition at line 123 of file NekNonlinSysIter.h.
Referenced by GetNtotLinSysIts(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
Definition at line 128 of file NekNonlinSysIter.h.
Referenced by GetRefResidual(), v_InitObject(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
Definition at line 127 of file NekNonlinSysIter.h.
Referenced by GetRefSolution(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
Definition at line 130 of file NekNonlinSysIter.h.
Referenced by GetRefSourceVec(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
protected |
Definition at line 113 of file NekNonlinSysIter.h.
Referenced by ConvergenceCheck(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
protected |
Definition at line 112 of file NekNonlinSysIter.h.
Referenced by ConvergenceCheck(), and Nektar::LibUtilities::NekNonlinSysIterNewton::v_SolveSystem().
|
protected |
Definition at line 122 of file NekNonlinSysIter.h.