waLBerla 7.3
Loading...
Searching...
No Matches
walberla::CellInterval Class Reference

#include <CellInterval.h>

Public Types

using const_iterator = CellIntervalIterator

Public Member Functions

WALBERLA_HOST_DEVICE CellInterval ()
WALBERLA_HOST_DEVICE CellInterval (const Cell &_min, const Cell &_max)
WALBERLA_HOST_DEVICE CellInterval (const cell_idx_t _xMin, const cell_idx_t _yMin, const cell_idx_t _zMin, const cell_idx_t _xMax, const cell_idx_t _yMax, const cell_idx_t _zMax)
WALBERLA_HOST_DEVICE bool operator== (const CellInterval &rhs) const
WALBERLA_HOST_DEVICE bool operator!= (const CellInterval &rhs) const
WALBERLA_HOST_DEVICE Cellmin ()
WALBERLA_HOST_DEVICE const Cellmin () const
WALBERLA_HOST_DEVICE cell_idx_txMin ()
WALBERLA_HOST_DEVICE cell_idx_t xMin () const
WALBERLA_HOST_DEVICE cell_idx_tyMin ()
WALBERLA_HOST_DEVICE cell_idx_t yMin () const
WALBERLA_HOST_DEVICE cell_idx_tzMin ()
WALBERLA_HOST_DEVICE cell_idx_t zMin () const
WALBERLA_HOST_DEVICE Cellmax ()
WALBERLA_HOST_DEVICE const Cellmax () const
WALBERLA_HOST_DEVICE cell_idx_txMax ()
WALBERLA_HOST_DEVICE cell_idx_t xMax () const
WALBERLA_HOST_DEVICE cell_idx_tyMax ()
WALBERLA_HOST_DEVICE cell_idx_t yMax () const
WALBERLA_HOST_DEVICE cell_idx_tzMax ()
WALBERLA_HOST_DEVICE cell_idx_t zMax () const
WALBERLA_HOST_DEVICE bool empty () const
WALBERLA_HOST_DEVICE bool positiveIndicesOnly () const
WALBERLA_HOST_DEVICE bool contains (const cell_idx_t x, const cell_idx_t y, const cell_idx_t z) const
 Returns true only if cell (x,y,z) is contained in the cell interval.
WALBERLA_HOST_DEVICE bool contains (const uint_t x, const uint_t y, const uint_t z) const
WALBERLA_HOST_DEVICE bool contains (const Cell &cell) const
WALBERLA_HOST_DEVICE bool contains (const CellInterval &other) const
WALBERLA_HOST_DEVICE bool overlaps (const CellInterval &other) const
 Query if the CellIntervals overlaps with another given CellInterval.
bool overlaps (const CellSet &cellSet) const
bool overlaps (const CellVector &cellVector) const
WALBERLA_HOST_DEVICE CellIntervalshift (const cell_idx_t x, const cell_idx_t y, const cell_idx_t z)
 diagonal shift
WALBERLA_HOST_DEVICE CellIntervalshift (const uint_t x, const uint_t y, const uint_t z)
 diagonal shift
WALBERLA_HOST_DEVICE CellIntervalshift (const Cell &offset)
WALBERLA_HOST_DEVICE void expand (const cell_idx_t numberOfCells)
WALBERLA_HOST_DEVICE void expand (const Cell &numberOfCells)
WALBERLA_HOST_DEVICE void intersect (const CellInterval &other)
WALBERLA_HOST_DEVICE uint_t xSize () const
WALBERLA_HOST_DEVICE uint_t ySize () const
WALBERLA_HOST_DEVICE uint_t zSize () const
WALBERLA_HOST_DEVICE uint_t size (const uint_t i) const
WALBERLA_HOST_DEVICE uint_t numCells () const
WALBERLA_HOST_DEVICE const_iterator begin () const
WALBERLA_HOST_DEVICE const_iterator end () const

Private Attributes

Cell min_
Cell max_

Member Typedef Documentation

◆ const_iterator

using walberla::cell::CellInterval::const_iterator = CellIntervalIterator

Constructor & Destructor Documentation

◆ CellInterval() [1/3]

WALBERLA_HOST_DEVICE walberla::cell::CellInterval::CellInterval ( )
inline

◆ CellInterval() [2/3]

WALBERLA_HOST_DEVICE walberla::cell::CellInterval::CellInterval ( const Cell & _min,
const Cell & _max )
inline

◆ CellInterval() [3/3]

WALBERLA_HOST_DEVICE walberla::cell::CellInterval::CellInterval ( const cell_idx_t _xMin,
const cell_idx_t _yMin,
const cell_idx_t _zMin,
const cell_idx_t _xMax,
const cell_idx_t _yMax,
const cell_idx_t _zMax )
inline

Member Function Documentation

◆ begin()

WALBERLA_HOST_DEVICE CellInterval::const_iterator walberla::cell::CellInterval::begin ( ) const
inline

◆ contains() [1/4]

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::contains ( const Cell & cell) const
inline

◆ contains() [2/4]

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::contains ( const cell_idx_t x,
const cell_idx_t y,
const cell_idx_t z ) const
inline

Returns true only if cell (x,y,z) is contained in the cell interval.

◆ contains() [3/4]

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::contains ( const CellInterval & other) const
inline

◆ contains() [4/4]

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::contains ( const uint_t x,
const uint_t y,
const uint_t z ) const
inline

◆ empty()

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::empty ( ) const
inline

◆ end()

