MercuryDPM  Trunk
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FrictionSpecies Class Reference

FrictionSpecies contains the parameters used to describe sliding, rolling and torsional friction. More...

#include <FrictionSpecies.h>

+ Inheritance diagram for FrictionSpecies:

Public Types

typedef FrictionInteraction InteractionType
 The correct Interaction type for this FrictionForceSpecies. More...
 
- Public Types inherited from SlidingFrictionSpecies
typedef SlidingFrictionInteraction InteractionType
 The correct Interaction type for this FrictionForceSpecies. More...
 

Public Member Functions

 FrictionSpecies ()
 The default constructor. More...
 
 FrictionSpecies (const FrictionSpecies &s)
 The default copy constructor. More...
 
 ~FrictionSpecies ()
 The default destructor. More...
 
void read (std::istream &is)
 Reads the species properties from an input stream. More...
 
void write (std::ostream &os) const
 Writes the species properties to an output stream. More...
 
std::string getBaseName () const override
 Used in Species::getName to obtain a unique name for each Species. More...
 
bool getUseAngularDOFs () const override
 Returns true if torques have to be calculated. More...
 
void mix (FrictionSpecies *S, FrictionSpecies *T)
 creates default values for mixed species More...
 
void setRollingStiffness (Mdouble new_kt)
 Allows the spring constant to be changed. More...
 
Mdouble getRollingStiffness () const
 Allows the spring constant to be accessed. More...
 
void setRollingDissipation (Mdouble new_dispt)
 Allows the tangential viscosity to be changed. More...
 
Mdouble getRollingDissipation () const
 Allows the tangential viscosity to be accessed. More...
 
void setRollingFrictionCoefficient (Mdouble new_mu)
 Allows the (dynamic) Coulomb friction coefficient to be changed; also sets mu_s by default. More...
 
Mdouble getRollingFrictionCoefficient () const
 Allows the (dynamic) Coulomb friction coefficient to be accessed. More...
 
void setRollingFrictionCoefficientStatic (Mdouble new_mu)
 Allows the static Coulomb rolling friction coefficient to be changed. More...
 
Mdouble getRollingFrictionCoefficientStatic () const
 Allows the static Coulomb rolling friction coefficient to be accessed. More...
 
void setTorsionStiffness (Mdouble new_kt)
 Allows the torsion stiffness to be changed. More...
 
Mdouble getTorsionStiffness () const
 Allows the torsion stiffness to be accessed. More...
 
void setTorsionDissipation (Mdouble new_dispt)
 Allows the torsion viscosity to be changed. More...
 
Mdouble getTorsionDissipation () const
 Allows the torsion viscosity to be accessed. More...
 
void setTorsionFrictionCoefficient (Mdouble new_mu)
 Allows the (dynamic) Coulomb torsion friction coefficient to be changed; also sets mu_s by default. More...
 
Mdouble getTorsionFrictionCoefficient () const
 Allows the (dynamic) Coulomb torsion friction coefficient to be accessed. More...
 
void setTorsionFrictionCoefficientStatic (Mdouble new_mu)
 Allows the static Coulomb torsion friction coefficient to be accessed. More...
 
Mdouble getTorsionFrictionCoefficientStatic () const
 Allows the static Coulomb torsion friction coefficient to be accessed. More...
 
- Public Member Functions inherited from SlidingFrictionSpecies
 SlidingFrictionSpecies ()
 The default constructor. More...
 
 SlidingFrictionSpecies (const SlidingFrictionSpecies &s)
 The default copy constructor. More...
 
 ~SlidingFrictionSpecies ()
 The default destructor. More...
 
void read (std::istream &is)
 Reads the species properties from an input stream. More...
 
void write (std::ostream &os) const
 Writes the species properties to an output stream. More...
 
void setSlidingStiffness (Mdouble new_kt)
 Allows the spring constant to be changed. More...
 
Mdouble getSlidingStiffness () const
 Allows the spring constant to be accessed. More...
 
void setSlidingDissipation (Mdouble new_dispt)
 Allows the tangential viscosity to be changed. More...
 
Mdouble getSlidingDissipation () const
 Allows the tangential viscosity to be accessed. More...
 
void setSlidingFrictionCoefficient (Mdouble new_mu)
 Allows the (dynamic) Coulomb friction coefficient to be changed; also sets mu_s by default. More...
 
