|
Public Member Functions |
Static Public Member Functions |
Protected Member Functions |
Protected Attributes |
List of all members
Opm::TpsaNewtonMethod< TypeTag > Class Template Reference Newton method solving for generic TPSA model. More...
Detailed Descriptiontemplate<class TypeTag> class Opm::TpsaNewtonMethod< TypeTag > Newton method solving for generic TPSA model. Generates the Jacobian matrix, J(u^n) and residual vector, R(u^n), with a solution vector, u^n, at iteration n. Subsequently the linear system J(u^n)\delta u^n = -R(u^n) is solved to get u^{n+1} = u^n + \Delta u^n. Constructor & Destructor Documentation◆ TpsaNewtonMethod()
template<class TypeTag >
Constructor.
References Opm::TpsaNewtonMethod< TypeTag >::params_. Member Function Documentation◆ apply()
template<class TypeTag >
Run the Newton method.
References Opm::TpsaNewtonMethod< TypeTag >::begin_(), Opm::TpsaNewtonMethod< TypeTag >::beginIteration_(), Opm::TpsaNewtonMethod< TypeTag >::converged(), Opm::TpsaNewtonMethod< TypeTag >::endIteration_(), Opm::TpsaNewtonMethod< TypeTag >::error_, Opm::TpsaNewtonMethod< TypeTag >::failed_(), Opm::Timer::halt(), Opm::TpsaNewtonMethod< TypeTag >::linearizeDomain_(), Opm::TpsaNewtonMethod< TypeTag >::linearizeTimer_, Opm::TpsaNewtonMethod< TypeTag >::linearSolver_, Opm::TpsaNewtonMethod< TypeTag >::model(), Opm::TpsaNewtonMethod< TypeTag >::numIterations(), Opm::TpsaNewtonMethod< TypeTag >::prePostProcessTimer_, Opm::TpsaNewtonMethod< TypeTag >::preSolve_(), Opm::TpsaNewtonMethod< TypeTag >::proceed_(), Opm::Timer::realTimeElapsed(), Opm::TpsaNewtonMethod< TypeTag >::solveTimer_, Opm::Timer::start(), Opm::Timer::stop(), Opm::TpsaNewtonMethod< TypeTag >::update_(), Opm::TpsaNewtonMethod< TypeTag >::updateTimer_, and Opm::TpsaNewtonMethod< TypeTag >::verbosity_(). ◆ begin_()
template<class TypeTag >
Called before the Newton method is applied to an non-linear system of equations. References Opm::TpsaNewtonMethod< TypeTag >::error_, Opm::TpsaNewtonMethod< TypeTag >::numIterations_, and Opm::TpsaNewtonMethod< TypeTag >::numLinearizations_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ beginIteration_()
template<class TypeTag >
Calculations at the beginning of a Newton iteration. References Opm::TpsaNewtonMethod< TypeTag >::error_, and Opm::TpsaNewtonMethod< TypeTag >::lastError_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ converged()
template<class TypeTag >
Returns true if the error of the solution is below the tolerance.
References Opm::TpsaNewtonMethod< TypeTag >::error_, and Opm::TpsaNewtonMethod< TypeTag >::tolerance(). Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(), and Opm::TpsaNewtonMethod< TypeTag >::proceed_(). ◆ endIteration_()
template<class TypeTag >
Indicates that one Newton iteration was finished. References Opm::TpsaNewtonMethod< TypeTag >::error_, Opm::TpsaNewtonMethod< TypeTag >::numIterations_, and Opm::TpsaNewtonMethod< TypeTag >::verbosity_(). Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ failed_()
template<class TypeTag >
Called if the Newton method broke down. References Opm::TpsaNewtonMethod< TypeTag >::numIterations_, and Opm::TpsaNewtonMethod< TypeTag >::params_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ linearizeDomain_()
template<class TypeTag >
Linearize the global non-linear system of equations associated with the spatial domain. References Opm::TpsaNewtonMethod< TypeTag >::model(), and Opm::TpsaNewtonMethod< TypeTag >::numLinearizations_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ linearizeTimer()
template<class TypeTag >
Return linearization timer.
References Opm::TpsaNewtonMethod< TypeTag >::linearizeTimer_. ◆ linearSolver() [1/2]
template<class TypeTag >
Returns the linear solver backend object for external use.
References Opm::TpsaNewtonMethod< TypeTag >::linearSolver_. ◆ linearSolver() [2/2]
template<class TypeTag >
Returns the linear solver backend object for external use.
References Opm::TpsaNewtonMethod< TypeTag >::linearSolver_. ◆ minIterations()
template<class TypeTag >
Returns minimum number of Newton iterations used.
References Opm::TpsaNewtonMethod< TypeTag >::params_. ◆ model() [1/2]
template<class TypeTag >
Returns a reference to the geomechanics model.
References Opm::TpsaNewtonMethod< TypeTag >::simulator_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(), Opm::TpsaNewtonMethod< TypeTag >::linearizeDomain_(), Opm::TpsaNewtonMethod< TypeTag >::preSolve_(), and Opm::TpsaNewtonMethod< TypeTag >::update_(). ◆ model() [2/2]
template<class TypeTag >
Returns a reference to the geomechanics model.
References Opm::TpsaNewtonMethod< TypeTag >::simulator_. ◆ numIterations()
template<class TypeTag >
Returns the number of iterations done since the Newton method was invoked.
References Opm::TpsaNewtonMethod< TypeTag >::numIterations_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(), and Opm::TpsaNewtonMethod< TypeTag >::proceed_(). ◆ numLinearizations()
template<class TypeTag >
Returns the number of linearizations that has done since the Newton method was invoked.
References Opm::TpsaNewtonMethod< TypeTag >::numLinearizations_. ◆ prePostProcessTimer()
template<class TypeTag >
Return post-process timer.
References Opm::TpsaNewtonMethod< TypeTag >::prePostProcessTimer_. ◆ preSolve_()
template<class TypeTag >
Compute error before a Newton iteration.
References Opm::TpsaNewtonMethod< TypeTag >::error_, Opm::TpsaNewtonMethod< TypeTag >::lastError_, Opm::TpsaNewtonMethod< TypeTag >::model(), Opm::TpsaNewtonMethod< TypeTag >::params_, Opm::TpsaNewtonMethod< TypeTag >::simulator_, and Opm::to_string(). Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ problem() [1/2]
template<class TypeTag >
Returns a reference to the object describing the current physical problem.
References Opm::TpsaNewtonMethod< TypeTag >::simulator_. ◆ problem() [2/2]
template<class TypeTag >
Returns a reference to the object describing the current physical problem.
References Opm::TpsaNewtonMethod< TypeTag >::simulator_. ◆ proceed_()
template<class TypeTag >
Returns true iff another Newton iteration should be done.
References Opm::TpsaNewtonMethod< TypeTag >::converged(), Opm::TpsaNewtonMethod< TypeTag >::error_, Opm::TpsaNewtonMethod< TypeTag >::lastError_, Opm::TpsaNewtonMethod< TypeTag >::numIterations(), and Opm::TpsaNewtonMethod< TypeTag >::params_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ registerParameters()
template<class TypeTag >
Register all run-time parameters for the Newton method. References Opm::TpsaNewtonMethodParams< Scalar >::registerParameters(). ◆ solveTimer()
template<class TypeTag >
Return linear solver timer.
References Opm::TpsaNewtonMethod< TypeTag >::solveTimer_. ◆ tolerance()
template<class TypeTag >
Return the current tolerance at which the Newton method considers itself to be converged.
References Opm::TpsaNewtonMethod< TypeTag >::params_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::converged(). ◆ update_()
template<class TypeTag >
Update the current solution with a delta vector.
Different update strategies, such as chopped updates can be implemented by overriding this method. The default behavior is use the standard Newton-Raphson update strategy, i.e. u^{n+1} = u^n - \Delta u^n References Opm::TpsaNewtonMethod< TypeTag >::model(), and Opm::TpsaNewtonMethod< TypeTag >::updatePrimaryVariables_(). Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(). ◆ updatePrimaryVariables_()
template<class TypeTag >
Update a single primary variables object.
Referenced by Opm::TpsaNewtonMethod< TypeTag >::update_(). ◆ updateTimer()
template<class TypeTag >
Return solution update timer.
References Opm::TpsaNewtonMethod< TypeTag >::updateTimer_. ◆ verbosity_()
template<class TypeTag >
Verbosity level of Newton print messages.
Newton procedure verbosity: 0=none, 1=basic, 2=all References Opm::TpsaNewtonMethod< TypeTag >::params_, and Opm::TpsaNewtonMethod< TypeTag >::simulator_. Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(), and Opm::TpsaNewtonMethod< TypeTag >::endIteration_(). Member Data Documentation◆ error_
template<class TypeTag >
Referenced by Opm::TpsaNewtonMethod< TypeTag >::apply(), Opm::TpsaNewtonMethod< TypeTag >::begin_(), Opm::TpsaNewtonMethod< TypeTag >::beginIteration_(), Opm::TpsaNewtonMethod< TypeTag >::converged(), Opm::TpsaNewtonMethod< TypeTag >::endIteration_(), Opm::TpsaNewtonMethod< TypeTag >::preSolve_(), and Opm::TpsaNewtonMethod< TypeTag >::proceed_(). ◆ lastError_
template<class TypeTag >
◆ linearizeTimer_
template<class TypeTag >
◆ linearSolver_
template<class TypeTag >
◆ numIterations_
template<class TypeTag >
◆ numLinearizations_
template<class TypeTag >
◆ params_
template<class TypeTag >
Referenced by Opm::TpsaNewtonMethod< TypeTag >::failed_(), Opm::TpsaNewtonMethod< TypeTag >::minIterations(), Opm::TpsaNewtonMethod< TypeTag >::preSolve_(), Opm::TpsaNewtonMethod< TypeTag >::proceed_(), Opm::TpsaNewtonMethod< TypeTag >::tolerance(), Opm::TpsaNewtonMethod< TypeTag >::TpsaNewtonMethod(), and Opm::TpsaNewtonMethod< TypeTag >::verbosity_(). ◆ prePostProcessTimer_
template<class TypeTag >
◆ simulator_
template<class TypeTag >
◆ solveTimer_
template<class TypeTag >
◆ updateTimer_
template<class TypeTag >
The documentation for this class was generated from the following file: |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||