161 void write(std::ostream& os)
const override;
166 void read(std::istream& is)
override;
Container to store all ParticleSpecies.
virtual void deleteEmptyInteraction(BaseInteraction *interaction) const =0
Mdouble interactionDistance_
Returns the distance between particles of this species below which adhesive forces can occur (needed ...
BaseSpecies is the class from which all other species are derived.
BaseNormalForce * normalForce_
A pointer to the normal force parameters This pointer is used by the Interaction's to get a pointer ...
~BaseSpecies()
The default destructor.
BaseAdhesiveForce * getAdhesiveForce() const
It is an abstract base class due to the purely virtual functions declared below. Even if the function...
void setInteractionDistance(Mdouble interactionDistance)
Sets BaseSpecies::interactionDistance_.
virtual void copyInto(BaseSpecies *s) const =0
BaseNormalForce * getNormalForce() const
BaseAdhesiveForce * adhesiveForce_
A pointer to the adhesive force parameters This pointer is used by the Interaction's to get a pointe...
Mdouble getInteractionDistance() const
returns the largest separation distance at which adhesive short-range forces can occur.
Stores information about interactions between two interactable objects; often particles but could be ...
SpeciesHandler * getHandler() const
Returns the pointer to the handler to which this species belongs.
void write(std::ostream &os) const override
Sets the boolean constantRestitution_.
SpeciesHandler * handler_
A pointer to the handler to which this species belongs. It is initialized to nullptr and gets set whe...
BaseFrictionForce * getFrictionForce() const
static Mdouble averageInf(Mdouble a, Mdouble b)
Returns the harmonic mean of two variables, returning inf if either is inf.
static Mdouble average(Mdouble a, Mdouble b)
Returns the harmonic mean of two variables.
virtual BaseInteraction * getEmptyInteraction() const =0
void read(std::istream &is) override
void setHandler(SpeciesHandler *handler)
Sets the pointer to the handler to which this species belongs.
virtual void mixAll(BaseSpecies *S, BaseSpecies *T)=0
creates default values for mixed species
virtual BaseSpecies * copy() const =0
Creates a deep copy of the object from which it is called.
virtual bool getUseAngularDOFs() const =0
Returns true if torques (i.e. angular degrees of freedom) have to be calculated.
BaseSpecies()
The default constructor.
BaseFrictionForce * frictionForce_
A pointer to the friction force parameters This pointer is used by the Interaction's to get a pointe...
Defines the basic properties that a interactable object can have.
virtual BaseInteraction * getNewInteraction(BaseInteractable *P, BaseInteractable *I, unsigned timeStamp) const =0
returns new Interaction object.