File kernel/src/simulationTools/InteractionManager.hpp#

Go to the source code of this file

Definition of a class that manages dynamic interactions.

class InteractionManager

Public Functions

inline InteractionManager()#
inline virtual ~InteractionManager()#
inline virtual void updateInteractions(SP::Simulation simulation)

Called by Simulation after updating positions prior to starting the Newton loop.

virtual void insertNonSmoothLaw(SP::NonSmoothLaw nslaw, unsigned long int group1, unsigned long int group2)

Specify a non-smooth law to use for a given combination of interaction groups.

Parameters:
  • nslaw – the new nonsmooth law

  • group1 – id of the fisrt group of interactions

  • group2 – id of the second group of interactions

virtual SP::NonSmoothLaw nonSmoothLaw(unsigned long int group1, unsigned long int group2)

Retrieve a non-smooth law to use for a given combination of interaction groups.

Parameters:
  • group1 – first group

  • group2 – second group

Returns:

nsl a SP::NonSmoothLaw

Protected Functions

ACCEPT_SERIALIZATION(InteractionManager)#
VIRTUAL_ACCEPT_VISITORS(InteractionManager)#

Protected Attributes

NSLawMatrix _nslaws#

nslaws

Friends

friend class Simulation
friend class TimeStepping
friend class EventDriven