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

InteractionManager()
virtual ~InteractionManager()
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.

Return
nsl a SP::NonSmoothLaw
Parameters
  • group1: first group
  • group2: second group

virtual void updateInteractions(SP::Simulation simulation)

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

Protected Functions

ACCEPT_SERIALIZATION(InteractionManager)

Protected Attributes

NSLawMatrix _nslaws

nslaws

Friends

friend EventDriven
friend Simulation
friend TimeStepping