ESyS-Particle  4.0.1
Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
CRotThermParticle Class Reference

#include <RotThermParticle.h>

Inheritance diagram for CRotThermParticle:
Inheritance graph
[legend]
Collaboration diagram for CRotThermParticle:
Collaboration graph
[legend]

Classes

class  exchangeType

Public Types

typedef double(CRotThermParticle::* ScalarFieldFunction )() const
typedef Vec3(CRotThermParticle::* VectorFieldFunction )() const
- Public Types inherited from CRotParticleVi
typedef double(CRotParticleVi::* ScalarFieldFunction )() const
typedef Vec3(CRotParticleVi::* VectorFieldFunction )() const
- Public Types inherited from CParticle
typedef double(CParticle::* ScalarFieldFunction )() const
typedef Vec3(CParticle::* VectorFieldFunction )() const

Public Member Functions

 CRotThermParticle (const esys::lsm::SimpleParticleData &data)
 CRotThermParticle (const CRotParticleVi &p)
 CRotThermParticle (const CParticle &p)
 CRotThermParticle (double rad, double mass, const Vec3 &pos, const Vec3 &vel, const Vec3 &force, int id, bool is_dyn)
 CRotThermParticle (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, const Vec3 &angvel_t, double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2)
 CRotThermParticle (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, const Vec3 &angvel_t, double temperature, double temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2)
void applyHeatTrans (const double)
void applyHeatFrict (const double)
void integrateTherm (double)
void zeroHeat ()
void thermExpansion ()
void integrate (double)
void setTemperature (double t)
double get_y ()
void setCp (double t)
void setThermExpansion0 (double t)
void setThermExpansion1 (double t)
void setThermExpansion2 (double t)
void setCircular (const Vec3 &cv)
Vec3 getDisplacement () const
void resetDisplacement ()
void print ()
CRotThermParticle::exchangeType getExchangeValues ()
void setExchangeValues (const CRotThermParticle::exchangeType &e)
template<typename TmplVisitor >
void visit (TmplVisitor &visitor)
- Public Member Functions inherited from CRotParticleVi
 CRotParticleVi (const esys::lsm::SimpleParticleData &particleData)
 CRotParticleVi (double rad, double mass, const Vec3 &pos, const Vec3 &vel, const Vec3 &force, int id, bool is_dyn)
 CRotParticleVi (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, const Vec3 &angvel_t)
 CRotParticleVi (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, const Vec3 &angvel_t)
 CRotParticleVi (const CParticle &p)
const Vec3getAngVel () const
const Vec3 getAngVel_t () const
void setAngVel_t (const Vec3 &v)
Vec3 getAngVelNR () const
void setAngVel (const Vec3 &V)
Quaternion getInitQuat () const
Quaternion getQuat () const
void setQuat (const Quaternion &q)
double getInertRot () const
void setInertRot (double inertRot)
double getInvInertRot () const
Vec3 getMoment () const
void setMoment (const Vec3 &moment)
Vec3 getAngVector () const
void applyMoment (const Vec3 &)
void zeroForce ()
void rescale ()
double getAngularKineticEnergy () const
double getLinearKineticEnergy () const
double getKineticEnergy () const
 move relative to initial position
void writeAsDXLine (ostream &, int slid=0)
virtual void setNonRot ()
Quaternion getQuatFromRotVec (const Vec3 &vec) const
void rotateBy (const Vec3 &vec)
void rotateTo (const Vec3 &vec)
virtual void saveSnapShotData (std::ostream &oStream)
virtual void saveCheckPointData (std::ostream &oStream)
virtual void loadCheckPointData (std::istream &iStream)
void setExchangeValues (const CRotParticleVi::exchangeType &e)
double sigma_xx_2D () const
double sigma_xy_2D () const
double sigma_yy_2D () const
- Public Member Functions inherited from CParticle
 CParticle (double, double, const Vec3 &, const Vec3 &, const Vec3 &, int, bool)
 CParticle (double, double, const Vec3 &, const Vec3 &, const Vec3 &, const Vec3 &, const Vec3 &, int, bool)
 CParticle (const esys::lsm::SimpleParticleData &particleData)
const Vec3getInitPos () const
void setInitPos (const Vec3 &initPos)
Vec3 getTotalDisplacement () const
const Vec3getOldPos () const
Vec3 getVel () const
double getAbsVel () const
void setVel (const Vec3 &V)
void setMass (double mass)
double getMass () const
double getInvMass () const
Vec3 getForce () const
virtual void setDensity (double)
double getIDField () const
double getTagField () const
void applyForce (const Vec3 &, const Vec3 &)
void moveToRel (const Vec3 &v)
virtual void setNonDynamic ()
virtual void setNonDynamicLinear ()
virtual void setNonDynamicRot ()
void setFlag (bool b=true)
bool isFlagged () const
void setExchangeValues (const exchangeType &)
double sigma_d () const
- Public Member Functions inherited from CBasicParticle
 CBasicParticle (const Vec3 &pos, double radius, int id=-1, int tag=-1)
 CBasicParticle (const esys::lsm::SimpleParticleData &data)
