MercuryDPM
Alpha
|
ChargedBondedSpecies contains the parameters used to describe a linear reversible short-range force. More...
#include <ChargedBondedSpecies.h>
Public Types | |
typedef ChargedBondedInteraction | InteractionType |
The correct Interaction type for this AdhesiveForceSpecies. More... | |
Public Member Functions | |
ChargedBondedSpecies () | |
The default constructor. More... | |
ChargedBondedSpecies (const ChargedBondedSpecies &s) | |
The default constructor. More... | |
virtual | ~ChargedBondedSpecies () |
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 (ChargedBondedSpecies *const S, ChargedBondedSpecies *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 | setAdhesionStiffness (Mdouble new_k0) |
Allows the spring constant to be changed. More... | |
Mdouble | getAdhesionStiffness () const |
Allows the spring constant to be accessed. More... | |
void | setAdhesionForceMax (Mdouble new_f0) |
Allows the spring constant to be changed. More... | |
Mdouble | getAdhesionForceMax () const |
Allows the spring constant to be accessed. More... | |
int | getCharge () const |
void | setCharge (int newCharge) |
void | setBondForceMax (Mdouble new_f0) |
Allows the spring constant for the BOND to be changed (Do not confuse with the charged interaction strength!) More... | |
Mdouble | getBondForceMax () const |
Allows the maximal force for 'bonding' particles together to be accessed. More... | |
void | setBondDissipation (Mdouble disp) |
Allows the additional dissipation used to damp oscillations between bondd particles to be changed. More... | |
Mdouble | getBondDissipation () const |
Allows the additional dissipation used to damp oscillations between bondd particles to be accessed. More... | |
Mdouble | getVanDerWaalsStiffness () const |
Mdouble | getVanDerWaalsForceMax () const |
void | setVanDerWaalsStiffness (Mdouble) |
void | setVanDerWaalsForceMax (Mdouble) |
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 | adhesionStiffness_ |
stiffness of linear adhesion force More... | |
Mdouble | adhesionForceMax_ |
adhesion force at zero overlap More... | |
int | charge_ |
Mdouble | bondForceMax_ |
The maximal force which acts to bind together particles which are "bondd" into a single body. More... | |
Mdouble | bondDissipation_ |
dissipation in bond More... | |
Mdouble | vanDerWaalsForceMax_ |
Mdouble | vanDerWaalsStiffness_ |
ChargedBondedSpecies contains the parameters used to describe a linear reversible short-range force.
See ChargedBondedInteraction::computeForce for a description of the force law.
Definition at line 36 of file ChargedBondedSpecies.h.
The correct Interaction type for this AdhesiveForceSpecies.
Definition at line 40 of file ChargedBondedSpecies.h.
ChargedBondedSpecies::ChargedBondedSpecies | ( | ) |
The default constructor.
Default constructor for charged species. Sets default values for all relevant parameters. Note: if the stiffness of particles is left as zero, no force will be felt during interaction with other particles
[in] | s | the species that is copied |
Definition at line 35 of file ChargedBondedSpecies.cc.
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
ChargedBondedSpecies::ChargedBondedSpecies | ( | const ChargedBondedSpecies & | s | ) |
The default constructor.
Copy constructor for charged species
[in] | s | the species that is copied |
Definition at line 58 of file ChargedBondedSpecies.cc.
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
|
virtual |
The default constructor.
Definition at line 72 of file ChargedBondedSpecies.cc.
Mdouble ChargedBondedSpecies::getAdhesionForceMax | ( | ) | const |
Allows the spring constant to be accessed.
Definition at line 185 of file ChargedBondedSpecies.cc.
References adhesionForceMax_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
Mdouble ChargedBondedSpecies::getAdhesionStiffness | ( | ) | const |
Allows the spring constant to be accessed.
Definition at line 168 of file ChargedBondedSpecies.cc.
References adhesionStiffness_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
std::string ChargedBondedSpecies::getBaseName | ( | ) | const |
Used in Species::getName to obtain a unique name for each Species.
Returns the name of thebcurrent species
Definition at line 114 of file ChargedBondedSpecies.cc.
Mdouble ChargedBondedSpecies::getBondDissipation | ( | ) | const |
Allows the additional dissipation used to damp oscillations between bondd particles to be accessed.
Allows the value of the dissipation between bondd particles to be accessed.
This can be used to eliminate oscillations which may arise due to the forces holding the particles together competing with the usual forces which act to push particles in contact apart!
Definition at line 249 of file ChargedBondedSpecies.cc.
References bondDissipation_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), and mix().
Mdouble ChargedBondedSpecies::getBondForceMax | ( | ) | const |
Allows the maximal force for 'bonding' particles together to be accessed.
Allows the the maximal force of the 'bond' used to bond particles together to be accessed.
Definition at line 228 of file ChargedBondedSpecies.cc.
References bondForceMax_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
int ChargedBondedSpecies::getCharge | ( | ) | const |
|
virtual |
returns the largest separation distance at which adhesive short-range forces can occur.
Implements BaseSpecies.
Definition at line 145 of file ChargedBondedSpecies.cc.
References adhesionForceMax_, and adhesionStiffness_.
Referenced by ChargedBondedInteraction::getElasticEnergy().
Mdouble ChargedBondedSpecies::getVanDerWaalsForceMax | ( | ) | const |
Definition at line 276 of file ChargedBondedSpecies.cc.
References vanDerWaalsForceMax_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
Mdouble ChargedBondedSpecies::getVanDerWaalsStiffness | ( | ) | const |
Definition at line 289 of file ChargedBondedSpecies.cc.
References vanDerWaalsStiffness_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
void ChargedBondedSpecies::mix | ( | ChargedBondedSpecies *const | S, |
ChargedBondedSpecies *const | T | ||
) |
creates default values for mixed species
Calling this function acts to assign values of maximum adhesion force and stiffness for mixed species interactions. 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 127 of file ChargedBondedSpecies.cc.
References adhesionForceMax_, adhesionStiffness_, BaseSpecies::average(), bondDissipation_, bondForceMax_, charge_, getAdhesionForceMax(), getAdhesionStiffness(), getBondDissipation(), getBondForceMax(), getVanDerWaalsForceMax(), getVanDerWaalsStiffness(), vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
|
virtual |
Reads the species properties from an input stream.
[in] | is | input stream (typically the restart file) |
Implements BaseObject.
Definition at line 96 of file ChargedBondedSpecies.cc.
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, INFO, logger, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
void ChargedBondedSpecies::setAdhesionForceMax | ( | Mdouble | new_f0 | ) |
Allows the spring constant to be changed.
Definition at line 174 of file ChargedBondedSpecies.cc.
References adhesionForceMax_.
void ChargedBondedSpecies::setAdhesionStiffness | ( | Mdouble | new_k0 | ) |
Allows the spring constant to be changed.
Definition at line 157 of file ChargedBondedSpecies.cc.
References adhesionStiffness_.
void ChargedBondedSpecies::setBondDissipation | ( | Mdouble | disp | ) |
Allows the additional dissipation used to damp oscillations between bondd particles to be changed.
Allows the value of the dissipation between bondd particles to be changed.
This can be used to eliminate oscillations which may arise due to the forces holding the particles together competing with the usual forces which act to push particles in contact apart!
Definition at line 236 of file ChargedBondedSpecies.cc.
References bondDissipation_.
void ChargedBondedSpecies::setBondForceMax | ( | Mdouble | new_f0 | ) |
Allows the spring constant for the BOND to be changed (Do not confuse with the charged interaction strength!)
Allows the spring constant to be changed This means that we can alter the strength with which particles are "bondd" together and, thus, the mean distance by which bondd particles overlap by. As such, we can alter the geometry of multi-particle structures formed.
Definition at line 217 of file ChargedBondedSpecies.cc.
References bondForceMax_.
void ChargedBondedSpecies::setCharge | ( | int | newCharge | ) |
void ChargedBondedSpecies::setVanDerWaalsForceMax | ( | Mdouble | fMax | ) |
Definition at line 264 of file ChargedBondedSpecies.cc.
References vanDerWaalsForceMax_.
void ChargedBondedSpecies::setVanDerWaalsStiffness | ( | Mdouble | stiffness | ) |
Definition at line 283 of file ChargedBondedSpecies.cc.
References vanDerWaalsStiffness_.
|
virtual |
Writes the species properties to an output stream.
[out] | os | output stream (typically the restart file) |
Implements BaseObject.
Definition at line 82 of file ChargedBondedSpecies.cc.
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
|
private |
adhesion force at zero overlap
Definition at line 109 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getAdhesionForceMax(), getInteractionDistance(), mix(), read(), setAdhesionForceMax(), and write().
|
private |
stiffness of linear adhesion force
Definition at line 106 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getAdhesionStiffness(), getInteractionDistance(), mix(), read(), setAdhesionStiffness(), and write().
|
private |
dissipation in bond
the additional dissipation used to 'damp' oscillations between bondd particles
Definition at line 125 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getBondDissipation(), mix(), read(), setBondDissipation(), and write().
|
private |
The maximal force which acts to bind together particles which are "bondd" into a single body.
Definition at line 121 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getBondForceMax(), mix(), read(), setBondForceMax(), and write().
|
private |
Definition at line 114 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getCharge(), mix(), read(), setCharge(), and write().
|
private |
Definition at line 137 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getVanDerWaalsForceMax(), mix(), read(), setVanDerWaalsForceMax(), and write().
|
private |
Definition at line 140 of file ChargedBondedSpecies.h.
Referenced by ChargedBondedSpecies(), getVanDerWaalsStiffness(), mix(), read(), setVanDerWaalsStiffness(), and write().