Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication > Class Template Reference Convergence criterion which looks at the weighted absolute value of the residual. More...
Inheritance diagram for Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >:
Detailed Descriptiontemplate<class Vector, class CollectiveCommunication> class Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication > Convergence criterion which looks at the weighted absolute value of the residual. For the WeightedResidualReductionCriterion, the error of the solution is defined as
where is the residual for the k-th iterative solution vector and is the weight of the -th linear equation. In addition, to the reduction of the maximum defect, the linear solver is also considered to be converged, if the defect goes below a given absolute limit. Constructor & Destructor Documentation◆ WeightedResidualReductionCriterion() [1/2]
template<class Vector , class CollectiveCommunication >
◆ WeightedResidualReductionCriterion() [2/2]
template<class Vector , class CollectiveCommunication >
Member Function Documentation◆ absResidualTolerance()
template<class Vector , class CollectiveCommunication >
Returns the maximum absolute tolerated residual. ◆ accuracy()
template<class Vector , class CollectiveCommunication >
Returns the accuracy of the solution at the last update. A value of zero means that the solution was exact. For the accuracy we only take the residual into account, Implements Opm::Linear::ConvergenceCriterion< Vector >. ◆ converged()
template<class Vector , class CollectiveCommunication >
Returns true if and only if the convergence criterion is met. Implements Opm::Linear::ConvergenceCriterion< Vector >. References Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::residualAccuracy(), and Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::residualReductionTolerance(). Referenced by Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::failed(). ◆ failed()
template<class Vector , class CollectiveCommunication >
Returns true if the convergence criterion cannot be met anymore because the solver has broken down. Reimplemented from Opm::Linear::ConvergenceCriterion< Vector >. References Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::converged(). ◆ fixPointAccuracy()
template<class Vector , class CollectiveCommunication >
Returns the weighted maximum of the difference between the last two iterative solutions. Referenced by Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::print(). ◆ fixPointTolerance()
template<class Vector , class CollectiveCommunication >
Returns the maximum tolerated difference between two iterations to be met before a solution is considered to be converged. ◆ print()
template<class Vector , class CollectiveCommunication >
Prints the information about the convergence behaviour for the current iteration.
Reimplemented from Opm::Linear::ConvergenceCriterion< Vector >. References Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::fixPointAccuracy(), and Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::residualAccuracy(). ◆ printInitial()
template<class Vector , class CollectiveCommunication >
Prints the initial information about the convergence behaviour. This method is called after setInitial() if the solver thinks it's a good idea to be verbose. In practice, "printing the initial information" means printing column headers and the initial state.
Reimplemented from Opm::Linear::ConvergenceCriterion< Vector >. ◆ residualAccuracy()
template<class Vector , class CollectiveCommunication >
Returns the reduction of the weighted maximum of the residual compared to the initial solution. Referenced by Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::converged(), and Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::print(). ◆ residualReductionTolerance()
template<class Vector , class CollectiveCommunication >
Returns the tolerance of the residual reduction of the solution. Referenced by Opm::Linear::WeightedResidualReductionCriterion< Vector, CollectiveCommunication >::converged(). ◆ residualWeight()
template<class Vector , class CollectiveCommunication >
Return the relative weight of a row of the residual.
◆ setFixPointTolerance()
template<class Vector , class CollectiveCommunication >
Sets the fix-point tolerance. ◆ setInitial()
template<class Vector , class CollectiveCommunication >
Set the initial solution of the linear system of equations. This version of the method does NOT take the two-norm of the residual as argument. If the two-norm of the defect is available for the linear solver, the version of the update() method with it should be called.
Implements Opm::Linear::ConvergenceCriterion< Vector >. ◆ setResidualReductionTolerance()
template<class Vector , class CollectiveCommunication >
Sets the residual reduction tolerance. ◆ setResidualTolerance()
template<class Vector , class CollectiveCommunication >
Sets the maximum absolute tolerated residual. ◆ setResidualWeight()
template<class Vector , class CollectiveCommunication >
Sets the relative weight of each row of the residual. For the WeightedResidualReductionCriterion, the error of the solution is defined as
where is the residual for the k-th iterative solution vector and is the weight of the -th linear equation. This method is not part of the generic ConvergenceCriteria interface.
◆ update()
template<class Vector , class CollectiveCommunication >
Implements Opm::Linear::ConvergenceCriterion< Vector >. The documentation for this class was generated from the following file: |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||