MercuryDPM
Alpha
|
ParhamiMcMeekingSinterSpecies contains the parameters used to describe a linear reversible short-range force. More...
#include <ParhamiMcMeekingSinterSpecies.h>
Public Types | |
typedef ParhamiMcMeekingSinterInteraction | InteractionType |
The correct Interaction type for this AdhesiveForceSpecies. More... | |
Public Member Functions | |
ParhamiMcMeekingSinterSpecies () | |
The default constructor. More... | |
ParhamiMcMeekingSinterSpecies (const ParhamiMcMeekingSinterSpecies &s) | |
The default constructor. More... | |
virtual | ~ParhamiMcMeekingSinterSpecies () |
The default constructor. 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 |
Used in Species::getName to obtain a unique name for each Species. More... | |
void | mix (ParhamiMcMeekingSinterSpecies *const S, ParhamiMcMeekingSinterSpecies *const T) |
creates default values for mixed species More... | |
Mdouble | getInteractionDistance () const |
returns the largest separation distance at which adhesive short-range forces can occur. More... | |
void | set (Mdouble alpha, Mdouble beta, Mdouble atomicVolume, Mdouble surfaceEnergy, Mdouble thicknessDiffusion, Mdouble activationEnergy, Mdouble temperature, Mdouble pseudoSlidingFrictionCoefficient) |
Mdouble | getViscosityCoefficient () const |
Mdouble | getAdhesionCoefficient () const |
Mdouble | getSlidingFrictionCoefficient () const |
Public Member Functions inherited from BaseSpecies | |
BaseSpecies () | |
The default constructor. More... | |
BaseSpecies (const BaseSpecies &p) | |
The copy constructor. More... | |
virtual | ~BaseSpecies () |
The default destructor. More... | |
virtual BaseSpecies * | copy () const =0 |
Creates a deep copy of the object from which it is called. More... | |
void | setHandler (SpeciesHandler *handler) |
Sets the pointer to the handler to which this species belongs. More... | |
SpeciesHandler * | getHandler () const |
Returns the pointer to the handler to which this species belongs. More... | |
Mdouble | average (Mdouble a, Mdouble b) |
defines the average of two variables by the harmonic mean. More... | |
virtual void | mixAll (BaseSpecies *const S, BaseSpecies *const T)=0 |
creates default values for mixed species More... | |
virtual bool | getUseAngularDOFs () const =0 |
Returns true if torques (i.e. angular degrees of freedom) have to be calculated. More... | |
virtual BaseInteraction * | getNewInteraction (BaseInteractable *P, BaseInteractable *I, Mdouble timeStamp) const =0 |
returns new Interaction object. More... | |
Public Member Functions inherited from BaseObject | |
BaseObject () | |
Default constructor. More... | |
BaseObject (const BaseObject &p) | |
Copy constructor, copies all the objects BaseObject contains. More... | |
virtual | ~BaseObject () |
virtual destructor More... | |
virtual std::string | getName () const =0 |
A purely virtual function. More... | |
virtual void | moveInHandler (const unsigned int index) |
Except that it is virtual, it does the same thing as setIndex() does. More... | |
void | setIndex (const unsigned int index) |
Allows one to assign an index to an object in the handler/container. More... | |
void | setId (const unsigned int id) |
Assigns a unique identifier to each object in the handler (container) which remains constant even after the object is deleted from the container/handler. More... | |
unsigned int | getIndex () const |
Returns the index of the object in the handler. More... | |
unsigned int | getId () const |
Returns the unique identifier of any particular object. More... | |
Private Attributes | |
Mdouble | alpha_ |
viscous force is adhesionCoefficient_*temperature*contactRadius^4*normalRelativeVelocity More... | |
Mdouble | beta_ |
Mdouble | atomicVolume_ |
Mdouble | surfaceEnergy_ |
Mdouble | thicknessDiffusion_ |
Mdouble | activationEnergy_ |
Mdouble | temperature_ |
Mdouble | pseudoSlidingFrictionCoefficient_ |
Mdouble | viscosityCoefficient_ |
viscous force is viscosityCoefficient_*contactRadius^4*normalRelativeVelocity More... | |
Mdouble | adhesionCoefficient_ |
adhesion force is adhesionCoefficient_*radius More... | |
Mdouble | slidingFrictionCoefficient_ |
tangential force is slidingFrictionCoefficient_*contactRadius^2*radius*tangentialRelativeVelocity More... | |
ParhamiMcMeekingSinterSpecies contains the parameters used to describe a linear reversible short-range force.
See ParhamiMcMeekingSinterInteraction::computeForce for a description of the force law.
Definition at line 36 of file ParhamiMcMeekingSinterSpecies.h.
The correct Interaction type for this AdhesiveForceSpecies.
Definition at line 40 of file ParhamiMcMeekingSinterSpecies.h.
ParhamiMcMeekingSinterSpecies::ParhamiMcMeekingSinterSpecies | ( | ) |
The default constructor.
Definition at line 30 of file ParhamiMcMeekingSinterSpecies.cc.
ParhamiMcMeekingSinterSpecies::ParhamiMcMeekingSinterSpecies | ( | const ParhamiMcMeekingSinterSpecies & | s | ) |
The default constructor.
[in] | s | the species that is copied |
Definition at line 42 of file ParhamiMcMeekingSinterSpecies.cc.
References activationEnergy_, adhesionCoefficient_, alpha_, atomicVolume_, beta_, pseudoSlidingFrictionCoefficient_, slidingFrictionCoefficient_, surfaceEnergy_, temperature_, thicknessDiffusion_, and viscosityCoefficient_.
|
virtual |
The default constructor.
Definition at line 60 of file ParhamiMcMeekingSinterSpecies.cc.
|
inline |
Definition at line 92 of file ParhamiMcMeekingSinterSpecies.h.
References adhesionCoefficient_.
Referenced by ParhamiMcMeekingSinterInteraction::computeAdhesionForce().
std::string ParhamiMcMeekingSinterSpecies::getBaseName | ( | ) | const |
Used in Species::getName to obtain a unique name for each Species.
Definition at line 89 of file ParhamiMcMeekingSinterSpecies.cc.
|
virtual |
returns the largest separation distance at which adhesive short-range forces can occur.
Implements BaseSpecies.
Definition at line 106 of file ParhamiMcMeekingSinterSpecies.cc.
|
inline |
Definition at line 93 of file ParhamiMcMeekingSinterSpecies.h.
References slidingFrictionCoefficient_.
Referenced by ParhamiMcMeekingSinterInteraction::computeAdhesionForce().
|
inline |
Definition at line 91 of file ParhamiMcMeekingSinterSpecies.h.
References viscosityCoefficient_.
Referenced by ParhamiMcMeekingSinterInteraction::computeAdhesionForce().
void ParhamiMcMeekingSinterSpecies::mix | ( | ParhamiMcMeekingSinterSpecies *const | S, |
ParhamiMcMeekingSinterSpecies *const | 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.
[in] | S,T | the two species whose properties are mixed to create the new species |
Definition at line 99 of file ParhamiMcMeekingSinterSpecies.cc.
|
virtual |
Reads the species properties from an input stream.
[in] | is | input stream (typically the restart file) |
Implements BaseObject.
Definition at line 79 of file ParhamiMcMeekingSinterSpecies.cc.
|
inline |
Definition at line 69 of file ParhamiMcMeekingSinterSpecies.h.
References activationEnergy_, adhesionCoefficient_, alpha_, atomicVolume_, beta_, mathsFunc::exp(), constants::pi, pseudoSlidingFrictionCoefficient_, slidingFrictionCoefficient_, surfaceEnergy_, temperature_, thicknessDiffusion_, and viscosityCoefficient_.
|
virtual |
Writes the species properties to an output stream.
[out] | os | output stream (typically the restart file) |
Implements BaseObject.
Definition at line 70 of file ParhamiMcMeekingSinterSpecies.cc.
|
private |
Definition at line 103 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
adhesion force is adhesionCoefficient_*radius
Definition at line 111 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by getAdhesionCoefficient(), ParhamiMcMeekingSinterSpecies(), and set().
|
private |
viscous force is adhesionCoefficient_*temperature*contactRadius^4*normalRelativeVelocity
Definition at line 98 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
Definition at line 100 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
Definition at line 99 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
Definition at line 105 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
tangential force is slidingFrictionCoefficient_*contactRadius^2*radius*tangentialRelativeVelocity
Definition at line 114 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by getSlidingFrictionCoefficient(), ParhamiMcMeekingSinterSpecies(), and set().
|
private |
Definition at line 101 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
Definition at line 104 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
Definition at line 102 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by ParhamiMcMeekingSinterSpecies(), and set().
|
private |
viscous force is viscosityCoefficient_*contactRadius^4*normalRelativeVelocity
Definition at line 108 of file ParhamiMcMeekingSinterSpecies.h.
Referenced by getViscosityCoefficient(), ParhamiMcMeekingSinterSpecies(), and set().