26 #ifndef ParticleSpecies_H
27 #define ParticleSpecies_H
66 void read(std::istream& is)
override;
69 void write(std::ostream& os)
const override;
Container to store all ParticleSpecies.
BaseSpecies MixedSpeciesType
Mdouble maxInteractionDistance_
Returns the max distance between particles of this species and any other species below which adhesive...
void setMaxInteractionDistance(Mdouble interactionDistance=0)
Sets maxInteractionDistance_.
BaseSpecies is the class from which all other species are derived.
const std::function< double(double)> & getTemperatureDependentDensity() const
std::function< double(double temperature)> temperatureDependentDensity_
void computeMass(BaseParticle *p) const
Compute Particle mass function, which required a reference to the Species vector. It computes the Par...
Mdouble getMassFromRadius(Mdouble radius) const
Mdouble getVolumeFromRadius(Mdouble radius) const
Mdouble getMaxInteractionDistance() 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 ...
std::string getBaseName() const
Used in Species::getName to obtain a unique name for each Species.
const BaseSpecies * getMixedSpecies(const ParticleSpecies *s) const
virtual BaseSpecies * copyMixed() const =0
Creates a new MixedSpecies with the same force properties as the Species from which it is called...
ParticleSpecies * copy() const override=0
Creates a deep copy of the object from which it is called.
void setDensity(Mdouble density)
Allows density_ to be changed.
ParticleSpecies()
The default constructor.
Mdouble getLargestInverseParticleMassLocal() const
Computes inverse mass of the lightest particle (by mass) belonging to this species. If MPI is used, this computation is done locally on each node.
Mdouble density_
The mass density.
Defines the basic properties that a interactable object can have.
Mdouble getDensity() const
Allows density_ to be accessed.
void write(std::ostream &os) const override
Writes the species properties to an output stream.
BaseInteraction InteractionType
Mdouble getSmallestParticleMass() const
Computes mass of the lightest particle (by mass) belonging to this species. This computation calls ge...
~ParticleSpecies()
The default destructor.
void setTemperatureDependentDensity(const std::function< double(double)> &temperatureDependentDensity)
void read(std::istream &is) override
Reads the species properties from an input stream.