walberla::mesa_pd::data::ParticleStorage Class Reference

#include <ParticleStorage.h>

Classes

class  iterator
 
class  Particle
 

Public Types

using uid_type = walberla::id_t
 
using position_type = walberla::mesa_pd::Vec3
 
using interactionRadius_type = walberla::real_t
 
using flags_type = walberla::mesa_pd::data::particle_flags::FlagT
 
using owner_type = int
 
using ghostOwners_type = std::unordered_set< walberla::mpi::MPIRank >
 
using linearVelocity_type = walberla::mesa_pd::Vec3
 
using invMass_type = walberla::real_t
 
using force_type = walberla::mesa_pd::Vec3
 
using oldForce_type = walberla::mesa_pd::Vec3
 
using shapeID_type = size_t
 
using baseShape_type = std::shared_ptr< walberla::mesa_pd::data::BaseShape >
 
using rotation_type = walberla::mesa_pd::Rot3
 
using angularVelocity_type = walberla::mesa_pd::Vec3
 
using torque_type = walberla::mesa_pd::Vec3
 
using oldTorque_type = walberla::mesa_pd::Vec3
 
using radiusAtTemperature_type = walberla::real_t
 
using currentBlock_type = blockforest::BlockID
 
using type_type = uint_t
 
using nextParticle_type = int
 
using oldContactHistory_type = std::map< walberla::id_t, walberla::mesa_pd::data::ContactHistory >
 
using newContactHistory_type = std::map< walberla::id_t, walberla::mesa_pd::data::ContactHistory >
 
using temperature_type = walberla::real_t
 
using heatFlux_type = walberla::real_t
 
using numContacts_type = uint_t
 
using dv_type = walberla::mesa_pd::Vec3
 
using dw_type = walberla::mesa_pd::Vec3
 
using hydrodynamicForce_type = walberla::mesa_pd::Vec3
 
using hydrodynamicTorque_type = walberla::mesa_pd::Vec3
 
using oldHydrodynamicForce_type = walberla::mesa_pd::Vec3
 
using oldHydrodynamicTorque_type = walberla::mesa_pd::Vec3
 
using virtualMass_type = walberla::real_t
 
using invMassIncludingVirtual_type = walberla::real_t
 
using oldLinearAcceleration_type = walberla::mesa_pd::Vec3
 
using invInertiaBF_type = walberla::mesa_pd::Mat3
 
using virtualInertiaBF_type = walberla::mesa_pd::Mat3
 
using invInertiaBFIncludingVirtual_type = walberla::mesa_pd::Mat3
 
using oldAngularAcceleration_type = walberla::mesa_pd::Vec3
 
using clusterID_type = int64_t
 
using segmentID_type = int64_t
 
using neighborState_type = std::unordered_set< walberla::mpi::MPIRank >
 

Public Member Functions

 ParticleStorage (const size_t size)
 
iterator begin ()
 
iterator end ()
 
Particle operator[] (const size_t n)
 
const uid_typegetUid (const size_t idx) const
 
uid_typegetUidRef (const size_t idx)
 
void setUid (const size_t idx, uid_type const &v)
 
const position_typegetPosition (const size_t idx) const
 
position_typegetPositionRef (const size_t idx)
 
void setPosition (const size_t idx, position_type const &v)
 
const interactionRadius_typegetInteractionRadius (const size_t idx) const
 
interactionRadius_typegetInteractionRadiusRef (const size_t idx)
 
void setInteractionRadius (const size_t idx, interactionRadius_type const &v)
 
const flags_typegetFlags (const size_t idx) const
 
flags_typegetFlagsRef (const size_t idx)
 
void setFlags (const size_t idx, flags_type const &v)
 
const owner_typegetOwner (const size_t idx) const
 
owner_typegetOwnerRef (const size_t idx)
 
void setOwner (const size_t idx, owner_type const &v)
 
const ghostOwners_typegetGhostOwners (const size_t idx) const
 
ghostOwners_typegetGhostOwnersRef (const size_t idx)
 
void setGhostOwners (const size_t idx, ghostOwners_type const &v)
 
const linearVelocity_typegetLinearVelocity (const size_t idx) const
 
linearVelocity_typegetLinearVelocityRef (const size_t idx)
 
void setLinearVelocity (const size_t idx, linearVelocity_type const &v)
 
const invMass_typegetInvMass (const size_t idx) const
 
invMass_typegetInvMassRef (const size_t idx)
 
void setInvMass (const size_t idx, invMass_type const &v)
 
const force_typegetForce (const size_t idx) const
 
force_typegetForceRef (const size_t idx)
 
void setForce (const size_t idx, force_type const &v)
 
const oldForce_typegetOldForce (const size_t idx) const
 
oldForce_typegetOldForceRef (const size_t idx)
 
void setOldForce (const size_t idx, oldForce_type const &v)
 
const shapeID_typegetShapeID (const size_t idx) const
 
shapeID_typegetShapeIDRef (const size_t idx)
 
void setShapeID (const size_t idx, shapeID_type const &v)
 
const baseShape_typegetBaseShape (const size_t idx) const
 
baseShape_typegetBaseShapeRef (const size_t idx)
 
void setBaseShape (const size_t idx, baseShape_type const &v)
 
const rotation_typegetRotation (const size_t idx) const
 
rotation_typegetRotationRef (const size_t idx)
 
void setRotation (const size_t idx, rotation_type const &v)
 
const angularVelocity_typegetAngularVelocity (const size_t idx) const
 
angularVelocity_typegetAngularVelocityRef (const size_t idx)
 
void setAngularVelocity (const size_t idx, angularVelocity_type const &v)
 
const torque_typegetTorque (const size_t idx) const
 
torque_typegetTorqueRef (const size_t idx)
 
void setTorque (const size_t idx, torque_type const &v)
 
const oldTorque_typegetOldTorque (const size_t idx) const
 
oldTorque_typegetOldTorqueRef (const size_t idx)
 
void setOldTorque (const size_t idx, oldTorque_type const &v)
 
const radiusAtTemperature_typegetRadiusAtTemperature (const size_t idx) const
 
radiusAtTemperature_typegetRadiusAtTemperatureRef (const size_t idx)
 
