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