![]() |
Reference documentation for deal.II version 9.2.0
|
#include <deal.II/sundials/kinsol.h>
Public Types | |
| enum | SolutionStrategy { newton = KIN_NONE, linesearch = KIN_LINESEARCH, fixed_point = KIN_FP, picard = KIN_PICARD } |
Public Member Functions | |
| AdditionalData (const SolutionStrategy &strategy=linesearch, const unsigned int maximum_non_linear_iterations=200, const double function_tolerance=0.0, const double step_tolerance=0.0, const bool no_init_setup=false, const unsigned int maximum_setup_calls=0, const double maximum_newton_step=0.0, const double dq_relative_error=0.0, const unsigned int maximum_beta_failures=0, const unsigned int anderson_subspace_size=0) | |
| void | add_parameters (ParameterHandler &prm) |
Public Attributes | |
| SolutionStrategy | strategy |
| unsigned int | maximum_non_linear_iterations |
| double | function_tolerance |
| double | step_tolerance |
| bool | no_init_setup |
| unsigned int | maximum_setup_calls |
| double | maximum_newton_step |
| double | dq_relative_error |
| unsigned int | maximum_beta_failures |
| unsigned int | anderson_subspace_size |
Additional parameters that can be passed to the KINSOL class.
| enum SUNDIALS::KINSOL::AdditionalData::SolutionStrategy |
|
inline |
Initialization parameters for KINSOL.
Global parameters:
| strategy | Solution strategy |
| maximum_non_linear_iterations | Maximum number of nonlinear iterations |
| function_tolerance | Function norm stopping tolerance |
| step_tolerance | Scaled step stopping tolerance |
Newton parameters:
| no_init_setup | No initial matrix setup |
| maximum_setup_calls | Maximum iterations without matrix setup |
| maximum_newton_step | Maximum allowable scaled length of the Newton step |
| dq_relative_error | Relative error for different quotient computation |
Linesearch parameters:
| maximum_beta_failures | Maximum number of beta-condition failures |
Fixed point and Picard parameters:
| anderson_subspace_size | Anderson acceleration subspace size |
|
inline |
Add all AdditionalData() parameters to the given ParameterHandler object. When the parameters are parsed from a file, the internal parameters are automatically updated.
The following parameters are declared:
These are one-to-one with the options you can pass at construction time.
The options you pass at construction time are set as default values in the ParameterHandler object prm. You can later modify them by parsing a parameter file using prm. The values of the parameter will be updated whenever the content of prm is updated.
Make sure that this class lives longer than prm. Undefined behaviour will occur if you destroy this class, and then parse a parameter file using prm.
| SolutionStrategy SUNDIALS::KINSOL< VectorType >::AdditionalData::strategy |
The solution strategy to use. If you choose SolutionStrategy::newton or SolutionStrategy::linesearch, you have to provide also the function residual(). If you choose SolutionStrategy::picard or SolutionStrategy::fixed_point, you have to provide also the function iteration_function().
| unsigned int SUNDIALS::KINSOL< VectorType >::AdditionalData::maximum_non_linear_iterations |
| double SUNDIALS::KINSOL< VectorType >::AdditionalData::function_tolerance |
| double SUNDIALS::KINSOL< VectorType >::AdditionalData::step_tolerance |
| bool SUNDIALS::KINSOL< VectorType >::AdditionalData::no_init_setup |
Whether an initial call to the preconditioner or Jacobian setup function should be made or not.
A call to this function is useful when solving a sequence of problems, in which the final preconditioner or Jacobian value from one problem is to be used initially for the next problem.
| unsigned int SUNDIALS::KINSOL< VectorType >::AdditionalData::maximum_setup_calls |
The maximum number of nonlinear iterations that can be performed between calls to the setup_jacobian() function.
If set to zero, default values provided by KINSOL will be used.
| double SUNDIALS::KINSOL< VectorType >::AdditionalData::maximum_newton_step |
| double SUNDIALS::KINSOL< VectorType >::AdditionalData::dq_relative_error |
| unsigned int SUNDIALS::KINSOL< VectorType >::AdditionalData::maximum_beta_failures |
| unsigned int SUNDIALS::KINSOL< VectorType >::AdditionalData::anderson_subspace_size |
1.8.13