Mdouble getSlidingFrictionCoefficient () const
 Allows the (dynamic) Coulomb friction coefficient to be accessed. More...
 
void setSlidingFrictionCoefficientStatic (Mdouble new_mu)
 Allows the static Coulomb friction coefficient to be changed. More...
 
Mdouble getSlidingFrictionCoefficientStatic () const
 Allows the static Coulomb friction coefficient to be accessed. More...
 
bool getUseAngularDOFs () const override
 Returns true if torques have to be calculated. More...
 
void mix (SlidingFrictionSpecies *S, SlidingFrictionSpecies *T)
 creates default values for mixed species More...
 
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 masses m0,m1. More...
 
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 particles of mass m. More...
 
void setIsSuperquadricSpecies (bool isSuperquadricSpecies)
 
bool getIsSuperquadricSpecies () const
 
- Public Member Functions inherited from BaseForce
BaseSpeciesgetBaseSpecies () const
 
void setBaseSpecies (BaseSpecies *baseSpecies)
 

Private Attributes

Mdouble rollingStiffness_
 rolling stiffness. More...
 
Mdouble rollingDissipation_
 rolling dissipation coefficient. More...
 
Mdouble rollingFrictionCoefficient_
 (dynamic) Coulomb rolling friction coefficient. More...
 
Mdouble rollingFrictionCoefficientStatic_
 static Coulomb rolling friction coefficient (by default set equal to the dynamic one). More...
 
Mdouble torsionStiffness_
 rolling stiffness. More...
 
Mdouble torsionDissipation_
 rolling dissipation coefficient. More...
 
Mdouble torsionFrictionCoefficient_
 (dynamic) Coulomb torsion friction coefficient. More...
 
Mdouble torsionFrictionCoefficientStatic_
 static Coulomb torsion friction coefficient (by default set equal to the dynamic one). More...
 

Detailed Description

FrictionSpecies contains the parameters used to describe sliding, rolling and torsional friction.

See FrictionInteraction::computeForce for a description of the force law.

Todo:
TW: should this class be renamed SlidingRollingTorsionFrictionSpecies?

Definition at line 38 of file FrictionSpecies.h.

Member Typedef Documentation

The correct Interaction type for this FrictionForceSpecies.

Definition at line 42 of file FrictionSpecies.h.

Constructor & Destructor Documentation

FrictionSpecies::FrictionSpecies ( )

The default constructor.

Definition at line 34 of file FrictionSpecies.cc.

References rollingDissipation_, rollingFrictionCoefficient_, rollingFrictionCoefficientStatic_, rollingStiffness_, torsionDissipation_, torsionFrictionCoefficient_, torsionFrictionCoefficientStatic_, and torsionStiffness_.

36 {
37  rollingStiffness_ = 0.0;
38  rollingDissipation_ = 0.0;
41  torsionStiffness_ = 0.0;
42  torsionDissipation_ = 0.0;
45 #ifdef DEBUG_CONSTRUCTOR
46  std::cout<<"FrictionSpecies::FrictionSpecies() finished"<<std::endl;
47 #endif
48 }
Mdouble rollingStiffness_
rolling stiffness.
Mdouble rollingDissipation_
rolling dissipation coefficient.
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble torsionDissipation_
rolling dissipation coefficient.
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
Mdouble torsionStiffness_
rolling stiffness.
SlidingFrictionSpecies()
The default constructor.
FrictionSpecies::FrictionSpecies ( const FrictionSpecies s)

The default copy constructor.

Parameters
[in]sthe species that is copied

Definition at line 53 of file FrictionSpecies.cc.

References rollingDissipation_, rollingFrictionCoefficient_, rollingFrictionCoefficientStatic_, rollingStiffness_, torsionDissipation_, torsionFrictionCoefficient_, torsionFrictionCoefficientStatic_, and torsionStiffness_.

55 {
64 #ifdef DEBUG_CONSTRUCTOR
65  std::cout<<"FrictionSpecies::FrictionSpecies(const FrictionSpecies &p) finished"<<std::endl;
66 #endif
67 }
Mdouble rollingStiffness_
rolling stiffness.
Mdouble rollingDissipation_
rolling dissipation coefficient.
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble torsionDissipation_
rolling dissipation coefficient.
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
Mdouble torsionStiffness_
rolling stiffness.
SlidingFrictionSpecies()
The default constructor.
FrictionSpecies::~FrictionSpecies ( )

