chrono::ChTimestepperRungeKuttaExpl Class Reference

Description

Performs a step of a 4th order explicit Runge-Kutta integration scheme.

#include <ChTimestepper.h>

Inheritance diagram for chrono::ChTimestepperRungeKuttaExpl:
Collaboration diagram for chrono::ChTimestepperRungeKuttaExpl:

Public Member Functions

 ChTimestepperRungeKuttaExpl (ChIntegrable *mintegrable=nullptr)
 Constructors (default empty)
 
virtual Type GetType () const override
 Return type of the integration method. More...
 
virtual void Advance (const double dt) override
 Performs an integration timestep. More...
 
- Public Member Functions inherited from chrono::ChTimestepperIorder
 ChTimestepperIorder (ChIntegrable *mintegrable=nullptr)
 Constructor.
 
virtual ~ChTimestepperIorder ()
 Destructor.
 
virtual ChStateget_Y ()
 Access the state at current time.
 
virtual ChStateDeltaget_dYdt ()
 Access the derivative of state at current time.
 
virtual void SetIntegrable (ChIntegrable *mintegrable)
 Set the integrable object.
 
- Public Member Functions inherited from chrono::ChTimestepper
 ChTimestepper (ChIntegrable *mintegrable=nullptr)
 Constructor.
 
virtual ~ChTimestepper ()
 Destructor.
 
virtual ChVectorDynamicget_L ()
 Access the lagrangian multipliers, if any.
 
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 y_new
 
ChStateDelta Dydt1
 
ChStateDelta Dydt2
 
ChStateDelta Dydt3
 
ChStateDelta Dydt4
 
- Protected Attributes inherited from chrono::ChTimestepperIorder
ChState Y
 
ChStateDelta dYdt
 
- 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).
 

Member Function Documentation

void chrono::ChTimestepperRungeKuttaExpl::Advance ( const double  dt)
overridevirtual

Performs an integration timestep.

Parameters
dttimestep to advance

Implements chrono::ChTimestepper.

virtual Type chrono::ChTimestepperRungeKuttaExpl::GetType ( ) const
overridevirtual

Return type of the integration method.

Default is CUSTOM. Derived classes should override this function.

Reimplemented from chrono::ChTimestepper.