The LoadControl control routine increases the parameter of the fe requirements given in run function and solves the corresponding differentiable function f for its root and calls a nonlinear solver. controlroutines This class represents the LoadControl control routine. It increments the parameter of the fe requirement and utilizes a nonlinear solver, such as Newton's method, to solve the resulting system at each step.
More...
#include <ikarus/controlroutines/loadcontrol.hh>
template<typename NLS>
class Ikarus::LoadControl< NLS >
- Template Parameters
-
NLS | Type of the nonlinear solver used in the control routine. |
◆ Callback
◆ MessageType
◆ State
◆ Token
◆ LoadControl()
template<typename NLS >
Ikarus::LoadControl< NLS >::LoadControl |
( |
const std::shared_ptr< NLS > & |
nonLinearSolver, |
|
|
int |
loadSteps, |
|
|
const std::array< double, 2 > & |
tbeginEnd |
|
) |
| |
|
inline |
- Parameters
-
nonLinearSolver | Shared pointer to the nonlinear solver. |
loadSteps | Number of load steps in the control routine. |
tbeginEnd | Array representing the range of load parameters [tbegin, tend]. |
◆ name()
◆ nonLinearSolver()
◆ notify()
◆ predictor()
◆ registerListener()
The function that is passed in is first stored in a shared_ptr. After this, the shared_ptr is added to the vector of listener functions, which leads to a implicit conversion to a weak_ptr. The shared_ptr is then returned to the Listener that has called this function to be stored in a vector of shared_ptr<void> listener.hh.
- Parameters
-
callback | the callback function |
- Returns
- Token
◆ run()
- Parameters
-
- Returns
- ControlInformation structure containing information about the control results.
◆ unregisterListener()
The documentation for this class was generated from the following files: