13#ifndef CD_ITOPARTICLEIMPLEM_H
14#define CD_ITOPARTICLEIMPLEM_H
24#include <CD_NamespaceHeader.H>
202 detail::pushParticleProperty(p, this->
weight());
204 detail::pushParticleProperty(p, this->
m_position[0]);
205 detail::pushParticleProperty(p, this->
m_position[1]);
207 detail::pushParticleProperty(p, this->
m_position[2]);
210 detail::pushParticleProperty(p, this->
velocity()[0]);
211 detail::pushParticleProperty(p, this->
velocity()[1]);
213 detail::pushParticleProperty(p, this->
velocity()[2]);
222 detail::pullParticleProperty(p, this->
weight());
224 detail::pullParticleProperty(p, this->
m_position[0]);
225 detail::pullParticleProperty(p, this->
m_position[1]);
227 detail::pullParticleProperty(p, this->
m_position[2]);
230 detail::pullParticleProperty(p, this->
velocity()[0]);
231 detail::pullParticleProperty(p, this->
velocity()[1]);
233 detail::pullParticleProperty(p, this->
velocity()[2]);
237#include <CD_NamespaceFooter.H>
Implementation of CD_ItoParticle.H.
Declaration of a particle class for Ito diffusion.
RealVect & position()
Get the particle position.
Definition CD_GenericParticleImplem.H:45
virtual int size() const
Returns the size, in number of bytes, of a flat representation of the data in this object.
Definition CD_GenericParticleImplem.H:191
RealVect m_position
Particle position.
Definition CD_GenericParticle.H:294
A particle class for use with ItoSolvers, i.e. drifting Brownian walkers.
Definition CD_ItoParticle.H:41
Real & energy()
Get average particle energy.
Definition CD_ItoParticleImplem.H:108
virtual void H5linearOut(void *const a_buffer) const
Linearize the checkpointed Real components onto a buffer workable by HDF5.
Definition CD_ItoParticleImplem.H:198
virtual void H5linearIn(const void *const a_buffer)
Delinearize the buffer onto the checkpointed real components in the particle class.
Definition CD_ItoParticleImplem.H:218
Real conductivity() const
Get the particle conductivity.
Definition CD_ItoParticleImplem.H:144
virtual ~ItoParticle()
Destructor (deallocates runtime memory storage)
Definition CD_ItoParticleImplem.H:52
Real & diffusion()
Get particle diffusion coefficient.
Definition CD_ItoParticleImplem.H:96
ItoParticle()
Default constructor – user should subsequently set the variables or call define.
Definition CD_ItoParticleImplem.H:26
Real & mobility()
Get mobility coefficient.
Definition CD_ItoParticleImplem.H:84
RealVect & oldPosition()
Get the old particle position.
Definition CD_ItoParticleImplem.H:120
RealVect & tmpVect()
Return scratch RealVect storage.
Definition CD_ItoParticleImplem.H:174
void define(const Real a_weight, const RealVect &a_position, const RealVect &a_velocity=RealVect::Zero, const Real a_diffusion=0.0, const Real a_mobility=1.0, const Real a_energy=0.0)
Full define function.
Definition CD_ItoParticleImplem.H:56
Real diffusivity() const
Get the particle diffusivity.
Definition CD_ItoParticleImplem.H:150
virtual int H5size() const
Function that is used when writing particles to HDF5.
Definition CD_ItoParticleImplem.H:186
Real totalEnergy() const
Get the total energy.
Definition CD_ItoParticleImplem.H:156
Real & weight()
Get particle weight.
Definition CD_ItoParticleImplem.H:72
RealVect & velocity()
Get the particle velocity.
Definition CD_ItoParticleImplem.H:132
Real & tmpReal()
Return scratch scalar storage.
Definition CD_ItoParticleImplem.H:162
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:38
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:26