|
| NewtonMethod (Simulator &simulator) |
|
void | finishInit () |
| Finialize the construction of the object.
|
|
bool | converged () const |
| Returns true if the error of the solution is below the tolerance.
|
|
Problem & | problem () |
| Returns a reference to the object describing the current physical problem.
|
|
const Problem & | problem () const |
| Returns a reference to the object describing the current physical problem.
|
|
Model & | model () |
| Returns a reference to the numeric model.
|
|
const Model & | model () const |
| Returns a reference to the numeric model.
|
|
int | numIterations () const |
| Returns the number of iterations done since the Newton method was invoked.
|
|
void | setIterationIndex (int value) |
| Set the index of current iteration.
|
|
Scalar | tolerance () const |
| Return the current tolerance at which the Newton method considers itself to be converged.
|
|
void | setTolerance (Scalar value) |
| Set the current tolerance at which the Newton method considers itself to be converged.
|
|
bool | apply () |
| Run the Newton method.
|
|
Scalar | suggestTimeStepSize (Scalar oldDt) const |
| Suggest a new time-step size based on the old time-step size.
|
|
std::ostringstream & | endIterMsg () |
| Message that should be printed for the user after the end of an iteration.
|
|
void | eraseMatrix () |
| Causes the solve() method to discared the structure of the linear system of equations the next time it is called.
|
|
LinearSolverBackend & | linearSolver () |
| Returns the linear solver backend object for external use.
|
|
const LinearSolverBackend & | linearSolver () const |
| Returns the linear solver backend object for external use.
|
|
const Timer & | prePostProcessTimer () const |
|
const Timer & | linearizeTimer () const |
|
const Timer & | solveTimer () const |
|
const Timer & | updateTimer () const |
|
|
bool | verbose_ () const |
| Returns true if the Newton method ought to be chatty.
|
|
void | begin_ (const SolutionVector &) |
| Called before the Newton method is applied to an non-linear system of equations.
|
|
void | beginIteration_ () |
| Indicates the beginning of a Newton iteration.
|
|
void | linearizeDomain_ () |
| Linearize the global non-linear system of equations associated with the spatial domain.
|
|
void | linearizeAuxiliaryEquations_ () |
|
void | preSolve_ (const SolutionVector &, const GlobalEqVector ¤tResidual) |
|
void | postSolve_ (const SolutionVector &, const GlobalEqVector &, GlobalEqVector &solutionUpdate) |
| Update the error of the solution given the previous iteration.
|
|
void | update_ (SolutionVector &nextSolution, const SolutionVector ¤tSolution, const GlobalEqVector &solutionUpdate, const GlobalEqVector ¤tResidual) |
| Update the current solution with a delta vector.
|
|
void | updateConstraintDof_ (unsigned, PrimaryVariables &nextValue, const Constraints &constraints) |
| Update the primary variables for a degree of freedom which is constraint.
|
|
void | updatePrimaryVariables_ (unsigned, PrimaryVariables &nextValue, const PrimaryVariables ¤tValue, const EqVector &update, const EqVector &) |
| Update a single primary variables object.
|
|
void | writeConvergence_ (const SolutionVector ¤tSolution, const GlobalEqVector &solutionUpdate) |
| Write the convergence behaviour of the newton method to disk.
|
|
void | endIteration_ (const SolutionVector &, const SolutionVector &) |
| Indicates that one Newton iteration was finished.
|
|
bool | proceed_ () const |
| Returns true iff another Newton iteration should be done.
|
|
void | end_ () |
| Indicates that we're done solving the non-linear system of equations.
|
|
void | failed_ () |
| Called if the Newton method broke down.
|
|
void | succeeded_ () |
| Called if the Newton method was successful.
|
|
template<
class TypeTag>
class Opm::NewtonMethod< TypeTag >
The multi-dimensional Newton method.
This class uses static polymorphism to allow implementations to implement different update/convergence strategies.