![]() |
deal.II version GIT relicensing-6842-g793a97d2aa 2026-10-02 14:00:01+00:00
|
#include <deal.II/trilinos/nox.h>
Struct that helps to configure NOXSolver. More advanced parameters are passed to the constructor NOXSolver directly via a Teuchos::ParameterList.
Public Types | |
| enum class | NormType { L1 , L2 , Linfty } |
| enum class | NormScaling { Unscaled , Scaled } |
Public Member Functions | |
| AdditionalData (const unsigned int max_iter=10, const double abs_tol=1.e-20, const double rel_tol=1.e-5, const unsigned int threshold_nonlinear_iterations=1, const unsigned int threshold_n_linear_iterations=0, const bool reuse_solver=false, const NormType norm_type=NormType::L2, const NormScaling norm_scaling=NormScaling::Scaled) | |
Public Attributes | |
| unsigned int | max_iter |
| double | abs_tol |
| NormType | norm_type |
| NormScaling | norm_scaling |
| double | rel_tol |
| unsigned int | threshold_nonlinear_iterations |
| unsigned int | threshold_n_linear_iterations |
| bool | reuse_solver |
|
strong |
Type of residual norm used for absolute and relative convergence checks.
These correspond to the options described in: https://trilinos.github.io/docs/nox/class_n_o_x_1_1_status_test_1_1_norm_f.html
| Enumerator | |
|---|---|
| L1 | L1 norm of the residual. |
| L2 | L2 norm of the residual. |
| Linfty | Infinity norm of the residual. |
|
strong |
Scaling of the absolute residual norm used for convergence checks.
These correspond to the options described in: https://trilinos.github.io/docs/nox/class_n_o_x_1_1_status_test_1_1_norm_f.html
| TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::AdditionalData | ( | const unsigned int | max_iter = 10, |
| const double | abs_tol = 1.e-20, |
||
| const double | rel_tol = 1.e-5, |
||
| const unsigned int | threshold_nonlinear_iterations = 1, |
||
| const unsigned int | threshold_n_linear_iterations = 0, |
||
| const bool | reuse_solver = false, |
||
| const NormType | norm_type = NormType::L2, |
||
| const NormScaling | norm_scaling = NormScaling::Scaled |
||
| ) |
Constructor.
| unsigned int TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::max_iter |
| double TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::abs_tol |
| NormType TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::norm_type |
| NormScaling TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::norm_scaling |
| double TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::rel_tol |
| unsigned int TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::threshold_nonlinear_iterations |
| unsigned int TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::threshold_n_linear_iterations |
A number that indicates how many iterations a linear solver should at most perform before the preconditioner should be updated. The use of this variable is predicated on the idea that one can keep using a preconditioner built earlier as long as it is a good preconditioner for the matrix currently in use – where "good" is defined as leading to a number of iterations to solve linear systems less than the threshold given by the current variable.
This variable is only used if the NOXSolver::solve_with_jacobian_and_track_n_linear_iterations function object has been given a target (i.e., it is not empty).
| bool TrilinosWrappers::NOXSolver< VectorType >::AdditionalData::reuse_solver |