void setRadiusAtTemperature (const size_t idx, radiusAtTemperature_type const &v)
 
const currentBlock_typegetCurrentBlock (const size_t idx) const
 
currentBlock_typegetCurrentBlockRef (const size_t idx)
 
void setCurrentBlock (const size_t idx, currentBlock_type const &v)
 
const type_typegetType (const size_t idx) const
 
type_typegetTypeRef (const size_t idx)
 
void setType (const size_t idx, type_type const &v)
 
const nextParticle_typegetNextParticle (const size_t idx) const
 
nextParticle_typegetNextParticleRef (const size_t idx)
 
void setNextParticle (const size_t idx, nextParticle_type const &v)
 
const oldContactHistory_typegetOldContactHistory (const size_t idx) const
 
oldContactHistory_typegetOldContactHistoryRef (const size_t idx)
 
void setOldContactHistory (const size_t idx, oldContactHistory_type const &v)
 
const newContactHistory_typegetNewContactHistory (const size_t idx) const
 
newContactHistory_typegetNewContactHistoryRef (const size_t idx)
 
void setNewContactHistory (const size_t idx, newContactHistory_type const &v)
 
const temperature_typegetTemperature (const size_t idx) const
 
temperature_typegetTemperatureRef (const size_t idx)
 
void setTemperature (const size_t idx, temperature_type const &v)
 
const heatFlux_typegetHeatFlux (const size_t idx) const
 
heatFlux_typegetHeatFluxRef (const size_t idx)
 
void setHeatFlux (const size_t idx, heatFlux_type const &v)
 
const numContacts_typegetNumContacts (const size_t idx) const
 
numContacts_typegetNumContactsRef (const size_t idx)
 
void setNumContacts (const size_t idx, numContacts_type const &v)
 
const dv_typegetDv (const size_t idx) const
 
dv_typegetDvRef (const size_t idx)
 
void setDv (const size_t idx, dv_type const &v)
 
const dw_typegetDw (const size_t idx) const
 
dw_typegetDwRef (const size_t idx)
 
void setDw (const size_t idx, dw_type const &v)
 
const hydrodynamicForce_typegetHydrodynamicForce (const size_t idx) const
 
hydrodynamicForce_typegetHydrodynamicForceRef (const size_t idx)
 
void setHydrodynamicForce (const size_t idx, hydrodynamicForce_type const &v)
 
const hydrodynamicTorque_typegetHydrodynamicTorque (const size_t idx) const
 
hydrodynamicTorque_typegetHydrodynamicTorqueRef (const size_t idx)
 
void setHydrodynamicTorque (const size_t idx, hydrodynamicTorque_type const &v)
 
const oldHydrodynamicForce_typegetOldHydrodynamicForce (const size_t idx) const
 
oldHydrodynamicForce_typegetOldHydrodynamicForceRef (const size_t idx)
 
void setOldHydrodynamicForce (const size_t idx, oldHydrodynamicForce_type const &v)
 
const oldHydrodynamicTorque_typegetOldHydrodynamicTorque (const size_t idx) const
 
oldHydrodynamicTorque_typegetOldHydrodynamicTorqueRef (const size_t idx)
 
void setOldHydrodynamicTorque (const size_t idx, oldHydrodynamicTorque_type const &v)
 
const virtualMass_typegetVirtualMass (const size_t idx) const
 
virtualMass_typegetVirtualMassRef (const size_t idx)
 
void setVirtualMass (const size_t idx, virtualMass_type const &v)
 
const invMassIncludingVirtual_typegetInvMassIncludingVirtual (const size_t idx) const
 
invMassIncludingVirtual_typegetInvMassIncludingVirtualRef (const size_t idx)
 
void setInvMassIncludingVirtual (const size_t idx, invMassIncludingVirtual_type const &v)
 
const oldLinearAcceleration_typegetOldLinearAcceleration (const size_t idx) const
 
oldLinearAcceleration_typegetOldLinearAccelerationRef (const size_t idx)
 
void setOldLinearAcceleration (const size_t idx, oldLinearAcceleration_type const &v)
 
const invInertiaBF_typegetInvInertiaBF (const size_t idx) const
 
invInertiaBF_typegetInvInertiaBFRef (const size_t idx)
 
void setInvInertiaBF (const size_t idx, invInertiaBF_type const &v)
 
const virtualInertiaBF_typegetVirtualInertiaBF (const size_t idx) const
 
virtualInertiaBF_typegetVirtualInertiaBFRef (const size_t idx)
 
void setVirtualInertiaBF (const size_t idx, virtualInertiaBF_type const &v)
 
const invInertiaBFIncludingVirtual_typegetInvInertiaBFIncludingVirtual (const size_t idx) const
 
invInertiaBFIncludingVirtual_typegetInvInertiaBFIncludingVirtualRef (const size_t idx)
 
void setInvInertiaBFIncludingVirtual (const size_t idx, invInertiaBFIncludingVirtual_type const &v)
 
const oldAngularAcceleration_typegetOldAngularAcceleration (const size_t idx) const
 
oldAngularAcceleration_typegetOldAngularAccelerationRef (const size_t idx)
 
void setOldAngularAcceleration (const size_t idx, oldAngularAcceleration_type const &v)
 
const clusterID_typegetClusterID (const size_t idx) const
 
clusterID_typegetClusterIDRef (const size_t idx)
 
void setClusterID (const size_t idx, clusterID_type const &v)
 
const segmentID_typegetSegmentID (const size_t idx) const
 
segmentID_typegetSegmentIDRef (const size_t idx)
 
void setSegmentID (const size_t idx, segmentID_type const &v)
 
const neighborState_typegetNeighborState (const size_t idx) const
 
neighborState_typegetNeighborStateRef (const size_t idx)
 
void setNeighborState (const size_t idx, neighborState_type const &v)
 
iterator create (const uid_type &uid)
 creates a new particle and returns an iterator pointing to it More...
 
iterator create (const bool global=false)
 
iterator erase (iterator &it)
 
iterator find (const uid_type &uid)
 Finds the entry corresponding to uid. More...
 
void reserve (const size_t size)
 
void clear ()
 
size_t size () const
 
template<class Compare >
void sort (Compare comp)
 
