Description

Base class for timesteppers, i.e., time integrators that can advance a system state.

#include <ChTimestepper.h>

Inheritance diagram for chrono::ChTimestepper:

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 ChIntegrableGetIntegrable () const =0
 Return the associated integrable object.
 
virtual void Advance (double dt)=0
 Performs an integration timestep.
 
virtual ChVectorDynamicGetLagrangeMultipliers ()
 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()


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