The default destructor.

Definition at line 69 of file FrictionSpecies.cc.

70 {
71 #ifdef DEBUG_DESTRUCTOR
72  std::cout<<"FrictionSpecies::~FrictionSpecies() finished"<<std::endl;
73 #endif
74 }

Member Function Documentation

std::string FrictionSpecies::getBaseName ( ) const
overridevirtual

Used in Species::getName to obtain a unique name for each Species.

Returns
a string containing the name of the species (minus the word "Species")

Reimplemented from SlidingFrictionSpecies.

Definition at line 112 of file FrictionSpecies.cc.

113 {
114  return "Friction";
115 }
Mdouble FrictionSpecies::getRollingDissipation ( ) const

Allows the tangential viscosity to be accessed.

Definition at line 180 of file FrictionSpecies.cc.

References rollingDissipation_.

Referenced by FrictionInteraction::computeFrictionForce(), and mix().

181 {
182  return rollingDissipation_;
183 }
Mdouble rollingDissipation_
rolling dissipation coefficient.
Mdouble FrictionSpecies::getRollingFrictionCoefficient ( ) const

Allows the (dynamic) Coulomb friction coefficient to be accessed.

Definition at line 199 of file FrictionSpecies.cc.

References rollingFrictionCoefficient_.

Referenced by FrictionInteraction::computeFrictionForce(), and mix().

200 {
202 }
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
Mdouble FrictionSpecies::getRollingFrictionCoefficientStatic ( ) const

Allows the static Coulomb rolling friction coefficient to be accessed.

Allows the static Coulomb friction coefficient to be accessed.

Definition at line 216 of file FrictionSpecies.cc.

References rollingFrictionCoefficientStatic_.

Referenced by FrictionInteraction::computeFrictionForce(), and mix().

217 {
219 }
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble FrictionSpecies::getRollingStiffness ( ) const

Allows the spring constant to be accessed.

Definition at line 162 of file FrictionSpecies.cc.

References rollingStiffness_.

Referenced by FrictionInteraction::computeFrictionForce(), FrictionInteraction::getElasticEnergy(), and mix().

163 {
164  return rollingStiffness_;
165 }
Mdouble rollingStiffness_
rolling stiffness.
Mdouble FrictionSpecies::getTorsionDissipation ( ) const

Allows the torsion viscosity to be accessed.

Allows the tangential viscosity to be accessed.

Definition at line 255 of file FrictionSpecies.cc.

References torsionDissipation_.

Referenced by FrictionInteraction::computeFrictionForce(), and mix().

256 {
257  return torsionDissipation_;
258 }
Mdouble torsionDissipation_
rolling dissipation coefficient.
Mdouble FrictionSpecies::getTorsionFrictionCoefficient ( ) const

Allows the (dynamic) Coulomb torsion friction coefficient to be accessed.

Allows the (dynamic) Coulomb friction coefficient to be accessed.

Definition at line 277 of file FrictionSpecies.cc.

References torsionFrictionCoefficient_.

Referenced by FrictionInteraction::computeFrictionForce(), and mix().

278 {
280 }
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
Mdouble FrictionSpecies::getTorsionFrictionCoefficientStatic ( ) const

Allows the static Coulomb torsion friction coefficient to be accessed.

Allows the static Coulomb friction coefficient to be accessed.

Definition at line 297 of file FrictionSpecies.cc.

References torsionFrictionCoefficientStatic_.

Referenced by FrictionInteraction::computeFrictionForce(), and mix().

298 {
300 }
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
Mdouble FrictionSpecies::getTorsionStiffness ( ) const

Allows the torsion stiffness to be accessed.

Allows the spring constant to be accessed.

Definition at line 237 of file FrictionSpecies.cc.

References torsionStiffness_.

Referenced by FrictionInteraction::computeFrictionForce(), FrictionInteraction::getElasticEnergy(), and mix().

238 {
239  return torsionStiffness_;
240 }
Mdouble torsionStiffness_
rolling stiffness.
bool FrictionSpecies::getUseAngularDOFs ( ) const
overridevirtual

Returns true if torques have to be calculated.

Returns true for any FrictionForceSpecies except EmptyFrictionSpecies, because for spherical particles, torques are only caused by tangential forces. See SpeciesHandler::useAngularDOFs for more details

Returns
true

Implements BaseFrictionForce.

Definition at line 123 of file FrictionSpecies.cc.

124 {
125  return true;
126 }
void FrictionSpecies::mix ( FrictionSpecies S,
FrictionSpecies T 
)

creates default values for mixed species

For all parameters we assume that the harmonic mean of the parameters of the original two species is a sensible default.

Parameters
[in]S,Tthe two species whose properties are mixed to create the new species

Definition at line 133 of file FrictionSpecies.cc.

References BaseSpecies::average(), BaseSpecies::averageInf(), getRollingDissipation(), getRollingFrictionCoefficient(), getRollingFrictionCoefficientStatic(), getRollingStiffness(), getTorsionDissipation(), getTorsionFrictionCoefficient(), getTorsionFrictionCoefficientStatic(), getTorsionStiffness(), rollingDissipation_, rollingFrictionCoefficient_, rollingFrictionCoefficientStatic_, rollingStiffness_, torsionDissipation_, torsionFrictionCoefficient_, torsionFrictionCoefficientStatic_, and torsionStiffness_.

134 {
145 }
Mdouble getRollingFrictionCoefficient() const
Allows the (dynamic) Coulomb friction coefficient to be accessed.
Mdouble getTorsionFrictionCoefficient() const
Allows the (dynamic) Coulomb torsion friction coefficient to be accessed.
Mdouble rollingStiffness_
rolling stiffness.
Mdouble rollingDissipation_
rolling dissipation coefficient.
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble getTorsionStiffness() const
Allows the torsion stiffness to be accessed.
Mdouble getRollingDissipation() const
Allows the tangential viscosity to be accessed.
Mdouble getRollingFrictionCoefficientStatic() const
Allows the static Coulomb rolling friction coefficient to be accessed.
Mdouble getRollingStiffness() const
Allows the spring constant to be accessed.
Mdouble torsionDissipation_
rolling dissipation coefficient.
static Mdouble averageInf(Mdouble a, Mdouble b)
Returns the harmonic mean of two variables, returning inf if either is inf.
Definition: BaseSpecies.cc:120
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
static Mdouble average(Mdouble a, Mdouble b)
Returns the harmonic mean of two variables.
Definition: BaseSpecies.cc:110
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
Mdouble torsionStiffness_
rolling stiffness.
Mdouble getTorsionDissipation() const
Allows the torsion viscosity to be accessed.
Mdouble getTorsionFrictionCoefficientStatic() const
Allows the static Coulomb torsion friction coefficient to be accessed.
void FrictionSpecies::read ( std::istream &  is)

Reads the species properties from an input stream.

Parameters
[in]isinput stream (typically the restart file)

Definition at line 95 of file FrictionSpecies.cc.

References SlidingFrictionSpecies::read(), rollingDissipation_, rollingFrictionCoefficient_, rollingFrictionCoefficientStatic_, rollingStiffness_, torsionDissipation_, torsionFrictionCoefficient_, torsionFrictionCoefficientStatic_, and torsionStiffness_.

96 {
98  std::string dummy;
99  is >> dummy >> rollingStiffness_;
100  is >> dummy >> rollingDissipation_;
101  is >> dummy >> rollingFrictionCoefficient_;
102  is >> dummy >> rollingFrictionCoefficientStatic_;
103  is >> dummy >> torsionStiffness_;
104  is >> dummy >> torsionDissipation_;
105  is >> dummy >> torsionFrictionCoefficient_;
106  is >> dummy >> torsionFrictionCoefficientStatic_;
107 }
void read(std::istream &is)
Reads the species properties from an input stream.
Mdouble rollingStiffness_
rolling stiffness.
Mdouble rollingDissipation_
rolling dissipation coefficient.
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble torsionDissipation_
rolling dissipation coefficient.
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
Mdouble torsionStiffness_
rolling stiffness.
void FrictionSpecies::setRollingDissipation ( Mdouble  new_dispt)

Allows the tangential viscosity to be changed.

Definition at line 168 of file FrictionSpecies.cc.

References rollingDissipation_.

169 {
170  if (new_dispt >= 0)
171  rollingDissipation_ = new_dispt;
172  else
173  {
174  std::cerr << "Error in setRollingDissipation" << std::endl;
175  exit(-1);
176  }
177 }
Mdouble rollingDissipation_
rolling dissipation coefficient.
void FrictionSpecies::setRollingFrictionCoefficient ( Mdouble  new_mu)

Allows the (dynamic) Coulomb friction coefficient to be changed; also sets mu_s by default.

Definition at line 187 of file FrictionSpecies.cc.

References ERROR, logger, rollingFrictionCoefficient_, and rollingFrictionCoefficientStatic_.

188 {
189  if (new_mu >= 0)
190  {
193  }
194  else
195  logger(ERROR, "[FrictionSpecies::setRollingFrictionCoefficient(Mdouble)] The coefficient of friction must be nonnegative.");
196 }
Logger< MERCURY_LOGLEVEL > logger("MercuryKernel")
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
void FrictionSpecies::setRollingFrictionCoefficientStatic ( Mdouble  new_mu)

Allows the static Coulomb rolling friction coefficient to be changed.

Allows the static Coulomb friction coefficient to be changed; also sets mu_s by default.

Definition at line 205 of file FrictionSpecies.cc.

References ERROR, logger, and rollingFrictionCoefficientStatic_.

206 {
207  if (new_mu >= 0)
208  {
210  }
211  else
212  logger(ERROR, "[FrictionSpecies::setRollingFrictionCoefficientStatic(Mdouble)] The coefficient of friction must be nonnegative.");
213 }
Logger< MERCURY_LOGLEVEL > logger("MercuryKernel")
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
void FrictionSpecies::setRollingStiffness ( Mdouble  new_kt)

Allows the spring constant to be changed.

Definition at line 148 of file FrictionSpecies.cc.

References rollingStiffness_.

149 {
150  if (new_kt >= 0)
151  {
152  rollingStiffness_ = new_kt;
153  }
154  else
155  {
156  std::cerr << "Error in setRollingStiffness" << std::endl;
157  exit(-1);
158  }
159 }
Mdouble rollingStiffness_
rolling stiffness.
void FrictionSpecies::setTorsionDissipation ( Mdouble  new_dispt)

Allows the torsion viscosity to be changed.

Allows the tangential viscosity to be changed.

Definition at line 243 of file FrictionSpecies.cc.

References torsionDissipation_.

244 {
245  if (new_dispt >= 0)
246  torsionDissipation_ = new_dispt;
247  else
248  {
249  std::cerr << "Error in setTorsionDissipation" << std::endl;
250  exit(-1);
251  }
252 }
Mdouble torsionDissipation_
rolling dissipation coefficient.
void FrictionSpecies::setTorsionFrictionCoefficient ( Mdouble  new_mu)

Allows the (dynamic) Coulomb torsion friction coefficient to be changed; also sets mu_s by default.

Allows the (dynamic) Coulomb friction coefficient to be changed; also sets mu_s by default.

Definition at line 262 of file FrictionSpecies.cc.

References torsionFrictionCoefficient_, and torsionFrictionCoefficientStatic_.

263 {
264  if (new_mu >= 0)
265  {
268  }
269  else
270  {
271  std::cerr << "Error in setSlidingFrictionCoefficient" << std::endl;
272  exit(-1);
273  }
274 }
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
void FrictionSpecies::setTorsionFrictionCoefficientStatic ( Mdouble  new_mu)

Allows the static Coulomb torsion friction coefficient to be accessed.

Allows the static Coulomb friction coefficient to be changed; also sets mu_s by default.

Definition at line 283 of file FrictionSpecies.cc.

References torsionFrictionCoefficientStatic_.

284 {
285  if (new_mu >= 0)
286  {
288  }
289  else
290  {
291  std::cerr << "Error in setSlidingFrictionCoefficientStatic" << std::endl;
292  exit(-1);
293  }
294 }
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
void FrictionSpecies::setTorsionStiffness ( Mdouble  new_kt)

Allows the torsion stiffness to be changed.

Allows the spring constant to be changed.

Definition at line 223 of file FrictionSpecies.cc.

References torsionStiffness_.

224 {
225  if (new_kt >= 0)
226  {
227  torsionStiffness_ = new_kt;
228  }
229  else
230  {
231  std::cerr << "Error in setTorsionStiffness" << std::endl;
232  exit(-1);
233  }
234 }
Mdouble torsionStiffness_
rolling stiffness.
void FrictionSpecies::write ( std::ostream &  os) const

Writes the species properties to an output stream.

Parameters
[out]osoutput stream (typically the restart file)

Definition at line 79 of file FrictionSpecies.cc.

