|
ESyS-Particle
4.0.1
|
Class for a rotational particle. More...
#include <RotParticle.h>


Classes | |
| class | exchangeType |
Public Types | |
| typedef double(CRotParticle::* | ScalarFieldFunction )() const |
| typedef Vec3(CRotParticle::* | VectorFieldFunction )() const |
Public Member Functions | |
| CRotParticle (const esys::lsm::SimpleParticleData &particleData) | |
| CRotParticle (const CParticle &particle) | |
| CRotParticle (double rad, double mass, const Vec3 &pos, const Vec3 &vel, const Vec3 &force, int id, bool is_dyn, bool is_rot) | |
| CRotParticle (double rad, double mass, const Vec3 &pos, const Vec3 &vel, const Vec3 &force, int id, Quaternion &quat, double inertRot, const Vec3 &moment, const Vec3 &angvel, bool is_dyn, bool is_rot) | |
| CRotParticle (double rad, double mass, const Vec3 &pos, const Vec3 &oldpos, const Vec3 &initpos, const Vec3 &vel, const Vec3 &force, int id, const Quaternion &quat, const Quaternion &initquat, double inertRot, const Vec3 &moment, const Vec3 &angvel, bool is_dyn, bool is_rot) | |
| Vec3 | getDisplacement () const |
| void | resetDisplacement () |
| const Vec3 & | getAngVel () const |
| Vec3 | getAngVelNR () const |
| void | setAngVel (const Vec3 &V) |
| Quaternion | getInitQuat () const |
| Quaternion | getQuat () const |
| void | setQuat (const Quaternion &quat) |
| double | getInertRot () const |
| void | setInertRot (double inertRot) |
| double | getInvInertRot () const |
| Vec3 | getMoment () const |
| void | applyMoment (const Vec3 &) |
| void | integrate (double) |
| void | integrateTherm (double dt) |
| virtual void | thermExpansion () |
| void | zeroForce () |
| virtual void | zeroHeat () |
| void | rescale () |
| void | setCircular (const Vec3 &cv) |
| double | getAngularKineticEnergy () const |
| double | getLinearKineticEnergy () const |
| double | getKineticEnergy () const |
| move relative to initial position | |
| void | writeAsDXLine (ostream &, int slid=0) |
| virtual void | setNonDynamic () |
| virtual void | setNonDynamicLinear () |
| virtual void | setNonDynamicRot () |
| Quaternion | getQuatFromRotVec (const Vec3 &vec) const |
| void | rotateBy (const Vec3 &vec) |
| void | rotateTo (const Vec3 &vec) |
| void | print () |
| virtual void | saveSnapShotData (std::ostream &oStream) |
| virtual void | saveCheckPointData (std::ostream &oStream) |
| virtual void | loadCheckPointData (std::istream &iStream) |
| CRotParticle::exchangeType | getExchangeValues () |
| void | setExchangeValues (const CRotParticle::exchangeType &e) |
| template<typename TmplVisitor > | |
| void | visit (TmplVisitor &visitor) |
| double | sigma_xx_2D () const |
| double | sigma_xy_2D () const |
| double | sigma_yy_2D () const |
Static Public Member Functions | |
| static int | getPackSize () |
| static ScalarFieldFunction | getScalarFieldFunction (const string &) |
| static VectorFieldFunction | getVectorFieldFunction (const string &) |
| static void | get_type () |
Protected Member Functions | |
| void | setMoment (const Vec3 &moment) |
| false if rotational dynamics are switched off | |
Protected Attributes | |
| Quaternion | m_quat |
| Quaternion | m_initquat |
| Vec3 | m_angVel |
| Vec3 | m_moment |
| Angular velocity at time t. | |
| double | m_inertRot |
| double | m_div_inertRot |
| bool | m_is_rot |
Friends | |
| class | TML_PackedMessageInterface |
| ostream & | operator<< (ostream &, const CRotParticle &) |
Class for a rotational particle.
| CRotParticle::CRotParticle | ( | double | rad, |
| double | mass, | ||
| const Vec3 & | pos, | ||
| const Vec3 & | vel, | ||
| const Vec3 & | force, | ||
| int | id, | ||
| bool | is_dyn, | ||
| bool | is_rot | ||
| ) |
Construct particle with default rotational orientation. Inertia is calculated from mass & radius. Used from Python interface.
References m_moment.
| CRotParticle::CRotParticle | ( | double | rad, |
| double | mass, | ||
| const Vec3 & | pos, | ||
| const Vec3 & | vel, | ||
| const Vec3 & | force, | ||
| int | id, | ||
| Quaternion & | quat, | ||
| double | inertRot, | ||
| const Vec3 & | moment, | ||
| const Vec3 & | angvel, | ||
| bool | is_dyn, | ||
| bool | is_rot | ||
| ) |
Construct particle. Old and initial position are assumed to be identical to current position.
| rad | radius |
| mass | mass |
| pos | current position |
| vel | current velocity |
| force | currently applied force |
| id | particle id |
| quat | particel quaternion |
| inertRot | inert of rotation |
| moment | currently applied tarque |
| angvel | current angular velocity |
| is_rot | rotational dynamics on/off |
References CParticle::m_circular_shift, and m_moment.
| void CRotParticle::applyMoment | ( | const Vec3 & | moment | ) | [virtual] |
Apply a moment to a particle at a given position.
| moment | tarque |
Reimplemented from CParticle.
References m_moment.
Referenced by CRotFrictionInteraction::calcRigidBodyForces(), and CRotFrictionInteraction::calcSimpleForces().

