|
|
| 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.