References rollingDissipation_, rollingFrictionCoefficient_, rollingFrictionCoefficientStatic_, rollingStiffness_, torsionDissipation_, torsionFrictionCoefficient_, torsionFrictionCoefficientStatic_, torsionStiffness_, and SlidingFrictionSpecies::write().

80 {
82  os << " rollingStiffness " << rollingStiffness_;
83  os << " rollingDissipation " << rollingDissipation_;
84  os << " rollingFrictionCoefficient " << rollingFrictionCoefficient_;
85  os << " rollingFrictionCoefficientStatic " << rollingFrictionCoefficientStatic_;
86  os << " torsionStiffness " << torsionStiffness_;
87  os << " torsionDissipation " << torsionDissipation_;
88  os << " torsionFrictionCoefficient " << torsionFrictionCoefficient_;
89  os << " torsionFrictionCoefficientStatic " << torsionFrictionCoefficientStatic_;
90 }
Mdouble rollingStiffness_
rolling stiffness.
Mdouble rollingDissipation_
rolling dissipation coefficient.
Mdouble rollingFrictionCoefficientStatic_
static Coulomb rolling friction coefficient (by default set equal to the dynamic one).
Mdouble torsionDissipation_
rolling dissipation coefficient.
Mdouble torsionFrictionCoefficient_
(dynamic) Coulomb torsion friction coefficient.
Mdouble rollingFrictionCoefficient_
(dynamic) Coulomb rolling friction coefficient.
void write(std::ostream &os) const
Writes the species properties to an output stream.
Mdouble torsionFrictionCoefficientStatic_
static Coulomb torsion friction coefficient (by default set equal to the dynamic one).
Mdouble torsionStiffness_
rolling stiffness.

Member Data Documentation

Mdouble FrictionSpecies::rollingDissipation_
private

rolling dissipation coefficient.

Typically set to 2/5 of the normal force dissipation, as both the tangential and the normal spring have the same restitution coefficients (if the rolling and normal stiffnesses also have a ratio of 2/5).

Definition at line 137 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getRollingDissipation(), mix(), read(), setRollingDissipation(), and write().

Mdouble FrictionSpecies::rollingFrictionCoefficient_
private

(dynamic) Coulomb rolling friction coefficient.

Definition at line 143 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getRollingFrictionCoefficient(), mix(), read(), setRollingFrictionCoefficient(), and write().

Mdouble FrictionSpecies::rollingFrictionCoefficientStatic_
private

static Coulomb rolling friction coefficient (by default set equal to the dynamic one).

Definition at line 149 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getRollingFrictionCoefficientStatic(), mix(), read(), setRollingFrictionCoefficient(), setRollingFrictionCoefficientStatic(), and write().

Mdouble FrictionSpecies::rollingStiffness_
private

rolling stiffness.

Typically set to 2/5 of the stiffness of the normal force, as both the rolling and the normal spring have the same oscillation frequency (and thus require the same timeStep)in this case.

Definition at line 129 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getRollingStiffness(), mix(), read(), setRollingStiffness(), and write().

Mdouble FrictionSpecies::torsionDissipation_
private

rolling dissipation coefficient.

Typically set to 2/5 of the normal force dissipation, as both the tangential and the normal spring have the same restitution coefficients (if the rolling and normal stiffnesses also have a ratio of 2/5).

Definition at line 165 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getTorsionDissipation(), mix(), read(), setTorsionDissipation(), and write().

Mdouble FrictionSpecies::torsionFrictionCoefficient_
private

(dynamic) Coulomb torsion friction coefficient.

Definition at line 170 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getTorsionFrictionCoefficient(), mix(), read(), setTorsionFrictionCoefficient(), and write().

Mdouble FrictionSpecies::torsionFrictionCoefficientStatic_
private

static Coulomb torsion friction coefficient (by default set equal to the dynamic one).

Definition at line 176 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getTorsionFrictionCoefficientStatic(), mix(), read(), setTorsionFrictionCoefficient(), setTorsionFrictionCoefficientStatic(), and write().

Mdouble FrictionSpecies::torsionStiffness_
private

rolling stiffness.

Typically set to 2/5 of the stiffness of the normal force, as both the rolling and the normal spring have the same oscillation frequency (and thus require the same timeStep)in this case.

Definition at line 157 of file FrictionSpecies.h.

Referenced by FrictionSpecies(), getTorsionStiffness(), mix(), read(), setTorsionStiffness(), and write().


The documentation for this class was generated from the following files: