chrono::ChTimestepperIIorder Class Reference

Description

Base class for 2nd order timesteppers, i.e., a time integrator for a ChIntegrableIIorder.

A ChIntegrableIIorder is a special subclass of integrable objects that have a state comprised of position and velocity y={x,v}, and state derivative dy/dt={v,a}, where a=acceleration.

#include <ChTimestepper.h>

Inheritance diagram for chrono::ChTimestepperIIorder:
Collaboration diagram for chrono::ChTimestepperIIorder:

Public Member Functions

 ChTimestepperIIorder (ChIntegrableIIorder *mintegrable=nullptr)
 Constructor.
 
virtual ~ChTimestepperIIorder ()
 Destructor.
 
virtual ChStateget_X ()
 Access the state, position part, at current time.
 
virtual ChStateDeltaget_V ()
 Access the state, speed part, at current time.
 
virtual ChStateDeltaget_A ()
 Access the acceleration, at current time.
 
virtual void SetIntegrable (ChIntegrableIIorder *mintegrable)
 Set the integrable object.
 
- Public Member Functions inherited from chrono::ChTimestepper
 ChTimestepper (ChIntegrable *mintegrable=nullptr)
 Constructor.
 
virtual ~ChTimestepper ()
 Destructor.
 
virtual Type GetType () const
 Return type of the integration method. More...
 
virtual void Advance (const double dt)=0
 Performs an integration timestep. More...
 
virtual ChVectorDynamicget_L ()
 Access the lagrangian multipliers, if any.
 
virtual void SetIntegrable (ChIntegrable *mintegrable)
 Set the integrable object.
 
ChIntegrableGetIntegrable ()
 Get the integrable object.
 
virtual double GetTime () const
 Get the current time.
 
virtual void SetTime (double mt)
 Set the current time.
 
void SetVerbose (bool mverbose)
 Turn on/off logging of messages.
 
void SetQcDoClamp (bool mdc)
 Turn on/off clamping on the Qcterm.
 
void SetQcClamping (double mcl)
 Turn on/off clamping on the Qcterm.
 
virtual void ArchiveOUT (ChArchiveOut &marchive)
 Method to allow serialization of transient data to archives.
 
virtual void ArchiveIN (ChArchiveIn &marchive)
 Method to allow de serialization of transient data from archives.
 

Protected Attributes

ChState X
 
ChStateDelta V
 
ChStateDelta A
 
- Protected Attributes inherited from chrono::ChTimestepper
ChIntegrableintegrable
 
double T
 
ChVectorDynamic L
 
bool verbose
 
bool Qc_do_clamp
 
double Qc_clamping
 

Additional Inherited Members

- Public Types inherited from chrono::ChTimestepper
enum  Type {
  EULER_IMPLICIT_LINEARIZED = 0, EULER_IMPLICIT_PROJECTED = 1, EULER_IMPLICIT = 2, TRAPEZOIDAL = 3,
  TRAPEZOIDAL_LINEARIZED = 4, HHT = 5, HEUN = 6, RUNGEKUTTA45 = 7,
  EULER_EXPLICIT = 8, LEAPFROG = 9, NEWMARK = 10, CUSTOM = 20
}
 Available methods for time integration (time steppers).