chrono::ChTimestepperEulerSemiImplicit Class Reference

Description

Euler semi-implicit timestepper.

This performs the typical v_new = v + a * dt x_new = x + v_new * dt integration with Euler semi-implicit formula.

#include <ChTimestepper.h>

Inheritance diagram for chrono::ChTimestepperEulerSemiImplicit:
Collaboration diagram for chrono::ChTimestepperEulerSemiImplicit:

Public Member Functions

 ChTimestepperEulerSemiImplicit (ChIntegrableIIorder *intgr=nullptr)
 Constructors (default empty)
 
virtual void Advance (const double dt)
 Performs an integration timestep. More...
 
- Public Member Functions inherited from chrono::ChTimestepperIIorder
 ChTimestepperIIorder (ChIntegrableIIorder *intgr=nullptr)
 Constructor.
 
virtual ~ChTimestepperIIorder ()
 Destructor.
 
virtual ChState & get_X ()
 Access the state, position part, at current time.
 
virtual ChStateDelta & get_V ()
 Access the state, speed part, at current time.
 
virtual ChStateDelta & get_A ()
 Access the acceleration, at current time.
 
virtual void SetIntegrable (ChIntegrableIIorder *intgr)
 Set the integrable object.
 
- Public Member Functions inherited from chrono::ChTimestepper
 ChTimestepper (ChIntegrable *intgr=nullptr)
 Constructor.
 
virtual ~ChTimestepper ()
 Destructor.
 
virtual Type GetType () const
 Return type of the integration method. More...
 
virtual ChVectorDynamic & get_L ()
 Access the lagrangian multipliers, if any.
 
virtual void SetIntegrable (ChIntegrable *intgr)
 Set the integrable object.
 
ChIntegrable * GetIntegrable ()
 Get the integrable object.
 
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.
 
void SetQcDoClamp (bool dc)
 Turn on/off clamping on the Qcterm.
 
void SetQcClamping (double cl)
 Turn on/off clamping on the Qcterm.
 
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.
 

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).
 
- Protected Attributes inherited from chrono::ChTimestepperIIorder
ChState X
 
ChStateDelta V
 
ChStateDelta A
 
- Protected Attributes inherited from chrono::ChTimestepper
ChIntegrable * integrable
 
double T
 
ChVectorDynamic L
 
bool verbose
 
bool Qc_do_clamp
 
double Qc_clamping
 

Member Function Documentation

◆ Advance()

void chrono::ChTimestepperEulerSemiImplicit::Advance ( const double  dt)
virtual

Performs an integration timestep.

Parameters
dttimestep to advance

Implements chrono::ChTimestepper.


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