Vec3getPPos ()
Vec3 getPos () const
void setPos (const Vec3 &pos)
double getRad () const
int getID () const
void setID (int id)
void moveBy (Vec3 v)
 move relative to current position
void moveTo (Vec3 v)
 move absolute
void setRad (double r)
void setTag (int t)
 particle tag handling
int getTag () const
bool isValid () const
- Public Member Functions inherited from CThermParticle
 CThermParticle (double rad_ini)
 CThermParticle (double temperature, double m_temperature_ini, double Cp, double heat_frict, double heat_trans, double therm_expansion0, double therm_expansion1, double therm_expansion2, double rad_ini)
double getTemperature () const
void setEquilibTemperature (double t)
double getEquilibTemperature () const
void setEquilibRadius (double r)
double getEquilibRadius () const
double getCp () const
double getThermExpansion0 () const
double getThermExpansion1 () const
double getThermExpansion2 () const

Static Public Member Functions

static ScalarFieldFunction getScalarFieldFunction (const string &)
static VectorFieldFunction getVectorFieldFunction (const string &)
static map< string, AField * > generateFields (ParallelParticleArray< CRotThermParticle > *)
static void get_type ()
- Static Public Member Functions inherited from CRotParticleVi
static int getPackSize ()
static map< string, AField * > generateFields (ParallelParticleArray< CRotParticleVi > *)
- Static Public Member Functions inherited from CParticle
static void setDo2dCalculations (bool do2dCalculations)
static bool getDo2dCalculations ()

Friends

class TML_PackedMessageInterface
ostream & operator<< (ostream &, const CRotThermParticle &)

Additional Inherited Members

- Static Public Attributes inherited from CBasicParticle
static const CBasicParticle INVALID = CBasicParticle(Vec3::ZERO, 0.0, -1, -1)
- Protected Member Functions inherited from CParticle
void setForce (const Vec3 &force)
- Protected Attributes inherited from CRotParticleVi
Quaternion m_quat
Quaternion m_initquat
Vec3 m_angVel
Vec3 m_angVel_t
Vec3 m_moment
 Angular velocity at time t.
double m_inertRot
double m_div_inertRot
bool m_is_dynamic
- Protected Attributes inherited from CThermParticle
double m_temperature
double m_temperature_ini
double m_Cp
double m_heat_frict
double m_heat_trans
double m_therm_expansion0
double m_therm_expansion1
double m_therm_expansion2
double m_rad_ini

Detailed Description

Thermal Particle class.

Constructor & Destructor Documentation

CRotThermParticle::CRotThermParticle ( 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,
const Vec3 angvel_t,
double  temperature,
double  temperature_ini,
double  Cp,
double  heat_frict,
double  heat_trans,
double  therm_expansion0,
double  therm_expansion1,
double  therm_expansion2 
)

Construct particle. Old and initial position are assumed to be identical to current position.

Parameters
radradius
massmass
poscurrent position
velcurrent velocity
forcecurrently applied force
idparticle id
quatparticel quaternion
inertRotinert of rotation
momentcurrently applied tarque
angvelcurrent angular velocity

Member Function Documentation

CRotThermParticle::exchangeType CRotThermParticle::getExchangeValues ( )

get values to be exchanged, i.e. pos and vel

Reimplemented from CRotParticleVi.

References CParticle::m_circular_shift, CParticle::m_initpos, and CBasicParticle::m_pos.

CRotThermParticle::ScalarFieldFunction CRotThermParticle::getScalarFieldFunction ( const string &  name)
static

Get the particle member function which returns a scalar field of a given name.

Parameters
namethe name of the field

Reimplemented from CRotParticleVi.

References CRotParticleVi::getKineticEnergy(), and CParticle::sigma_d().

Here is the call graph for this function:

CRotThermParticle::VectorFieldFunction CRotThermParticle::getVectorFieldFunction ( const string &  name)
static

Get the particle member function which returns a vector field of a given name.

Parameters
namethe name of the field

Reimplemented from CRotParticleVi.

void CRotThermParticle::integrate ( double  dt)
virtual

Do the time integration for the particle.

Parameters
dtthe time step

Reimplemented from CRotParticleVi.

void CRotThermParticle::setCircular ( const Vec3 cv)

set circular shift vector

Parameters
cvthe circular shift vector

Reimplemented from CRotParticleVi.

void CRotThermParticle::setExchangeValues ( const CRotThermParticle::exchangeType e)

Set pos, vel and angular vel from exchangeType

Parameters
Ethe exchanged values

References CParticle::m_circular_shift, CParticle::m_initpos, and CBasicParticle::m_pos.

void CRotThermParticle::zeroHeat ( )
virtual

Save check-point data.

Reimplemented from CRotParticleVi.


The documentation for this class was generated from the following files: