Newton integrator configuration.
More...
#include <Config.h>
|
int | nSubsteps {1} |
| Number of substeps for the Newton integrator.
|
|
int | nMaxAugmentedLagrangianIterations |
| Number of dual iterations for the augmented Lagrangian method.
|
|
int | nMaxNewtonIterations {10} |
| Maximum number of iterations for the Newton integrator.
|
|
Scalar | gtol {1e-4} |
| Gradient norm threshold for convergence.
|
|
int | nMaxLinearSolverIterations {150} |
| Maximum number of iterations for the linear solver.
|
|
Scalar | rtol {1e-6} |
| Relative tolerance for the linear solver.
|
|
int | nMaxLineSearchIterations {20} |
| Maximum number of iterations for the line search.
|
|
Scalar | tauArmijo {0.5} |
| Armijo step size decrease factor.
|
|
Scalar | cArmijo {1e-4} |
| Armijo slope scale.
|
|
Scalar | muC {1e6} |
| Uniform collision penalty.
|
|
Newton integrator configuration.
◆ Construct()
Config & pbat::sim::algorithm::newton::Config::Construct |
( |
| ) |
|
Finalize construction of the configuration.
- Returns
- Config object
- Exceptions
-
std::invalid_argument | if any parameter is invalid |
◆ Deserialize()
void pbat::sim::algorithm::newton::Config::Deserialize |
( |
io::Archive const & | archive | ) |
|
Deserialize from HDF5 group.
- Parameters
-
archive | Archive to deserialize from |
◆ Serialize()
void pbat::sim::algorithm::newton::Config::Serialize |
( |
io::Archive & | archive | ) |
const |
Serialize to HDF5 group.
- Parameters
-
archive | Archive to serialize to |
◆ WithContactParameters()
Config & pbat::sim::algorithm::newton::Config::WithContactParameters |
( |
Scalar | muC | ) |
|
Set the contact parameters for the Newton integrator.
- Parameters
-
muC | Uniform collision penalty |
- Returns
- Reference to this configuration
◆ WithConvergence()
Config & pbat::sim::algorithm::newton::Config::WithConvergence |
( |
int | maxAugmentedLagrangianIterations, |
|
|
int | maxNewtonIterations, |
|
|
Scalar | gtol, |
|
|
int | maxLinearSolverIterations, |
|
|
Scalar | rtol ) |
Set the convergence parameters for the Newton integrator.
- Parameters
-
maxAugmentedLagrangianIterations | Maximum number of dual iterations for the augmented |
maxNewtonIterations | Maximum number of iterations for the Newton integrator |
gtol | Gradient norm threshold for convergence |
maxLinearSolverIterations | Maximum number of iterations for the linear solver |
rtol | Relative tolerance for the linear solver |
- Returns
- Reference to this configuration
◆ WithLineSearch()
Config & pbat::sim::algorithm::newton::Config::WithLineSearch |
( |
int | maxLineSearchIterations, |
|
|
Scalar | tauArmijo, |
|
|
Scalar | cArmijo ) |
Set the line search parameters for the Newton integrator.
- Parameters
-
maxLineSearchIterations | Maximum number of iterations for the line search |
tauArmijo | Armijo step size decrease factor |
cArmijo | Armijo slope scale |
- Returns
- Reference to this configuration
◆ WithSubsteps()
Config & pbat::sim::algorithm::newton::Config::WithSubsteps |
( |
int | substeps | ) |
|
Set the number of substeps for the Newton integrator.
- Parameters
-
substeps | Number of substeps |
- Returns
- Reference to this configuration
◆ nMaxAugmentedLagrangianIterations
int pbat::sim::algorithm::newton::Config::nMaxAugmentedLagrangianIterations |
Initial value:
Number of dual iterations for the augmented Lagrangian method.
The documentation for this struct was generated from the following files:
- C:/git/PhysicsBasedAnimationToolkit/source/pbat/sim/algorithm/newton/Config.h
- C:/git/PhysicsBasedAnimationToolkit/source/pbat/sim/algorithm/newton/Config.cpp