26 #ifndef LinearViscoelasticNormalSpecies_H
27 #define LinearViscoelasticNormalSpecies_H
52 void read(std::istream& is);
55 void write(std::ostream& os)
const;
void setCollisionTimeAndRestitutionCoefficient(Mdouble tc, Mdouble eps, Mdouble mass)
Sets k, disp such that it matches a given tc and eps for a collision of two copies of equal mass m...
BaseSpecies is the class from which all other species are derived.
void mix(LinearViscoelasticNormalSpecies *const SBase, LinearViscoelasticNormalSpecies *const TBase)
creates default values for mixed species
Mdouble stiffness_
(normal) spring constant
Mdouble getStiffness() const
Allows the spring constant to be accessed.
return type specifically for fuctions returning k and disp at once
void setDissipation(Mdouble dissipation)
Allows the normal dissipation to be changed.
std::string getBaseName() const
Used in Species::getName to obtain a unique name for each Species.
Mdouble getDissipation() const
Allows the normal dissipation to be accessed.
Mdouble getRestitutionCoefficient(Mdouble mass) const
Calculates restitution coefficient for two copies of given disp, k, mass.
void setStiffnessAndRestitutionCoefficient(Mdouble k_, Mdouble eps, Mdouble mass)
Sets k, disp such that it matches a given tc and eps for a collision of two copies of P...
virtual ~LinearViscoelasticNormalSpecies()
The default destructor.
#define MERCURY_DEPRECATED
Enables one to compute normal forces in case of a linear visco-elastic interaction.
LinearViscoelasticNormalSpecies contains the parameters used to describe a linear elastic-dissipative...
void setStiffness(Mdouble new_k)
Allows the spring constant to be changed.
Mdouble getCollisionTime(Mdouble mass) const
Calculates collision time for two copies of a particle of given disp, k, mass.
Mdouble getMaximumVelocity(Mdouble radius, Mdouble mass) const
Calculates the maximum velocity allowed for a collision of two copies of P (for higher velocities par...
void read(std::istream &is)
Reads the species properties from an input stream.
LinearViscoelasticNormalSpecies()
The default constructor.
LinearViscoelasticInteraction InteractionType
The correct Interaction type for this FrictionForceSpecies.
MERCURY_DEPRECATED void setStiffnessAndDissipation(helpers::KAndDisp new_)
Allows the spring and dissipation constants to be changed simultaneously.
void write(std::ostream &os) const
Writes the species properties to an output stream.
Mdouble dissipation_
(normal) viscosity