GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Private Attributes | List of all members
GranOO3::Physic::CriticalTimeStep Class Referenceabstract

pure virtual class for modeling classes able to compute a critical time step More...

#include <CriticalTimeStep.hpp>

Inheritance diagram for GranOO3::Physic::CriticalTimeStep:
Inheritance graph
[legend]

Public Member Functions

virtual double compute_critical_time_step () const =0
 a pure virtual method able to return the critical time step value More...
 

Static Public Member Functions

static const std::set< CriticalTimeStep * > & get_all ()
 

Protected Member Functions

 CriticalTimeStep ()
 constructor More...
 
virtual ~CriticalTimeStep ()
 destructor More...
 

Static Private Attributes

static std::set< CriticalTimeStep * > _all = std::set<CriticalTimeStep*>()
 

Detailed Description

pure virtual class for modeling classes able to compute a critical time step

This class is mainly used by mechanical interactions which are able to compute the optimal time step using the well known formula $\sqrt(\frac{m}{k})$ where $m$ is the equivalent mass and $k$ is the equivalent interaction stiffness.

Constructor & Destructor Documentation

◆ CriticalTimeStep()

GranOO3::Physic::CriticalTimeStep::CriticalTimeStep ( )
protected

constructor

Construct a new CriticalTimeStep, The created object is automatically registered in the _all list

◆ ~CriticalTimeStep()

GranOO3::Physic::CriticalTimeStep::~CriticalTimeStep ( )
protectedvirtual

destructor

Destruct the CriticalTimeStep object. The destroyed object is automatically removed
from the _all list

Member Function Documentation

◆ compute_critical_time_step()

double GranOO3::Physic::CriticalTimeStep::compute_critical_time_step ( ) const
pure virtual

◆ get_all()

const std::set< CriticalTimeStep * > & GranOO3::Physic::CriticalTimeStep::get_all ( )
static

Access to whole list of CriticalTimeStep objects (the _all list)

Member Data Documentation

◆ _all

std::set< CriticalTimeStep * > GranOO3::Physic::CriticalTimeStep::_all = std::set<CriticalTimeStep*>()
staticprivate

A list that references all the CriticalTimeStep objects


The documentation for this class was generated from the following files: