MAIA bb96820c
Multiphysics at AIA
|
Class that represents DG element collector. More...
#include <acasurfacedatacollector.h>
Public Types | |
template<class T > | |
using | Invalid = typename maia::acoustic_analogy::collector::Invalid< T > |
Public Member Functions | |
constexpr | SurfaceDataCollector ()=default |
Default c'tor does nothing. More... | |
MFloat & | surfaceCoordinates (const MInt id) |
Accessor for surface element coordinates. More... | |
MFloat | surfaceCoordinates (const MInt id) const |
Accessor for surface element coordinates (const version). More... | |
MFloat & | surfaceArea (const MInt id) |
Accessor for surface area (or segment length in 2D). More... | |
MFloat | surfaceArea (const MInt id) const |
Accessor for surface area (or segment length in 2D) (const version). More... | |
MFloat & | surfaceNormal (const MInt id) |
Accessor for surface normal. More... | |
MFloat | surfaceNormal (const MInt id) const |
Accessor for surface normal (const version). More... | |
MFloat & | variables (const MInt id, const MInt var) |
Accessor for variables. More... | |
MFloat & | variables (const MInt id) |
MFloat & | variables (const MInt id, const MInt var, const MInt sample) |
MFloat | variables (const MInt id, const MInt var, const MInt sample) const |
Accessor for variables (const version). More... | |
MFloat & | complexVariables (const MInt id, const MInt var) |
Accessor for complex variables. More... | |
MFloat & | complexVariables (const MInt id) |
MFloat & | complexVariables (const MInt id, const MInt var, const MInt sample, const MInt component) |
MFloat | complexVariables (const MInt id, const MInt var, const MInt sample, const MInt component) const |
Accessor for complex variables (const version). More... | |
MInt | noVars () |
Return number of variables. More... | |
void | setNoVars (const MInt noVars_) |
Set number of variables. More... | |
MInt | noComplexVars () |
Return number of complex variables. More... | |
void | setNoComplexVars (const MInt noComplexVars_) |
Set number of complex variables. More... | |
MInt | noSamples () |
Return number of samples (i.e. number of time steps) More... | |
void | setNoSamples (const MInt noSamples_) |
Set number of samples. More... | |
Public Member Functions inherited from maia::container::Container< SurfaceDataCollector< 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... | |
SurfaceDataCollector< nDim > & | derived () |
const SurfaceDataCollector< 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< SurfaceDataCollector< nDim >, Invalid > |
template<class T > | |
using | Storage = typename Base::template Storage< T > |
Private Member Functions | |
void | reset () |
Reset, re-create data structures with given capacity, and set size to zero. More... | |
void | resize () override |
Resize data strucutres reusing values from previous state. 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_noVars = -1 |
MInt | m_noComplexVars = -1 |
MInt | m_noSamples = -1 |
Storage< MFloat > | m_surfaceCoordinates {} |
Storage< MFloat > | m_surfaceArea {} |
Storage< MFloat > | m_surfaceNormal {} |
Storage< MFloat > | m_variables {} |
Storage< MFloat > | m_complexVariables {} |
Static Private Attributes | |
static constexpr MInt | s_maxNoVars = 14 |
Maximum number of variables (in the time domain) More... | |
static constexpr MInt | s_maxNoComplexVars = 5 |
Maximum number of complex variables (in the frequency domain) More... | |
static constexpr MInt | s_maxNoSamples = 1048576 |
Maximum number of samples. More... | |
Friends | |
class | maia::container::Container< SurfaceDataCollector< nDim >, Invalid > |
Additional Inherited Members | |
Protected Types inherited from maia::container::Container< SurfaceDataCollector< nDim >, Invalid > | |
using | Storage = std::vector< T > |
Protected Member Functions inherited from maia::container::Container< SurfaceDataCollector< 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 119 of file acasurfacedatacollector.h.
|
private |
Definition at line 124 of file acasurfacedatacollector.h.
using maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::Invalid = typename maia::acoustic_analogy::collector::Invalid<T> |
Definition at line 133 of file acasurfacedatacollector.h.
|
private |
Definition at line 128 of file acasurfacedatacollector.h.
|
constexprdefault |
|
inline |
Definition at line 162 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::complexVariables | ( | const MInt | id, |
const MInt | var | ||
) |
Definition at line 366 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::complexVariables | ( | const MInt | id, |
const MInt | var, | ||
const MInt | sample, | ||
const MInt | component | ||
) |
NOTE: the following complexariables accessors might be very inefficient to use in a loop e.g. over all samples and should only be used during the development of the method. Accessor for complex variables.
Definition at line 381 of file acasurfacedatacollector.h.
MFloat maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::complexVariables | ( | const MInt | id, |
const MInt | var, | ||
const MInt | sample, | ||
const MInt | component | ||
) | const |
Definition at line 394 of file acasurfacedatacollector.h.
|
private |
Definition at line 409 of file acasurfacedatacollector.h.
|
inline |
Definition at line 178 of file acasurfacedatacollector.h.
|
inline |
Definition at line 187 of file acasurfacedatacollector.h.
|
inline |
Definition at line 170 of file acasurfacedatacollector.h.
|
private |
Definition at line 438 of file acasurfacedatacollector.h.
|
private |
Definition at line 232 of file acasurfacedatacollector.h.
|
overrideprivatevirtual |
Reimplemented from maia::container::Container< SurfaceDataCollector< nDim >, Invalid >.
Definition at line 245 of file acasurfacedatacollector.h.
|
inline |
Definition at line 180 of file acasurfacedatacollector.h.
|
inline |
Definition at line 189 of file acasurfacedatacollector.h.
|
inline |
Definition at line 172 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::surfaceArea | ( | const MInt | id | ) |
Definition at line 281 of file acasurfacedatacollector.h.
MFloat maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::surfaceArea | ( | const MInt | id | ) | const |
Definition at line 291 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::surfaceCoordinates | ( | const MInt | id | ) |
Definition at line 259 of file acasurfacedatacollector.h.
MFloat maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::surfaceCoordinates | ( | const MInt | id | ) | const |
Definition at line 269 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::surfaceNormal | ( | const MInt | id | ) |
Definition at line 303 of file acasurfacedatacollector.h.
MFloat maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::surfaceNormal | ( | const MInt | id | ) | const |
Definition at line 313 of file acasurfacedatacollector.h.
|
inline |
Definition at line 156 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::variables | ( | const MInt | id, |
const MInt | var | ||
) |
Definition at line 325 of file acasurfacedatacollector.h.
MFloat & maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::variables | ( | const MInt | id, |
const MInt | var, | ||
const MInt | sample | ||
) |
NOTE: the following variables accessors might be very inefficient to use in a loop e.g. over all samples and should only be used during the development of the method. Accessor for variables.
Definition at line 340 of file acasurfacedatacollector.h.
MFloat maia::acoustic_analogy::collector::SurfaceDataCollector< nDim >::variables | ( | const MInt | id, |
const MInt | var, | ||
const MInt | sample | ||
) | const |
Definition at line 352 of file acasurfacedatacollector.h.
|
friend |
Definition at line 107 of file acasurfacedatacollector.h.
|
private |
Definition at line 219 of file acasurfacedatacollector.h.
|
private |
Definition at line 209 of file acasurfacedatacollector.h.
|
private |
Definition at line 212 of file acasurfacedatacollector.h.
|
private |
Definition at line 206 of file acasurfacedatacollector.h.
|
private |
Definition at line 216 of file acasurfacedatacollector.h.
|
private |
Definition at line 215 of file acasurfacedatacollector.h.
|
private |
Definition at line 217 of file acasurfacedatacollector.h.
|
private |
Definition at line 218 of file acasurfacedatacollector.h.
|
staticconstexprprivate |
Definition at line 224 of file acasurfacedatacollector.h.
|
staticconstexprprivate |
Definition at line 226 of file acasurfacedatacollector.h.
|
staticconstexprprivate |
Definition at line 222 of file acasurfacedatacollector.h.