template<typename Selector , typename Accessor , typename Func , typename... Args>
void forEachParticle (const bool openmp, const Selector &selector, Accessor &acForPS, Func &&func, Args &&... args)
 Calls the provided functor func for all Particles. More...
 
template<typename Selector , typename Accessor , typename Func , typename... Args>
void forEachParticle (const bool openmp, const Selector &selector, Accessor &acForPS, Func &&func, Args &&... args) const
 
template<typename Selector , typename Accessor , typename Func , typename... Args>
void forEachParticlePair (const bool openmp, const Selector &selector, Accessor &acForPS, Func &&func, Args &&... args)
 Calls the provided functor func for all Particle pairs. More...
 
template<typename Selector , typename Accessor , typename Func , typename... Args>
void forEachParticlePair (const bool openmp, const Selector &selector, Accessor &acForPS, Func &&func, Args &&... args) const
 
template<typename Selector , typename Accessor , typename Func , typename... Args>
void forEachParticlePairHalf (const bool openmp, const Selector &selector, Accessor &acForPS, Func &&func, Args &&... args)
 Calls the provided functor func for all Particle pairs. More...
 
template<typename Selector , typename Accessor , typename Func , typename... Args>
void forEachParticlePairHalf (const bool openmp, const Selector &selector, Accessor &acForPS, Func &&func, Args &&... args) const
 

Private Attributes

std::vector< uid_typeuid_ {}
 
std::vector< position_typeposition_ {}
 
std::vector< interactionRadius_typeinteractionRadius_ {}
 
std::vector< flags_typeflags_ {}
 
std::vector< owner_typeowner_ {}
 
std::vector< ghostOwners_typeghostOwners_ {}
 
std::vector< linearVelocity_typelinearVelocity_ {}
 
std::vector< invMass_typeinvMass_ {}
 
std::vector< force_typeforce_ {}
 
std::vector< oldForce_typeoldForce_ {}
 
std::vector< shapeID_typeshapeID_ {}
 
std::vector< baseShape_typebaseShape_ {}
 
std::vector< rotation_typerotation_ {}
 
std::vector< angularVelocity_typeangularVelocity_ {}
 
std::vector< torque_typetorque_ {}
 
std::vector< oldTorque_typeoldTorque_ {}
 
std::vector< radiusAtTemperature_typeradiusAtTemperature_ {}
 
std::vector< currentBlock_typecurrentBlock_ {}
 
std::vector< type_typetype_ {}
 
std::vector< nextParticle_typenextParticle_ {}
 
std::vector< oldContactHistory_typeoldContactHistory_ {}
 
std::vector< newContactHistory_typenewContactHistory_ {}
 
std::vector< temperature_typetemperature_ {}
 
std::vector< heatFlux_typeheatFlux_ {}
 
std::vector< numContacts_typenumContacts_ {}
 
std::vector< dv_typedv_ {}
 
std::vector< dw_typedw_ {}
 
std::vector< hydrodynamicForce_typehydrodynamicForce_ {}
 
std::vector< hydrodynamicTorque_typehydrodynamicTorque_ {}
 
std::vector< oldHydrodynamicForce_typeoldHydrodynamicForce_ {}
 
std::vector< oldHydrodynamicTorque_typeoldHydrodynamicTorque_ {}
 
std::vector< virtualMass_typevirtualMass_ {}
 
std::vector< invMassIncludingVirtual_typeinvMassIncludingVirtual_ {}
 
std::vector< oldLinearAcceleration_typeoldLinearAcceleration_ {}
 
std::vector< invInertiaBF_typeinvInertiaBF_ {}
 
std::vector< virtualInertiaBF_typevirtualInertiaBF_ {}
 
std::vector< invInertiaBFIncludingVirtual_typeinvInertiaBFIncludingVirtual_ {}
 
std::vector< oldAngularAcceleration_typeoldAngularAcceleration_ {}
 
std::vector< clusterID_typeclusterID_ {}
 
std::vector< segmentID_typesegmentID_ {}
 
std::vector< neighborState_typeneighborState_ {}
 
std::unordered_map< uid_type, size_tuidToIdx_
 

Member Typedef Documentation

◆ angularVelocity_type

◆ baseShape_type

◆ clusterID_type

◆ currentBlock_type

◆ dv_type

◆ dw_type

◆ flags_type

◆ force_type

◆ ghostOwners_type

using walberla::mesa_pd::data::ParticleStorage::ghostOwners_type = std::unordered_set<walberla::mpi::MPIRank>

◆ heatFlux_type

◆ hydrodynamicForce_type

◆ hydrodynamicTorque_type

◆ interactionRadius_type

◆ invInertiaBF_type

◆ invInertiaBFIncludingVirtual_type

◆ invMass_type

◆ invMassIncludingVirtual_type

◆ linearVelocity_type

◆ neighborState_type

using walberla::mesa_pd::data::ParticleStorage::neighborState_type = std::unordered_set<walberla::mpi::MPIRank>

◆ newContactHistory_type

◆ nextParticle_type

◆ numContacts_type

◆ oldAngularAcceleration_type

◆ oldContactHistory_type

◆ oldForce_type

◆ oldHydrodynamicForce_type

◆ oldHydrodynamicTorque_type

◆ oldLinearAcceleration_type

◆ oldTorque_type

◆ owner_type

◆ position_type

◆ radiusAtTemperature_type

◆ rotation_type

◆ segmentID_type

◆ shapeID_type

◆ temperature_type

◆ torque_type

◆ type_type

◆ uid_type

◆ virtualInertiaBF_type

◆ virtualMass_type

Constructor & Destructor Documentation

◆ ParticleStorage()

walberla::mesa_pd::data::ParticleStorage::ParticleStorage ( const size_t  size)
inlineexplicit

Member Function Documentation

◆ begin()

iterator walberla::mesa_pd::data::ParticleStorage::begin ( )
inline

◆ clear()

void walberla::mesa_pd::data::ParticleStorage::clear ( )
inline

◆ create() [1/2]

ParticleStorage::iterator walberla::mesa_pd::data::ParticleStorage::create ( const bool  global = false)
inline

◆ create() [2/2]

