41 #ifdef DEBUG_CONSTRUCTOR
42 std::cout<<
"SlidingFrictionSpecies::SlidingFrictionSpecies() finished"<<std::endl;
55 #ifdef DEBUG_CONSTRUCTOR
56 std::cout<<
"SlidingFrictionSpecies::SlidingFrictionSpecies(const SlidingFrictionSpecies &p) finished"<<std::endl;
62 #ifdef DEBUG_DESTRUCTOR
63 std::cout<<
"SlidingFrictionSpecies::~SlidingFrictionSpecies() finished"<<std::endl;
97 return "SlidingFriction";
109 std::cerr <<
"Error in setSlidingStiffness" << std::endl;
127 std::cerr <<
"Error in setSlidingDissipation" << std::endl;
148 std::cerr <<
"Error in setSlidingFrictionCoefficient" << std::endl;
168 std::cerr <<
"Error in setSlidingFrictionCoefficientStatic" << std::endl;
210 if (species!=
nullptr)
218 if (species2 !=
nullptr)
226 std::cerr <<
"SlidingFrictionSpecies::setCollisionTimeAndNormalAndTangentialRestitutionCoefficient only works for LinearViscoelasticSlidingFrictionSpecies or LinearPlasticViscoelasticSlidingFrictionSpecies" << std::endl;
244 if (species ==
nullptr)
246 std::cerr <<
"SlidingFrictionSpecies::setCollisionTimeAndNormalAndTangentialRestitutionCoefficient only works for LinearViscoelasticSlidingFrictionSpecies" << std::endl;
Mdouble slidingStiffness_
tangential stiffness.
void read(std::istream &is)
Reads the species properties from an input stream.
void setCollisionTimeAndNormalAndTangentialRestitutionCoefficientNoDispt(Mdouble tc, Mdouble eps, Mdouble beta, Mdouble mass)
Sets k, disp, kt (with dispt=0) such that it matches a given tc and eps for a collision of two partic...
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...
Mdouble getSlidingFrictionCoefficientStatic() const
Allows the static Coulomb friction coefficient to be accessed.
Mdouble getStiffness() const
Allows the spring constant to be accessed.
void mix(SlidingFrictionSpecies *const S, SlidingFrictionSpecies *const T)
creates default values for mixed species
Mdouble slidingFrictionCoefficientStatic_
static Coulomb friction coefficient (by default set equal to mu)
T square(T val)
squares a number
virtual std::string getBaseName() const
Used in Species::getName to obtain a unique name for each Species.
LinearViscoelasticNormalSpecies contains the parameters used to describe a linear elastic-dissipative...
bool getUseAngularDOFs() const
Returns true if torques have to be calculated.
void setSlidingFrictionCoefficientStatic(Mdouble new_mu)
Allows the static Coulomb friction coefficient to be changed.
virtual ~SlidingFrictionSpecies()
The default destructor.
Mdouble average(Mdouble a, Mdouble b)
defines the average of two variables by the harmonic mean.
Mdouble getDissipation() const
Allows the normal dissipation to be accessed.
void setLoadingStiffness(Mdouble loadingStiffness)
Sets the loading stiffness of the linear plastic-viscoelastic normal force.
void setSlidingStiffness(Mdouble new_kt)
Allows the spring constant to be changed.
void setSlidingFrictionCoefficient(Mdouble new_mu)
Allows the (dynamic) Coulomb friction coefficient to be changed; also sets mu_s by default...
void setCollisionTimeAndNormalAndTangentialRestitutionCoefficient(Mdouble tc, Mdouble eps, Mdouble beta, Mdouble mass)
Sets k, disp, kt, dispt such that it matches a given tc and eps for a collision of two particles of m...
void setDissipation(Mdouble dissipation)
Sets the linear dissipation coefficient of the linear plastic-viscoelastic normal force...
Mdouble slidingDissipation_
tangential dissipation coefficient.
SlidingFrictionSpecies contains the parameters used to describe sliding friction. ...
void write(std::ostream &os) const
Writes the species properties to an output stream.
Mdouble getSlidingStiffness() const
Allows the spring constant to be accessed.
Mdouble getSlidingDissipation() const
Allows the tangential viscosity to be accessed.
Defines the basic properties that a interactable object can have.
void setSlidingDissipation(Mdouble new_dispt)
Allows the tangential viscosity to be changed.
LinearPlasticViscoelasticNormalSpecies contains the parameters used to describe a plastic-cohesive no...
SlidingFrictionSpecies()
The default constructor.
Mdouble slidingFrictionCoefficient_
(dynamic) Coulomb friction coefficient
Mdouble getSlidingFrictionCoefficient() const
Allows the (dynamic) Coulomb friction coefficient to be accessed.
Mdouble getLoadingStiffness() const
Returns the loading stiffness of the linear plastic-viscoelastic normal force.