WALBERLA_HOST_DEVICE CellInterval::const_iterator walberla::cell::CellInterval::end ( ) const
inline

◆ expand() [1/2]

WALBERLA_HOST_DEVICE void walberla::cell::CellInterval::expand ( const Cell & numberOfCells)
inline

◆ expand() [2/2]

WALBERLA_HOST_DEVICE void walberla::cell::CellInterval::expand ( const cell_idx_t numberOfCells)
inline

◆ intersect()

WALBERLA_HOST_DEVICE void walberla::cell::CellInterval::intersect ( const CellInterval & other)
inline

◆ max() [1/2]

WALBERLA_HOST_DEVICE Cell & walberla::cell::CellInterval::max ( )
inline

◆ max() [2/2]

WALBERLA_HOST_DEVICE const Cell & walberla::cell::CellInterval::max ( ) const
inline

◆ min() [1/2]

WALBERLA_HOST_DEVICE Cell & walberla::cell::CellInterval::min ( )
inline

◆ min() [2/2]

WALBERLA_HOST_DEVICE const Cell & walberla::cell::CellInterval::min ( ) const
inline

◆ numCells()

WALBERLA_HOST_DEVICE uint_t walberla::cell::CellInterval::numCells ( ) const
inline

◆ operator!=()

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::operator!= ( const CellInterval & rhs) const
inline

◆ operator==()

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::operator== ( const CellInterval & rhs) const
inline

◆ overlaps() [1/3]

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::overlaps ( const CellInterval & other) const
inline

Query if the CellIntervals overlaps with another given CellInterval.

CellIntervals overlap if they booth include at least one common cell.

Parameters
otherThe other CellInterval.
Returns
true if the intervals overlap, false else.

◆ overlaps() [2/3]

bool walberla::cell::CellInterval::overlaps ( const CellSet & cellSet) const

◆ overlaps() [3/3]

bool walberla::cell::CellInterval::overlaps ( const CellVector & cellVector) const

◆ positiveIndicesOnly()

WALBERLA_HOST_DEVICE bool walberla::cell::CellInterval::positiveIndicesOnly ( ) const
inline

◆ shift() [1/3]

WALBERLA_HOST_DEVICE CellInterval & walberla::cell::CellInterval::shift ( const Cell & offset)
inline

◆ shift() [2/3]

WALBERLA_HOST_DEVICE CellInterval & walberla::cell::CellInterval::shift ( const cell_idx_t x,
const cell_idx_t y,
const cell_idx_t z )
inline

diagonal shift

◆ shift() [3/3]

WALBERLA_HOST_DEVICE CellInterval & walberla::cell::CellInterval::shift ( const uint_t x,
const uint_t y,
const uint_t z )
inline

diagonal shift

◆ size()

WALBERLA_HOST_DEVICE uint_t walberla::cell::CellInterval::size ( const uint_t i) const
inline

◆ xMax() [1/2]

WALBERLA_HOST_DEVICE cell_idx_t & walberla::cell::CellInterval::xMax ( )
inline

◆ xMax() [2/2]

WALBERLA_HOST_DEVICE cell_idx_t walberla::cell::CellInterval::xMax ( ) const
inline

◆ xMin() [1/2]

WALBERLA_HOST_DEVICE cell_idx_t & walberla::cell::CellInterval::xMin ( )
inline

◆ xMin() [2/2]

WALBERLA_HOST_DEVICE cell_idx_t walberla::cell::CellInterval::xMin ( ) const
inline

◆ xSize()

WALBERLA_HOST_DEVICE uint_t walberla::cell::CellInterval::xSize ( ) const
inline

◆ yMax() [1/2]

WALBERLA_HOST_DEVICE cell_idx_t & walberla::cell::CellInterval::yMax ( )
inline

◆ yMax() [2/2]

WALBERLA_HOST_DEVICE cell_idx_t walberla::cell::CellInterval::yMax ( ) const
inline

◆ yMin() [1/2]

WALBERLA_HOST_DEVICE cell_idx_t & walberla::cell::CellInterval::yMin ( )
inline

◆ yMin() [2/2]

WALBERLA_HOST_DEVICE cell_idx_t walberla::cell::CellInterval::yMin ( ) const
inline

◆ ySize()

WALBERLA_HOST_DEVICE uint_t walberla::cell::CellInterval::ySize ( ) const
inline

◆ zMax() [1/2]

WALBERLA_HOST_DEVICE cell_idx_t & walberla::cell::CellInterval::zMax ( )
inline

◆ zMax() [2/2]

WALBERLA_HOST_DEVICE cell_idx_t walberla::cell::CellInterval::zMax ( ) const
inline

◆ zMin() [1/2]

WALBERLA_HOST_DEVICE cell_idx_t & walberla::cell::CellInterval::zMin ( )
inline

◆ zMin() [2/2]

WALBERLA_HOST_DEVICE cell_idx_t walberla::cell::CellInterval::zMin ( ) const
inline

◆ zSize()

WALBERLA_HOST_DEVICE uint_t walberla::cell::CellInterval::zSize ( ) const
inline

Member Data Documentation

◆ max_

Cell walberla::cell::CellInterval::max_
private

◆ min_

Cell walberla::cell::CellInterval::min_
private

The documentation for this class was generated from the following files:
  • /builds/administration/walberla-website/walberla/src/core/cell/CellInterval.h
  • /builds/administration/walberla-website/walberla/src/core/cell/CellInterval.cpp