12#ifndef CD_ItoParticleImplem_H
13#define CD_ItoParticleImplem_H
23#include <CD_NamespaceHeader.H>
201 detail::pushParticleProperty(p, this->
weight());
203 detail::pushParticleProperty(p, this->
m_position[0]);
204 detail::pushParticleProperty(p, this->
m_position[1]);
206 detail::pushParticleProperty(p, this->
m_position[2]);
209 detail::pushParticleProperty(p, this->
velocity()[0]);
210 detail::pushParticleProperty(p, this->
velocity()[1]);
212 detail::pushParticleProperty(p, this->
velocity()[2]);
221 detail::pullParticleProperty(p, this->
weight());
223 detail::pullParticleProperty(p, this->
m_position[0]);
224 detail::pullParticleProperty(p, this->
m_position[1]);
226 detail::pullParticleProperty(p, this->
m_position[2]);
229 detail::pullParticleProperty(p, this->
velocity()[0]);
230 detail::pullParticleProperty(p, this->
velocity()[1]);
232 detail::pullParticleProperty(p, this->
velocity()[2]);
236#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:49
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:195
RealVect m_position
Particle position.
Definition CD_GenericParticle.H:283
A particle class for use with ItoSolvers, i.e. drifting Brownian walkers.
Definition CD_ItoParticle.H:40
Real & energy()
Get average particle energy.
Definition CD_ItoParticleImplem.H:107
virtual void H5linearOut(void *const a_buffer) const
Linearize the checkpointed Real components onto a buffer workable by HDF5.
Definition CD_ItoParticleImplem.H:197
virtual void H5linearIn(const void *const a_buffer)
Delinearize the buffer onto the checkpointed real components in the particle class.
Definition CD_ItoParticleImplem.H:217
Real conductivity() const
Get the particle conductivity.
Definition CD_ItoParticleImplem.H:143
virtual ~ItoParticle()
Destructor (deallocates runtime memory storage)
Definition CD_ItoParticleImplem.H:51
Real & diffusion()
Get particle diffusion coefficient.
Definition CD_ItoParticleImplem.H:95
ItoParticle()
Default constructor – user should subsequently set the variables or call define.
Definition CD_ItoParticleImplem.H:25
Real & mobility()
Get mobility coefficient.
Definition CD_ItoParticleImplem.H:83
RealVect & oldPosition()
Get the old particle position.
Definition CD_ItoParticleImplem.H:119
RealVect & tmpVect()
Return scratch RealVect storage.
Definition CD_ItoParticleImplem.H:173
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:55
Real diffusivity() const
Get the particle diffusivity.
Definition CD_ItoParticleImplem.H:149
virtual int H5size() const
Function that is used when writing particles to HDF5.
Definition CD_ItoParticleImplem.H:185
Real totalEnergy() const
Get the total energy.
Definition CD_ItoParticleImplem.H:155
Real & weight()
Get particle weight.
Definition CD_ItoParticleImplem.H:71
RealVect & velocity()
Get the particle velocity.
Definition CD_ItoParticleImplem.H:131
Real & tmpReal()
Return scratch scalar storage.
Definition CD_ItoParticleImplem.H:161
Base class for a tracer particle solver. This solver can advance particles in a pre-defined velocity ...
Definition CD_TracerParticleSolver.H:37
TracerParticleSolver()
Default constructor.
Definition CD_TracerParticleSolverImplem.H:25