|
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... | |
~ChargedBondedSpecies ()=default | |
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 *S, ChargedBondedSpecies *T) |
creates default values for mixed species More... | |
void | setInteractionDistance () |
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 BaseForce | |
BaseSpecies * | getBaseSpecies () const |
void | setBaseSpecies (BaseSpecies *baseSpecies) |
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.
The correct Interaction type for this AdhesiveForceSpecies.
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 |
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 |
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
|
default |
The default constructor.
Mdouble ChargedBondedSpecies::getAdhesionForceMax | ( | ) | const |
Allows the spring constant to be accessed.
References adhesionForceMax_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
Mdouble ChargedBondedSpecies::getAdhesionStiffness | ( | ) | const |
Allows the spring constant to be accessed.
References adhesionStiffness_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
std::string ChargedBondedSpecies::getBaseName | ( | ) | const |
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!
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.
References bondForceMax_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
Mdouble ChargedBondedSpecies::getVanDerWaalsForceMax | ( | ) | const |
References vanDerWaalsForceMax_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
Mdouble ChargedBondedSpecies::getVanDerWaalsStiffness | ( | ) | const |
References vanDerWaalsStiffness_.
Referenced by ChargedBondedInteraction::computeAdhesionForce(), ChargedBondedInteraction::getElasticEnergy(), and mix().
void ChargedBondedSpecies::mix | ( | ChargedBondedSpecies * | S, |
ChargedBondedSpecies * | 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 |
References BaseSpecies::average(), bondDissipation_, bondForceMax_, charge_, getAdhesionForceMax(), getAdhesionStiffness(), getBondDissipation(), getBondForceMax(), getVanDerWaalsForceMax(), getVanDerWaalsStiffness(), setAdhesionForceMax(), setAdhesionStiffness(), vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
void ChargedBondedSpecies::read | ( | std::istream & | is | ) |
Reads the species properties from an input stream.
[in] | is | input stream (typically the restart file) |
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
void ChargedBondedSpecies::setAdhesionForceMax | ( | Mdouble | new_f0 | ) |
Allows the spring constant to be changed.
References adhesionForceMax_, ERROR, logger, and setInteractionDistance().
Referenced by mix().
void ChargedBondedSpecies::setAdhesionStiffness | ( | Mdouble | new_k0 | ) |
Allows the spring constant to be changed.
References adhesionStiffness_, ERROR, logger, and setInteractionDistance().
Referenced by mix().
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!
References bondDissipation_, ERROR, and logger.
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.
References bondForceMax_, ERROR, and logger.
void ChargedBondedSpecies::setCharge | ( | int | newCharge | ) |
void ChargedBondedSpecies::setInteractionDistance | ( | ) |
returns the largest separation distance at which adhesive short-range forces can occur.
References adhesionForceMax_, adhesionStiffness_, BaseForce::getBaseSpecies(), logger, and BaseSpecies::setInteractionDistance().
Referenced by setAdhesionForceMax(), and setAdhesionStiffness().
void ChargedBondedSpecies::setVanDerWaalsForceMax | ( | Mdouble | fMax | ) |
References ERROR, logger, and vanDerWaalsForceMax_.
void ChargedBondedSpecies::setVanDerWaalsStiffness | ( | Mdouble | stiffness | ) |
References vanDerWaalsStiffness_.
void ChargedBondedSpecies::write | ( | std::ostream & | os | ) | const |
Writes the species properties to an output stream.
[out] | os | output stream (typically the restart file) |
References adhesionForceMax_, adhesionStiffness_, bondDissipation_, bondForceMax_, charge_, vanDerWaalsForceMax_, and vanDerWaalsStiffness_.
|
private |
adhesion force at zero overlap
Referenced by ChargedBondedSpecies(), getAdhesionForceMax(), read(), setAdhesionForceMax(), setInteractionDistance(), and write().
|
private |
stiffness of linear adhesion force
Referenced by ChargedBondedSpecies(), getAdhesionStiffness(), read(), setAdhesionStiffness(), setInteractionDistance(), and write().
|
private |
dissipation in bond
the additional dissipation used to 'damp' oscillations between bondd particles
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.
Referenced by ChargedBondedSpecies(), getBondForceMax(), mix(), read(), setBondForceMax(), and write().
|
private |
Referenced by ChargedBondedSpecies(), getCharge(), mix(), read(), setCharge(), and write().
|
private |
Referenced by ChargedBondedSpecies(), getVanDerWaalsForceMax(), mix(), read(), setVanDerWaalsForceMax(), and write().
|
private |
Referenced by ChargedBondedSpecies(), getVanDerWaalsStiffness(), mix(), read(), setVanDerWaalsStiffness(), and write().