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