Opm::NonlinearSolver< TypeTag, PhysicalModel > Class Template Reference
Detailed Descriptiontemplate<class TypeTag, class PhysicalModel> class Opm::NonlinearSolver< TypeTag, PhysicalModel > A nonlinear solver class suitable for general fully-implicit models, as well as pressure, transport and sequential models. Constructor & Destructor Documentation◆ NonlinearSolver()
template<class TypeTag , class PhysicalModel >
Construct solver for a given model. The model is a std::unique_ptr because the object to which model points to is not allowed to be deleted as long as the NonlinearSolver object exists.
Member Function Documentation◆ computeFluidInPlace()
template<class TypeTag , class PhysicalModel >
◆ detectOscillations()
template<class TypeTag , class PhysicalModel >
Detect oscillation or stagnation in a given residual history. References Opm::detail::detectOscillations(). ◆ failureReport()
template<class TypeTag , class PhysicalModel >
return the statistics if the step() method failed ◆ linearIterations()
template<class TypeTag , class PhysicalModel >
Number of linear solver iterations used in all calls to step(). ◆ linearIterationsLastStep()
template<class TypeTag , class PhysicalModel >
Number of linear solver iterations used in the last call to step(). ◆ linearizations()
template<class TypeTag , class PhysicalModel >
Number of linearizations used in all calls to step(). ◆ maxIter()
template<class TypeTag , class PhysicalModel >
The maximum number of nonlinear iterations allowed. References Opm::NonlinearSolver< TypeTag, PhysicalModel >::SolverParameters::maxIter_. Referenced by Opm::NonlinearSolver< TypeTag, PhysicalModel >::step(). ◆ minIter()
template<class TypeTag , class PhysicalModel >
The minimum number of nonlinear iterations allowed. References Opm::NonlinearSolver< TypeTag, PhysicalModel >::SolverParameters::minIter_. Referenced by Opm::NonlinearSolver< TypeTag, PhysicalModel >::step(). ◆ model() [1/2]
template<class TypeTag , class PhysicalModel >
Mutable reference to physical model. ◆ model() [2/2]
template<class TypeTag , class PhysicalModel >
Reference to physical model. ◆ nonlinearIterations()
template<class TypeTag , class PhysicalModel >
Number of full nonlinear solver iterations used in all calls to step(). ◆ nonlinearIterationsLastStep()
template<class TypeTag , class PhysicalModel >
Number of nonlinear solver iterations used in the last call to step(). ◆ relaxIncrement()
template<class TypeTag , class PhysicalModel >
The step-change size for the relaxation factor. References Opm::NonlinearSolver< TypeTag, PhysicalModel >::SolverParameters::relaxIncrement_. ◆ relaxMax()
template<class TypeTag , class PhysicalModel >
The greatest relaxation factor (i.e. smallest factor) allowed. References Opm::NonlinearSolver< TypeTag, PhysicalModel >::SolverParameters::relaxMax_. ◆ relaxRelTol()
template<class TypeTag , class PhysicalModel >
The relaxation relative tolerance. References Opm::NonlinearSolver< TypeTag, PhysicalModel >::SolverParameters::relaxRelTol_. ◆ relaxType()
template<class TypeTag , class PhysicalModel >
The relaxation type (Dampen or SOR). References Opm::NonlinearSolver< TypeTag, PhysicalModel >::SolverParameters::relaxType_. Referenced by Opm::NonlinearSolver< TypeTag, PhysicalModel >::stabilizeNonlinearUpdate(). ◆ setParameters()
template<class TypeTag , class PhysicalModel >
Set parameters to override those given at construction time. ◆ stabilizeNonlinearUpdate()
template<class TypeTag , class PhysicalModel >
template<class BVector >
Apply a stabilization to dx, depending on dxOld and relaxation parameters. Implemention for Dune block vectors. References Opm::NonlinearSolver< TypeTag, PhysicalModel >::relaxType(), and Opm::detail::stabilizeNonlinearUpdate(). ◆ step()
template<class TypeTag , class PhysicalModel >
References Opm::SimulatorReportSingle::converged, Opm::SimulatorTimerInterface::currentStepLength(), Opm::SimulatorReportSingle::global_time, Opm::NonlinearSolver< TypeTag, PhysicalModel >::maxIter(), Opm::NonlinearSolver< TypeTag, PhysicalModel >::minIter(), Opm::SimulatorTimerInterface::simulationTimeElapsed(), Opm::SimulatorReportSingle::timestep_length, and Opm::to_string(). ◆ wellIterations()
template<class TypeTag , class PhysicalModel >
Number of well iterations used in all calls to step(). ◆ wellIterationsLastStep()
template<class TypeTag , class PhysicalModel >
Number of well iterations used in all calls to step(). The documentation for this class was generated from the following file: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||