MAIA bb96820c
Multiphysics at AIA
|
Class that represents LB cell collector. More...
#include <lbmbcellcollector.h>
Public Member Functions | |
constexpr | LbMbCellCollector ()=default |
Default c'tor does nothing. More... | |
MInt & | cellId (const MInt id) |
Accessor for cellId. More... | |
MInt | cellId (const MInt id) const |
Accessor for cellId (const version). More... | |
MFloat & | distance (const MInt id, const MInt did) |
Accessor for distances. More... | |
MFloat | distance (const MInt id, const MInt did) const |
Accessor for distances (const version). More... | |
MFloat & | velocity (const MInt id, const MInt dim) |
Accessor for velocities. More... | |
MFloat | velocity (const MInt id, const MInt dim) const |
Accessor for velocities (const version). More... | |
MFloat & | force (const MInt id, const MInt did, const MInt dim) |
Accessor for forces. More... | |
MFloat | force (const MInt id, const MInt did, const MInt dim) const |
Accessor for forces (const version). More... | |
MFloat & | surfaceCenter (const MInt id, const MInt did, const MInt dim) |
Accessor for surfaceCenter. More... | |
MFloat | surfaceCenter (const MInt id, const MInt did, const MInt dim) const |
Accessor for surfaceCenter (const version). More... | |
MFloat & | cellCenter (const MInt id, const MInt dim) |
Accessor for cellCenter. More... | |
MFloat | cellCenter (const MInt id, const MInt dim) const |
Accessor for cellCenter (const version). More... | |
MFloat & | normal (const MInt id, const MInt dim) |
Accessor for surface normal. More... | |
MFloat | normal (const MInt id, const MInt dim) const |
Accessor for surface normal (const version). More... | |
MFloat & | density (const MInt id) |
Accessor for density. More... | |
MFloat | density (const MInt id) const |
Accessor for density (const version). More... | |
void | setVelocity (const MInt id, const std::array< MFloat, nDim > &velocity) |
void | addVelocity (const MInt id, const std::array< MFloat, nDim > &velocity) |
constexpr MInt | noDistances () const |
Number of distances. More... | |
void | noDistances (const MInt noDistances) |
constexpr MInt | noForces () const |
Number of forces. More... | |
void | noForces (const MInt noDistances) |
constexpr MInt | noDimensions () const |
Number of dimensions. More... | |
Public Member Functions inherited from maia::container::Container< LbMbCellCollector< nDim >, Invalid > | |
constexpr | Container ()=default |
Default c'tor does nothing. More... | |
constexpr MInt | capacity () const |
Return capacity (i.e., maximum number of nodes) More... | |
void | reset (const MInt capacity) |
Reset tree, re-create data structures with given capacity, and set size to zero. More... | |
void | resize (const MInt capacity) |
Resize the container capacity. More... | |
constexpr MInt | size () const |
Return size (i.e., currently used number of nodes) More... | |
void | size (const MInt size_) |
Resize tree WITHOUT CONSIDERING ANY NODE CONSISTENCY! Use at own risk and remove ASAP... More... | |
void | append (const MInt count) |
Append nodes to end of tree. More... | |
void | append () |
void | shrink (const MInt count) |
Remove nodes from end of tree. More... | |
void | shrink () |
void | copy (const T &source, const MInt begin, const MInt end, const MInt to) |
Copy nodes to another location without changing any parent/child/neighbor information. More... | |
void | copy (const T &source, const MInt from, const MInt to) |
void | copy (const MInt begin, const MInt end, const MInt to) |
void | copy (const MInt from, const MInt to) |
void | move (const MInt begin, const MInt end, const MInt to) |
Move nodes to another location and update parent/child/neighbor information accordingly. More... | |
void | move (const MInt from, const MInt to) |
void | swap (const MInt a, const MInt b) |
Swap two nodes and update parent/child/neighbor information accordingly. More... | |
void | insert (const MInt begin, const MInt count) |
void | insert (const MInt id) |
void | erase (const MInt begin, const MInt end) |
Erase nodes in range [begin, end) and update parent/child/neighbor information. More... | |
void | erase (const MInt id) |
void | removeAndShift (const MInt begin, const MInt end) |
void | removeAndShift (const MInt id) |
void | removeAndFill (const MInt begin, const MInt end) |
void | removeAndFill (const MInt id) |
void | clear () |
Clear tree by invalidating all nodes and setting size to zero. More... | |
LbMbCellCollector< nDim > & | derived () |
const LbMbCellCollector< nDim > & | derived () const |
void | rawCopy (const T &source, const MInt begin, const MInt end, const MInt to) |
Copy range of nodes [begin, end) to range starting at 'to'. More... | |
void | rawCopy (const T &source, const MInt from, const MInt to) |
void | deleteConnectivity (const MInt NotUsed(begin), const MInt NotUsed(end)) |
void | moveConnectivity (const MInt NotUsed(begin), const MInt NotUsed(end), const MInt NotUsed(to)) |
void | moveConnectivity (const MInt from, const MInt to) |
constexpr MInt | dummy () const |
Private Types | |
using | Base = maia::container::Container< LbMbCellCollector< nDim >, Invalid > |
template<class T > | |
using | Storage = typename Base::template Storage< T > |
Private Member Functions | |
void | reset () |
Reset tree, re-create data structures with given capacity, and set size to zero. More... | |
void | invalidate (const MInt begin, const MInt end) |
Erase range of nodes such that they contain no sensible values anymore. More... | |
template<class Functor , class T > | |
void | rawCopyGeneric (Functor &&c, const T &source, const MInt begin, const MInt end, const MInt destination) |
Helper function for rawCopy(). Destination may refer to beginning or end of target range. More... | |
Private Attributes | |
MInt | m_noDistances = 0 |
Storage< MInt > | m_cellId {} |
Storage< MFloat > | m_distances {} |
Storage< MFloat > | m_velocities {} |
Storage< MFloat > | m_forces {} |
Storage< MFloat > | m_surfaceCenters {} |
Storage< MFloat > | m_cellCenters {} |
Storage< MFloat > | m_normal {} |
Storage< MFloat > | m_density {} |
Friends | |
class | maia::container::Container< LbMbCellCollector< nDim >, Invalid > |
Additional Inherited Members | |
Protected Types inherited from maia::container::Container< LbMbCellCollector< nDim >, Invalid > | |
using | Storage = std::vector< T > |
Protected Member Functions inherited from maia::container::Container< LbMbCellCollector< nDim >, Invalid > | |
virtual void | resize () |
void | resetStorage (const MInt n, Storage< T > &c) |
Create new container with given size and replace original one. More... | |
void | resizeStorage (const MInt n, Storage< T > &c) |
Resize container with given size. More... | |
void | fill_invalid (Container_ &c, const MInt begin, const MInt end, const MInt solverSize=1, const T value=Invalid< T >::value()) |
void | copyData (const Container_ &source, Container_ &target, Functor &&f, const MInt begin, const MInt end, const MInt dest, const MInt solverSize=1) |
Copy [begin, end) range with given solver size from source to dest position of target. More... | |
MBool | isValidId (const MInt id) const |
Return whether given id refers to a valid node (auxiliary method). More... | |
Definition at line 88 of file lbmbcellcollector.h.
|
private |
Definition at line 93 of file lbmbcellcollector.h.
|
private |
Definition at line 96 of file lbmbcellcollector.h.
|
constexprdefault |
void maia::lb::collector::LbMbCellCollector< nDim >::addVelocity | ( | const MInt | id, |
const std::array< MFloat, nDim > & | velocity | ||
) |
Definition at line 265 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::cellCenter | ( | const MInt | id, |
const MInt | dim | ||
) |
Definition at line 328 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::cellCenter | ( | const MInt | id, |
const MInt | dim | ||
) | const |
Definition at line 339 of file lbmbcellcollector.h.
MInt & maia::lb::collector::LbMbCellCollector< nDim >::cellId | ( | const MInt | id | ) |
Definition at line 187 of file lbmbcellcollector.h.
MInt maia::lb::collector::LbMbCellCollector< nDim >::cellId | ( | const MInt | id | ) | const |
Definition at line 197 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::density | ( | const MInt | id | ) |
Definition at line 374 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::density | ( | const MInt | id | ) | const |
Definition at line 384 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::distance | ( | const MInt | id, |
const MInt | did | ||
) |
Definition at line 208 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::distance | ( | const MInt | id, |
const MInt | did | ||
) | const |
Definition at line 219 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::force | ( | const MInt | id, |
const MInt | did, | ||
const MInt | dim | ||
) |
Definition at line 278 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::force | ( | const MInt | id, |
const MInt | did, | ||
const MInt | dim | ||
) | const |
Definition at line 290 of file lbmbcellcollector.h.
|
private |
Definition at line 398 of file lbmbcellcollector.h.
|
inlineconstexpr |
Definition at line 147 of file lbmbcellcollector.h.
|
inlineconstexpr |
Definition at line 139 of file lbmbcellcollector.h.
|
inline |
Definition at line 140 of file lbmbcellcollector.h.
|
inlineconstexpr |
Definition at line 143 of file lbmbcellcollector.h.
|
inline |
Definition at line 144 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::normal | ( | const MInt | id, |
const MInt | dim | ||
) |
Definition at line 351 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::normal | ( | const MInt | id, |
const MInt | dim | ||
) | const |
Definition at line 362 of file lbmbcellcollector.h.
|
private |
Definition at line 416 of file lbmbcellcollector.h.
|
private |
Definition at line 172 of file lbmbcellcollector.h.
void maia::lb::collector::LbMbCellCollector< nDim >::setVelocity | ( | const MInt | id, |
const std::array< MFloat, nDim > & | velocity | ||
) |
Definition at line 253 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::surfaceCenter | ( | const MInt | id, |
const MInt | did, | ||
const MInt | dim | ||
) |
Definition at line 303 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::surfaceCenter | ( | const MInt | id, |
const MInt | did, | ||
const MInt | dim | ||
) | const |
Definition at line 315 of file lbmbcellcollector.h.
MFloat & maia::lb::collector::LbMbCellCollector< nDim >::velocity | ( | const MInt | id, |
const MInt | dim | ||
) |
Definition at line 231 of file lbmbcellcollector.h.
MFloat maia::lb::collector::LbMbCellCollector< nDim >::velocity | ( | const MInt | id, |
const MInt | dim | ||
) | const |
Definition at line 242 of file lbmbcellcollector.h.
|
friend |
Definition at line 416 of file lbmbcellcollector.h.
|
private |
Definition at line 165 of file lbmbcellcollector.h.
|
private |
Definition at line 160 of file lbmbcellcollector.h.
|
private |
Definition at line 167 of file lbmbcellcollector.h.
|
private |
Definition at line 161 of file lbmbcellcollector.h.
|
private |
Definition at line 163 of file lbmbcellcollector.h.
|
private |
Definition at line 157 of file lbmbcellcollector.h.
|
private |
Definition at line 166 of file lbmbcellcollector.h.
|
private |
Definition at line 164 of file lbmbcellcollector.h.
|
private |
Definition at line 162 of file lbmbcellcollector.h.