get values to be exchanged, i.e. pos and vel
Reimplemented from CParticle.
References CParticle::m_circular_shift, CParticle::m_initpos, and CBasicParticle::m_pos.
| CRotParticle::ScalarFieldFunction CRotParticle::getScalarFieldFunction | ( | const string & | name | ) | [static] |
Get the particle member function which returns a scalar field of a given name.
| name | the name of the field |
Reimplemented from CParticle.
References getKineticEnergy(), and CParticle::sigma_d().

| CRotParticle::VectorFieldFunction CRotParticle::getVectorFieldFunction | ( | const string & | name | ) | [static] |
Get the particle member function which returns a vector field of a given name.
| name | the name of the field |
Reimplemented from CParticle.
| void CRotParticle::integrate | ( | double | dt | ) | [virtual] |
| void CRotParticle::loadCheckPointData | ( | std::istream & | iStream | ) | [virtual] |
load data saved with CRotParticle::saveCheckPointData
| iStream | the input stream |
Reimplemented from CParticle.
| void CRotParticle::saveCheckPointData | ( | std::ostream & | oStream | ) | [virtual] |
Save check-point data sufficient for restart
Reimplemented from CParticle.
| void CRotParticle::saveSnapShotData | ( | std::ostream & | oStream | ) | [virtual] |
Save snapshot data - _not_ neccesarily sufficient for restart
Reimplemented from CParticle.
| void CRotParticle::setCircular | ( | const Vec3 & | cv | ) |
| void CRotParticle::setExchangeValues | ( | const CRotParticle::exchangeType & | e | ) |
Set pos, vel and angular vel from exchangeType
| E | the exchanged values |
References CParticle::m_circular_shift, CParticle::m_initpos, and CBasicParticle::m_pos.
| void CRotParticle::writeAsDXLine | ( | ostream & | ost, |
| int | slid = 0 |
||
| ) |
write particle data as a line in openDX format into a stream(file)
| ost | the output stream |
| slid | from which sublattice the particle is coming |
Reimplemented from CParticle.
| void CRotParticle::zeroForce | ( | ) | [virtual] |
| ostream& operator<< | ( | ostream & | ost, |
| const CRotParticle & | CP | ||
| ) | [friend] |
get deviatoric stress
1.7.6.1