26 #ifndef SLIDINGFRICTIONINTERACTION_H
27 #define SLIDINGFRICTIONINTERACTION_H
66 void read(std::istream& is);
70 void write(std::ostream& os)
const;
void rotateHistory(Matrix3D &rotationMatrix)
When periodic particles are used, some interactions need certain history properties rotated (e...
void write(std::ostream &os) const
Interaction write function, which accepts an std::ostream as input.
Vec3D slidingSpringVelocity_
Stores the rate at which the sliding spring compressed or relaxed. Set in the member function compute...
void reverseHistory()
A useful feature if one wants to return to the initial state of the spring. However, reverse history decrements the current state to the state corresponding to previous time step. Decrements the value of slidingSpring_.
SlidingFrictionInteraction(BaseInteractable *P, BaseInteractable *I, Mdouble timeStamp)
Constructor.
Computes the forces corresponding to sliding friction.
virtual ~SlidingFrictionInteraction()
Destructor.
void read(std::istream &is)
Interaction read function, which accepts an std::istream as input.
Stores information about interactions between two interactable objects; often particles but could be ...
Vec3D tangentialForce_
Computes the tangential force such that . Set and computed in computeFrictionForce().
void computeFrictionForce()
Computes the tangential force generated due to compression in the sliding spring. Does take into acco...
const SlidingFrictionSpecies * getSpecies() const
Returns a const pointer of type SlidingFrictionSpecies*.
Vec3D slidingSpring_
Stores the amount of sliding spring ( ) compression from the expression . Set in the member function ...
void integrate(Mdouble timeStep)
Increments the amount of compression in sliding spring.
Mdouble getTangentialOverlap() const
Returns the amount of tangential overlap which is needed by BaseInteraction::writeToFstat().
std::string getBaseName() const
Returns the type/name of interaction (sliding friction interaction)
SlidingFrictionSpecies contains the parameters used to describe sliding friction. ...
SlidingFrictionSpecies SpeciesType
An alias name for SlidingFrictionSpecies data type.
Mdouble getElasticEnergy() const
Returns the amount of elastic energy stored in sliding spring.
Defines the basic properties that a interactable object can have.
const Vec3D getTangentialForce() const
Returns the sliding friction force vector.
Implementation of a 3D matrix.
Implementation of a 3D vector (by Vitaliy).