ParticleStorage::iterator walberla::mesa_pd::data::ParticleStorage::create ( const uid_type uid)
inline

creates a new particle and returns an iterator pointing to it

Attention
Use this function only if you know what you are doing! Messing with the uid might break the simulation! If you are unsure use create(bool) instead.
Parameters
uidunique id of the particle to be created
Returns
iterator to the newly created particle

◆ end()

iterator walberla::mesa_pd::data::ParticleStorage::end ( )
inline

◆ erase()

ParticleStorage::iterator walberla::mesa_pd::data::ParticleStorage::erase ( iterator it)
inline

◆ find()

ParticleStorage::iterator walberla::mesa_pd::data::ParticleStorage::find ( const uid_type uid)
inline

Finds the entry corresponding to uid.

Returns
iterator to the object or end iterator

◆ forEachParticle() [1/2]

template<typename Selector , typename Accessor , typename Func , typename... Args>
void walberla::mesa_pd::data::ParticleStorage::forEachParticle ( const bool  openmp,
const Selector &  selector,
Accessor &  acForPS,
Func &&  func,
Args &&...  args 
)
inline

Calls the provided functor func for all Particles.

Additional arguments can be provided. Call syntax for the provided functor

func( *this, i, std::forward<Args>(args)... );
Parameters
openmpenables/disables OpenMP parallelization of the kernel call

◆ forEachParticle() [2/2]

template<typename Selector , typename Accessor , typename Func , typename... Args>
void walberla::mesa_pd::data::ParticleStorage::forEachParticle ( const bool  openmp,
const Selector &  selector,
Accessor &  acForPS,
Func &&  func,
Args &&...  args 
) const
inline

◆ forEachParticlePair() [1/2]

template<typename Selector , typename Accessor , typename Func , typename... Args>
void walberla::mesa_pd::data::ParticleStorage::forEachParticlePair ( const bool  openmp,
const Selector &  selector,
Accessor &  acForPS,
Func &&  func,
Args &&...  args 
)
inline

Calls the provided functor func for all Particle pairs.

Additional arguments can be provided. No pairs with twice the same Particle. Call syntax for the provided functor

func( *this, i, j, std::forward<Args>(args)... );
Parameters
openmpenables/disables OpenMP parallelization of the kernel call

◆ forEachParticlePair() [2/2]

template<typename Selector , typename Accessor , typename Func , typename... Args>
void walberla::mesa_pd::data::ParticleStorage::forEachParticlePair ( const bool  openmp,
const Selector &  selector,
Accessor &  acForPS,
Func &&  func,
Args &&...  args 
) const
inline

◆ forEachParticlePairHalf() [1/2]

template<typename Selector , typename Accessor , typename Func , typename... Args>
void walberla::mesa_pd::data::ParticleStorage::forEachParticlePairHalf ( const bool  openmp,
const Selector &  selector,
Accessor &  acForPS,
Func &&  func,
Args &&...  args 
)
inline

Calls the provided functor func for all Particle pairs.

Additional arguments can be provided. No pairs with twice the same Particle. Index of the first particle i will be always smaller than j! No pair is called twice! Call syntax for the provided functor

func( *this, i, j, std::forward<Args>(args)... );
Parameters
openmpenables/disables OpenMP parallelization of the kernel call

◆ forEachParticlePairHalf() [2/2]

template<typename Selector , typename Accessor , typename Func , typename... Args>
void walberla::mesa_pd::data::ParticleStorage::forEachParticlePairHalf ( const bool  openmp,
const Selector &  selector,
Accessor &  acForPS,
Func &&  func,
Args &&...  args 
) const
inline

◆ getAngularVelocity()

const angularVelocity_type& walberla::mesa_pd::data::ParticleStorage::getAngularVelocity ( const size_t  idx) const
inline

◆ getAngularVelocityRef()

angularVelocity_type& walberla::mesa_pd::data::ParticleStorage::getAngularVelocityRef ( const size_t  idx)
inline

◆ getBaseShape()

const baseShape_type& walberla::mesa_pd::data::ParticleStorage::getBaseShape ( const size_t  idx) const
inline

◆ getBaseShapeRef()

baseShape_type& walberla::mesa_pd::data::ParticleStorage::getBaseShapeRef ( const size_t  idx)
inline

◆ getClusterID()

const clusterID_type& walberla::mesa_pd::data::ParticleStorage::getClusterID ( const size_t  idx) const
inline

◆ getClusterIDRef()

clusterID_type& walberla::mesa_pd::data::ParticleStorage::getClusterIDRef ( const size_t  idx)
inline

◆ getCurrentBlock()

const currentBlock_type& walberla::mesa_pd::data::ParticleStorage::getCurrentBlock ( const size_t  idx) const
inline

◆ getCurrentBlockRef()

currentBlock_type& walberla::mesa_pd::data::ParticleStorage::getCurrentBlockRef ( const size_t  idx)
inline

◆ getDv()

const dv_type& walberla::mesa_pd::data::ParticleStorage::getDv ( const size_t  idx) const
inline

◆ getDvRef()

dv_type& walberla::mesa_pd::data::ParticleStorage::getDvRef ( const size_t  idx)
inline

◆ getDw()

const dw_type& walberla::mesa_pd::data::ParticleStorage::getDw ( const size_t  idx) const
inline

◆ getDwRef()

dw_type& walberla::mesa_pd::data::ParticleStorage::getDwRef ( const size_t  idx)
inline

◆ getFlags()

const flags_type& walberla::mesa_pd::data::ParticleStorage::getFlags ( const size_t  idx) const
inline

◆ getFlagsRef()

flags_type& walberla::mesa_pd::data::ParticleStorage::getFlagsRef ( const size_t  idx)
inline

◆ getForce()

const force_type& walberla::mesa_pd::data::ParticleStorage::getForce ( const size_t  idx) const
inline

◆ getForceRef()

force_type& walberla::mesa_pd::data::ParticleStorage::getForceRef ( const size_t  idx)
inline

◆ getGhostOwners()

const ghostOwners_type& walberla::mesa_pd::data::ParticleStorage::getGhostOwners ( const size_t  idx) const
inline

◆ getGhostOwnersRef()

