39 #ifdef DEBUG_CONSTRUCTOR
40 std::cout<<
"HertzianViscoelasticNormalSpecies::HertzianViscoelasticNormalSpecies() finished"<<std::endl;
51 #ifdef DEBUG_CONSTRUCTOR
52 std::cout<<
"HertzianViscoelasticNormalSpecies::HertzianViscoelasticNormalSpecies(const HertzianViscoelasticNormalSpecies &p) finished"<<std::endl;
58 #ifdef DEBUG_DESTRUCTOR
59 std::cout<<
"HertzianViscoelasticNormalSpecies::~HertzianViscoelasticNormalSpecies() finished"<<std::endl;
87 return "HertzianViscoelastic";
93 if (elasticModulus >= 0)
97 std::cerr <<
"Error in setElasticModulus" << std::endl;
107 if (elasticModulus >= 0.0 && rest > 0.0 && rest <= 1.0)
116 logger(
ERROR,
"Error in setElasticModulusAndRestitutionCoefficient");
129 if (dissipation >= 0)
135 std::cerr <<
"Error in setDissipation(" << dissipation <<
")" << std::endl;
void setElasticModulus(Mdouble elasticModulus)
Allows the spring constant to be changed.
Mdouble getElasticModulus() const
Allows the spring constant to be accessed.
Logger< MERCURY_LOGLEVEL > logger("MercuryKernel")
void mix(HertzianViscoelasticNormalSpecies *const SBase, HertzianViscoelasticNormalSpecies *const TBase)
Calculates collision time for two copies of a particle of given disp, k, mass.
Mdouble elasticModulus_
normal spring constant
Mdouble getCollisionTime(Mdouble particleDiameter, Mdouble particleDensity, Mdouble relativeVelocity) const
Used in Species::getName to obtain a unique name for each Species.
void read(std::istream &is)
Reads the species properties from an input stream.
void setDissipation(Mdouble dissipation)
Allows the normal dissipation to be changed.
Mdouble log(Mdouble Power)
T square(T val)
squares a number
HertzianViscoelasticNormalSpecies()
The default constructor.
Mdouble getDissipation() const
Allows the normal dissipation to be accessed.
Mdouble average(Mdouble a, Mdouble b)
defines the average of two variables by the harmonic mean.
void setElasticModulusAndRestitutionCoefficient(Mdouble elasticModulus, Mdouble rest)
Allows the spring constant to be changed.
Mdouble dissipation_
normal dissipation constant
std::string getBaseName() const
Used in Species::getName to obtain a unique name for each Species.
Defines the basic properties that a interactable object can have.
void write(std::ostream &os) const
Writes the species properties to an output stream.
HertzianViscoelasticNormalSpecies contains the parameters used to describe a Hertzian normal force (T...
virtual ~HertzianViscoelasticNormalSpecies()
The default destructor.