Description
Base class for timesteppers, i.e., time integrators that can advance a system state.
#include <ChTimestepper.h>

Public Types | |
| enum | Type { EULER_EXPLICIT_I, EULER_EXPLICIT_II, EULER_SEMI_IMPLICIT, RUNGE_KUTTA, HEUN, LEAPFROG, EULER_IMPLICIT, EULER_IMPLICIT_LINEARIZED, EULER_IMPLICIT_PROJECTED, TRAPEZOIDAL, TRAPEZOIDAL_LINEARIZED, NEWMARK, HHT, CUSTOM } |
| Methods for time integration. | |
Public Member Functions | |
| virtual Type | GetType () const =0 |
| Return type of the integration method. More... | |
| virtual ChIntegrable * | GetIntegrable () const =0 |
| Return the associated integrable object. | |
| virtual void | Advance (double dt)=0 |
| Performs an integration timestep. | |
| virtual ChVectorDynamic & | GetLagrangeMultipliers () |
| Access the Lagrange multipliers, if any. | |
| virtual double | GetTime () const |
| Get the current time. | |
| virtual void | SetTime (double mt) |
| Set the current time. | |
| void | SetVerbose (bool verb) |
| Turn on/off logging of messages. | |
| virtual void | ArchiveOut (ChArchiveOut &archive) |
| Method to allow serialization of transient data to archives. | |
| virtual void | ArchiveIn (ChArchiveIn &archive) |
| Method to allow de-serialization of transient data from archives. | |
Static Public Member Functions | |
| static std::string | GetTypeAsString (Type type) |
| Return the integrator type as a string. | |
Protected Member Functions | |
| ChTimestepper (ChIntegrable *intgr=nullptr) | |
Protected Attributes | |
| bool | verbose |
| double | T |
| ChVectorDynamic | L |
| bool | Qc_do_clamp |
| double | Qc_clamping |
Friends | |
| class | ChSystem |
Member Function Documentation
◆ GetType()
|
pure virtual |
Return type of the integration method.
Default is CUSTOM. Derived classes should override this function.
Implemented in chrono::ChTimestepperNewmark, chrono::ChTimestepperTrapezoidalLinearized, chrono::ChTimestepperTrapezoidal, chrono::ChTimestepperEulerImplicitProjected, chrono::ChTimestepperEulerImplicitLinearized, chrono::ChTimestepperEulerImplicit, chrono::ChTimestepperLeapfrog, chrono::ChTimestepperHeun, chrono::ChTimestepperRungeKutta, chrono::ChTimestepperEulerSemiImplicit, chrono::ChTimestepperEulerExplicitIIorder, chrono::ChTimestepperEulerExplicitIorder, and chrono::ChTimestepperHHT.
The documentation for this class was generated from the following files:
- /builds/uwsbel/chrono/src/chrono/timestepper/ChTimestepper.h
- /builds/uwsbel/chrono/src/chrono/timestepper/ChTimestepper.cpp