ghostOwners_type& walberla::mesa_pd::data::ParticleStorage::getGhostOwnersRef ( const size_t  idx)
inline

◆ getHeatFlux()

const heatFlux_type& walberla::mesa_pd::data::ParticleStorage::getHeatFlux ( const size_t  idx) const
inline

◆ getHeatFluxRef()

heatFlux_type& walberla::mesa_pd::data::ParticleStorage::getHeatFluxRef ( const size_t  idx)
inline

◆ getHydrodynamicForce()

const hydrodynamicForce_type& walberla::mesa_pd::data::ParticleStorage::getHydrodynamicForce ( const size_t  idx) const
inline

◆ getHydrodynamicForceRef()

hydrodynamicForce_type& walberla::mesa_pd::data::ParticleStorage::getHydrodynamicForceRef ( const size_t  idx)
inline

◆ getHydrodynamicTorque()

const hydrodynamicTorque_type& walberla::mesa_pd::data::ParticleStorage::getHydrodynamicTorque ( const size_t  idx) const
inline

◆ getHydrodynamicTorqueRef()

hydrodynamicTorque_type& walberla::mesa_pd::data::ParticleStorage::getHydrodynamicTorqueRef ( const size_t  idx)
inline

◆ getInteractionRadius()

const interactionRadius_type& walberla::mesa_pd::data::ParticleStorage::getInteractionRadius ( const size_t  idx) const
inline

◆ getInteractionRadiusRef()

interactionRadius_type& walberla::mesa_pd::data::ParticleStorage::getInteractionRadiusRef ( const size_t  idx)
inline

◆ getInvInertiaBF()

const invInertiaBF_type& walberla::mesa_pd::data::ParticleStorage::getInvInertiaBF ( const size_t  idx) const
inline

◆ getInvInertiaBFIncludingVirtual()

const invInertiaBFIncludingVirtual_type& walberla::mesa_pd::data::ParticleStorage::getInvInertiaBFIncludingVirtual ( const size_t  idx) const
inline

◆ getInvInertiaBFIncludingVirtualRef()

invInertiaBFIncludingVirtual_type& walberla::mesa_pd::data::ParticleStorage::getInvInertiaBFIncludingVirtualRef ( const size_t  idx)
inline

◆ getInvInertiaBFRef()

invInertiaBF_type& walberla::mesa_pd::data::ParticleStorage::getInvInertiaBFRef ( const size_t  idx)
inline

◆ getInvMass()

const invMass_type& walberla::mesa_pd::data::ParticleStorage::getInvMass ( const size_t  idx) const
inline

◆ getInvMassIncludingVirtual()

const invMassIncludingVirtual_type& walberla::mesa_pd::data::ParticleStorage::getInvMassIncludingVirtual ( const size_t  idx) const
inline

◆ getInvMassIncludingVirtualRef()

invMassIncludingVirtual_type& walberla::mesa_pd::data::ParticleStorage::getInvMassIncludingVirtualRef ( const size_t  idx)
inline

◆ getInvMassRef()

invMass_type& walberla::mesa_pd::data::ParticleStorage::getInvMassRef ( const size_t  idx)
inline

◆ getLinearVelocity()

const linearVelocity_type& walberla::mesa_pd::data::ParticleStorage::getLinearVelocity ( const size_t  idx) const
inline

◆ getLinearVelocityRef()

linearVelocity_type& walberla::mesa_pd::data::ParticleStorage::getLinearVelocityRef ( const size_t  idx)
inline

◆ getNeighborState()

const neighborState_type& walberla::mesa_pd::data::ParticleStorage::getNeighborState ( const size_t  idx) const
inline

◆ getNeighborStateRef()

neighborState_type& walberla::mesa_pd::data::ParticleStorage::getNeighborStateRef ( const size_t  idx)
inline

◆ getNewContactHistory()

const newContactHistory_type& walberla::mesa_pd::data::ParticleStorage::getNewContactHistory ( const size_t  idx) const
inline

◆ getNewContactHistoryRef()

newContactHistory_type& walberla::mesa_pd::data::ParticleStorage::getNewContactHistoryRef ( const size_t  idx)
inline

◆ getNextParticle()

const nextParticle_type& walberla::mesa_pd::data::ParticleStorage::getNextParticle ( const size_t  idx) const
inline

◆ getNextParticleRef()

nextParticle_type& walberla::mesa_pd::data::ParticleStorage::getNextParticleRef ( const size_t  idx)
inline

◆ getNumContacts()

const numContacts_type& walberla::mesa_pd::data::ParticleStorage::getNumContacts ( const size_t  idx) const
inline

◆ getNumContactsRef()

numContacts_type& walberla::mesa_pd::data::ParticleStorage::getNumContactsRef ( const size_t  idx)
inline

◆ getOldAngularAcceleration()

const oldAngularAcceleration_type& walberla::mesa_pd::data::ParticleStorage::getOldAngularAcceleration ( const size_t  idx) const
inline

◆ getOldAngularAccelerationRef()

oldAngularAcceleration_type& walberla::mesa_pd::data::ParticleStorage::getOldAngularAccelerationRef ( const size_t  idx)
inline

◆ getOldContactHistory()

const oldContactHistory_type& walberla::mesa_pd::data::ParticleStorage::getOldContactHistory ( const size_t  idx) const
inline

◆ getOldContactHistoryRef()

oldContactHistory_type& walberla::mesa_pd::data::ParticleStorage::getOldContactHistoryRef ( const size_t  idx)
inline

◆ getOldForce()

const oldForce_type& walberla::mesa_pd::data::ParticleStorage::getOldForce ( const size_t  idx) const
inline

◆ getOldForceRef()

oldForce_type& walberla::mesa_pd::data::ParticleStorage::getOldForceRef ( const size_t  idx)
inline

◆ getOldHydrodynamicForce()

const oldHydrodynamicForce_type& walberla::mesa_pd::data::ParticleStorage::getOldHydrodynamicForce ( const size_t  idx) const
inline

◆ getOldHydrodynamicForceRef()

oldHydrodynamicForce_type& walberla::mesa_pd::data::ParticleStorage::getOldHydrodynamicForceRef ( const size_t  idx)
inline

◆ getOldHydrodynamicTorque()

const oldHydrodynamicTorque_type& walberla::mesa_pd::data::ParticleStorage::getOldHydrodynamicTorque ( const size_t  idx) const
inline

◆ getOldHydrodynamicTorqueRef()

oldHydrodynamicTorque_type& walberla::mesa_pd::data::ParticleStorage::getOldHydrodynamicTorqueRef ( const size_t  idx)
inline

◆ getOldLinearAcceleration()

const oldLinearAcceleration_type& walberla::mesa_pd::data::ParticleStorage::getOldLinearAcceleration ( const size_t  idx) const
inline

◆ getOldLinearAccelerationRef()

oldLinearAcceleration_type& walberla::mesa_pd::data::ParticleStorage::getOldLinearAccelerationRef ( const size_t  idx)
inline

◆ getOldTorque()

const oldTorque_type& walberla::mesa_pd::data::ParticleStorage::getOldTorque ( const size_t  idx) const
inline

◆ getOldTorqueRef()

oldTorque_type& walberla::mesa_pd::data::ParticleStorage::getOldTorqueRef ( const size_t  idx)
inline

◆ getOwner()

const owner_type& walberla::mesa_pd::data::ParticleStorage::getOwner ( const size_t  idx) const
inline

◆ getOwnerRef()

owner_type& walberla::mesa_pd::data::ParticleStorage::getOwnerRef ( const size_t  idx)
inline

◆ getPosition()

const position_type& walberla::mesa_pd::data::ParticleStorage::getPosition ( const size_t  idx) const
inline

◆ getPositionRef()

position_type& walberla::mesa_pd::data::ParticleStorage::getPositionRef ( const size_t  idx)
inline

◆ getRadiusAtTemperature()

const radiusAtTemperature_type& walberla::mesa_pd::data::ParticleStorage::getRadiusAtTemperature ( const size_t  idx) const
inline

◆ getRadiusAtTemperatureRef()

radiusAtTemperature_type& walberla::mesa_pd::data::ParticleStorage::getRadiusAtTemperatureRef ( const size_t  idx)
inline

◆ getRotation()

const rotation_type& walberla::mesa_pd::data::ParticleStorage::getRotation ( const size_t  idx) const
inline

◆ getRotationRef()

rotation_type& walberla::mesa_pd::data::ParticleStorage::getRotationRef ( const size_t  idx)
inline

◆ getSegmentID()

const segmentID_type& walberla::mesa_pd::data::ParticleStorage::getSegmentID ( const size_t  idx) const
inline

◆ getSegmentIDRef()

segmentID_type& walberla::mesa_pd::data::ParticleStorage::getSegmentIDRef ( const size_t  idx)
inline

◆ getShapeID()

const shapeID_type& walberla::mesa_pd::data::ParticleStorage::getShapeID ( const size_t  idx) const
inline

◆ getShapeIDRef()

shapeID_type& walberla::mesa_pd::data::ParticleStorage::getShapeIDRef ( const size_t  idx)
inline

◆ getTemperature()

const temperature_type& walberla::mesa_pd::data::ParticleStorage::getTemperature ( const size_t  idx) const
inline

◆ getTemperatureRef()

temperature_type& walberla::mesa_pd::data::ParticleStorage::getTemperatureRef ( const size_t  idx)
inline

◆ getTorque()

const torque_type& walberla::mesa_pd::data::ParticleStorage::getTorque ( const size_t  idx) const
inline

◆ getTorqueRef()

torque_type& walberla::mesa_pd::data::ParticleStorage::getTorqueRef ( const size_t  idx)
inline

◆ getType()

const type_type& walberla::mesa_pd::data::ParticleStorage::getType ( const size_t  idx) const
inline

◆ getTypeRef()

type_type& walberla::mesa_pd::data::ParticleStorage::getTypeRef ( const size_t  idx)
inline

◆ getUid()

const uid_type& walberla::mesa_pd::data::ParticleStorage::getUid ( const size_t  idx) const
inline

◆ getUidRef()

uid_type& walberla::mesa_pd::data::ParticleStorage::getUidRef ( const size_t  idx)
inline

◆ getVirtualInertiaBF()

const virtualInertiaBF_type& walberla::mesa_pd::data::ParticleStorage::getVirtualInertiaBF ( const size_t  idx) const
inline

◆ getVirtualInertiaBFRef()

virtualInertiaBF_type& walberla::mesa_pd::data::ParticleStorage::getVirtualInertiaBFRef ( const size_t  idx)
inline

◆ getVirtualMass()

const virtualMass_type& walberla::mesa_pd::data::ParticleStorage::getVirtualMass ( const size_t  idx) const
inline

◆ getVirtualMassRef()

virtualMass_type& walberla::mesa_pd::data::ParticleStorage::getVirtualMassRef ( const size_t  idx)
inline

◆ operator[]()

Particle walberla::mesa_pd::data::ParticleStorage::operator[] ( const size_t  n)
inline

◆ reserve()

void walberla::mesa_pd::data::ParticleStorage::reserve ( const size_t  size)
inline

◆ setAngularVelocity()

void walberla::mesa_pd::data::ParticleStorage::setAngularVelocity ( const size_t  idx,
angularVelocity_type const &  v 
)
inline

◆ setBaseShape()

void walberla::mesa_pd::data::ParticleStorage::setBaseShape ( const size_t  idx,
baseShape_type const &  v 
)
inline

◆ setClusterID()

void walberla::mesa_pd::data::ParticleStorage::setClusterID ( const size_t  idx,
clusterID_type const &  v 
)
inline

◆ setCurrentBlock()

void walberla::mesa_pd::data::ParticleStorage::setCurrentBlock ( const size_t  idx,
currentBlock_type const &  v 
)
inline

◆ setDv()

void walberla::mesa_pd::data::ParticleStorage::setDv ( const size_t  idx,
dv_type const &  v 
)
inline

◆ setDw()

void walberla::mesa_pd::data::ParticleStorage::setDw ( const size_t  idx,
dw_type const &  v 
)
inline

◆ setFlags()

void walberla::mesa_pd::data::ParticleStorage::setFlags ( const size_t  idx,
flags_type const &  v 
)
inline

◆ setForce()

void walberla::mesa_pd::data::ParticleStorage::setForce ( const size_t  idx,
force_type const &  v 
)
inline

◆ setGhostOwners()

void walberla::mesa_pd::data::ParticleStorage::setGhostOwners ( const size_t  idx,
ghostOwners_type const &  v 
)
inline

◆ setHeatFlux()

void walberla::mesa_pd::data::ParticleStorage::setHeatFlux ( const size_t  idx,
heatFlux_type const &  v 
)
inline

◆ setHydrodynamicForce()

void walberla::mesa_pd::data::ParticleStorage::setHydrodynamicForce ( const size_t  idx,
hydrodynamicForce_type const &  v 
)
inline

◆ setHydrodynamicTorque()

void walberla::mesa_pd::data::ParticleStorage::setHydrodynamicTorque ( const size_t  idx,
hydrodynamicTorque_type const &  v 
)
inline

◆ setInteractionRadius()

void walberla::mesa_pd::data::ParticleStorage::setInteractionRadius ( const size_t  idx,
interactionRadius_type const &  v 
)
inline

◆ setInvInertiaBF()

void walberla::mesa_pd::data::ParticleStorage::setInvInertiaBF ( const size_t  idx,
invInertiaBF_type const &  v 
)
inline

◆ setInvInertiaBFIncludingVirtual()

void walberla::mesa_pd::data::ParticleStorage::setInvInertiaBFIncludingVirtual ( const size_t  idx,
invInertiaBFIncludingVirtual_type const &  v 
)
inline

◆ setInvMass()

void walberla::mesa_pd::data::ParticleStorage::setInvMass ( const size_t  idx,
invMass_type const &  v 
)
inline

◆ setInvMassIncludingVirtual()

void walberla::mesa_pd::data::ParticleStorage::setInvMassIncludingVirtual ( const size_t  idx,
invMassIncludingVirtual_type const &  v 
)
inline

◆ setLinearVelocity()

void walberla::mesa_pd::data::ParticleStorage::setLinearVelocity ( const size_t  idx,
linearVelocity_type const &  v 
)
inline

◆ setNeighborState()

void walberla::mesa_pd::data::ParticleStorage::setNeighborState ( const size_t  idx,
neighborState_type const &  v 
)
inline

◆ setNewContactHistory()

void walberla::mesa_pd::data::ParticleStorage::setNewContactHistory ( const size_t  idx,
newContactHistory_type const &  v 
)
inline

◆ setNextParticle()

void walberla::mesa_pd::data::ParticleStorage::setNextParticle ( const size_t  idx,
nextParticle_type const &  v 
)
inline

◆ setNumContacts()

void walberla::mesa_pd::data::ParticleStorage::setNumContacts ( const size_t  idx,
numContacts_type const &  v 
)
inline

◆ setOldAngularAcceleration()

void walberla::mesa_pd::data::ParticleStorage::setOldAngularAcceleration ( const size_t  idx,
oldAngularAcceleration_type const &  v 
)
inline

◆ setOldContactHistory()

void walberla::mesa_pd::data::ParticleStorage::setOldContactHistory ( const size_t  idx,
oldContactHistory_type const &  v 
)
inline

◆ setOldForce()

void walberla::mesa_pd::data::ParticleStorage::setOldForce ( const size_t  idx,
oldForce_type const &  v 
)
inline

◆ setOldHydrodynamicForce()

void walberla::mesa_pd::data::ParticleStorage::setOldHydrodynamicForce ( const size_t  idx,
oldHydrodynamicForce_type const &  v 
)
inline

◆ setOldHydrodynamicTorque()

void walberla::mesa_pd::data::ParticleStorage::setOldHydrodynamicTorque ( const size_t  idx,
oldHydrodynamicTorque_type const &  v 
)
inline

◆ setOldLinearAcceleration()

void walberla::mesa_pd::data::ParticleStorage::setOldLinearAcceleration ( const size_t  idx,
oldLinearAcceleration_type const &  v 
)
inline

◆ setOldTorque()

void walberla::mesa_pd::data::ParticleStorage::setOldTorque ( const size_t  idx,
oldTorque_type const &  v 
)
inline

◆ setOwner()

void walberla::mesa_pd::data::ParticleStorage::setOwner ( const size_t  idx,
owner_type const &  v 
)
inline

◆ setPosition()

void walberla::mesa_pd::data::ParticleStorage::setPosition ( const size_t  idx,
position_type const &  v 
)
inline

◆ setRadiusAtTemperature()

void walberla::mesa_pd::data::ParticleStorage::setRadiusAtTemperature ( const size_t  idx,
radiusAtTemperature_type const &  v 
)
inline

◆ setRotation()

void walberla::mesa_pd::data::ParticleStorage::setRotation ( const size_t  idx,
rotation_type const &  v 
)
inline

◆ setSegmentID()

void walberla::mesa_pd::data::ParticleStorage::setSegmentID ( const size_t  idx,
segmentID_type const &  v 
)
inline

◆ setShapeID()

void walberla::mesa_pd::data::ParticleStorage::setShapeID ( const size_t  idx,
shapeID_type const &  v 
)
inline

◆ setTemperature()

void walberla::mesa_pd::data::ParticleStorage::setTemperature ( const size_t  idx,
temperature_type const &  v 
)
inline

◆ setTorque()

void walberla::mesa_pd::data::ParticleStorage::setTorque ( const size_t  idx,
torque_type const &  v 
)
inline

◆ setType()

void walberla::mesa_pd::data::ParticleStorage::setType ( const size_t  idx,
type_type const &  v 
)
inline

◆ setUid()

void walberla::mesa_pd::data::ParticleStorage::setUid ( const size_t  idx,
uid_type const &  v 
)
inline

◆ setVirtualInertiaBF()

void walberla::mesa_pd::data::ParticleStorage::setVirtualInertiaBF ( const size_t  idx,
virtualInertiaBF_type const &  v 
)
inline

◆ setVirtualMass()

void walberla::mesa_pd::data::ParticleStorage::setVirtualMass ( const size_t  idx,
virtualMass_type const &  v 
)
inline

◆ size()

size_t walberla::mesa_pd::data::ParticleStorage::size ( ) const
inline

◆ sort()

template<class Compare >
void walberla::mesa_pd::data::ParticleStorage::sort ( Compare  comp)

Member Data Documentation

◆ angularVelocity_

std::vector<angularVelocity_type> walberla::mesa_pd::data::ParticleStorage::angularVelocity_ {}
private

◆ baseShape_

std::vector<baseShape_type> walberla::mesa_pd::data::ParticleStorage::baseShape_ {}
private

◆ clusterID_

std::vector<clusterID_type> walberla::mesa_pd::data::ParticleStorage::clusterID_ {}
private

◆ currentBlock_

std::vector<currentBlock_type> walberla::mesa_pd::data::ParticleStorage::currentBlock_ {}
private

◆ dv_

std::vector<dv_type> walberla::mesa_pd::data::ParticleStorage::dv_ {}
private

◆ dw_

std::vector<dw_type> walberla::mesa_pd::data::ParticleStorage::dw_ {}
private

◆ flags_

std::vector<flags_type> walberla::mesa_pd::data::ParticleStorage::flags_ {}
private

◆ force_

std::vector<force_type> walberla::mesa_pd::data::ParticleStorage::force_ {}
private

◆ ghostOwners_

std::vector<ghostOwners_type> walberla::mesa_pd::data::ParticleStorage::ghostOwners_ {}
private

◆ heatFlux_

std::vector<heatFlux_type> walberla::mesa_pd::data::ParticleStorage::heatFlux_ {}
private

◆ hydrodynamicForce_

std::vector<hydrodynamicForce_type> walberla::mesa_pd::data::ParticleStorage::hydrodynamicForce_ {}
private

◆ hydrodynamicTorque_

std::vector<hydrodynamicTorque_type> walberla::mesa_pd::data::ParticleStorage::hydrodynamicTorque_ {}
private

◆ interactionRadius_

std::vector<interactionRadius_type> walberla::mesa_pd::data::ParticleStorage::interactionRadius_ {}
private

◆ invInertiaBF_

std::vector<invInertiaBF_type> walberla::mesa_pd::data::ParticleStorage::invInertiaBF_ {}
private

◆ invInertiaBFIncludingVirtual_

std::vector<invInertiaBFIncludingVirtual_type> walberla::mesa_pd::data::ParticleStorage::invInertiaBFIncludingVirtual_ {}
private

◆ invMass_

std::vector<invMass_type> walberla::mesa_pd::data::ParticleStorage::invMass_ {}
private

◆ invMassIncludingVirtual_

std::vector<invMassIncludingVirtual_type> walberla::mesa_pd::data::ParticleStorage::invMassIncludingVirtual_ {}
private

◆ linearVelocity_

std::vector<linearVelocity_type> walberla::mesa_pd::data::ParticleStorage::linearVelocity_ {}
private

◆ neighborState_

std::vector<neighborState_type> walberla::mesa_pd::data::ParticleStorage::neighborState_ {}
private

◆ newContactHistory_

std::vector<newContactHistory_type> walberla::mesa_pd::data::ParticleStorage::newContactHistory_ {}
private

◆ nextParticle_

std::vector<nextParticle_type> walberla::mesa_pd::data::ParticleStorage::nextParticle_ {}
private

◆ numContacts_

std::vector<numContacts_type> walberla::mesa_pd::data::ParticleStorage::numContacts_ {}
private

◆ oldAngularAcceleration_

std::vector<oldAngularAcceleration_type> walberla::mesa_pd::data::ParticleStorage::oldAngularAcceleration_ {}
private

◆ oldContactHistory_

std::vector<oldContactHistory_type> walberla::mesa_pd::data::ParticleStorage::oldContactHistory_ {}
private

◆ oldForce_

std::vector<oldForce_type> walberla::mesa_pd::data::ParticleStorage::oldForce_ {}
private

◆ oldHydrodynamicForce_

std::vector<oldHydrodynamicForce_type> walberla::mesa_pd::data::ParticleStorage::oldHydrodynamicForce_ {}
private

◆ oldHydrodynamicTorque_

std::vector<oldHydrodynamicTorque_type> walberla::mesa_pd::data::ParticleStorage::oldHydrodynamicTorque_ {}
private

◆ oldLinearAcceleration_

std::vector<oldLinearAcceleration_type> walberla::mesa_pd::data::ParticleStorage::oldLinearAcceleration_ {}
private

◆ oldTorque_

std::vector<oldTorque_type> walberla::mesa_pd::data::ParticleStorage::oldTorque_ {}
private

◆ owner_

std::vector<owner_type> walberla::mesa_pd::data::ParticleStorage::owner_ {}
private

◆ position_

std::vector<position_type> walberla::mesa_pd::data::ParticleStorage::position_ {}
private

◆ radiusAtTemperature_

std::vector<radiusAtTemperature_type> walberla::mesa_pd::data::ParticleStorage::radiusAtTemperature_ {}
private

◆ rotation_

std::vector<rotation_type> walberla::mesa_pd::data::ParticleStorage::rotation_ {}
private

◆ segmentID_

std::vector<segmentID_type> walberla::mesa_pd::data::ParticleStorage::segmentID_ {}
private

◆ shapeID_

std::vector<shapeID_type> walberla::mesa_pd::data::ParticleStorage::shapeID_ {}
private

◆ temperature_

std::vector<temperature_type> walberla::mesa_pd::data::ParticleStorage::temperature_ {}
private

◆ torque_

std::vector<torque_type> walberla::mesa_pd::data::ParticleStorage::torque_ {}
private

◆ type_

std::vector<type_type> walberla::mesa_pd::data::ParticleStorage::type_ {}
private

◆ uid_

std::vector<uid_type> walberla::mesa_pd::data::ParticleStorage::uid_ {}
private

◆ uidToIdx_

std::unordered_map<uid_type, size_t> walberla::mesa_pd::data::ParticleStorage::uidToIdx_
private

◆ virtualInertiaBF_

std::vector<virtualInertiaBF_type> walberla::mesa_pd::data::ParticleStorage::virtualInertiaBF_ {}
private

◆ virtualMass_

std::vector<virtualMass_type> walberla::mesa_pd::data::ParticleStorage::virtualMass_ {}
private

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