BBox Class Reference

Implementation of a rectangular region in the computational domain in global index coordinates. More...

#include <BBox.h>

List of all members.

Public Member Functions

 BBox (void)
 BBox (const int r, const int s)
 BBox (const int r, Coords const &s)
 BBox (Coords const &l, Coords const &u, const int s)
 BBox (const int r, const int *l, const int *u, const int s)
 BBox (Coords const &l, Coords const &u, Coords const &s)
 BBox (const int r, const int *l, const int *u, const int *s)
 BBox (BBox const &other)
 BBox (const int r, const int i, const int ii, const int s)
 BBox (const int r, const int i, const int j, const int ii, const int jj, const int s)
 BBox (const int r, const int i, const int j, const int k, const int ii, const int jj, const int kk, const int s)
 BBox (const int r, const int i, const int j, const int ii, const int jj, const int s, const int ss)
 BBox (const int r, const int i, const int j, const int k, const int ii, const int jj, const int kk, const int s, const int ss, const int sss)
BBoxoperator= (const BBox &other)
 ~BBox ()
void setempty ()
void setlower (Coords const &l)
void setlower (const int *l)
void setupper (Coords const &u)
void setupper (const int *u)
void setbbox (const int *l, const int *u)
void setbbox (Coords const &l, Coords const &u)
void setbbox (BBox const &other)
Coords const & lower () const
Coords const & upper () const
int lower (const int i) const
int upper (const int i) const
Coordslower ()
Coordsupper ()
int & lower (const int i)
int & upper (const int i)
Coords const & stepsize (void) const
Coordsstepsize (void)
int stepsize (const int i) const
int & stepsize (const int i)
void setstepsize (const int i, const int s)
void setstepsize (Coords const &s)
void setstepsize (const int s)
int extents (const int i) const
Coords extents () const
int empty () const
int bottom (void) const
int size () const
int compatible (BBox const &rhs, const int d) const
int mergable (BBox const &rhs, const int d, const int olap) const
int mergable (BBox const &rhs, const short *olap) const
BBoxoperator+= (Coords const &rhs)
BBox operator+ (Coords const &rhs) const
BBoxoperator+= (BBox const &rhs)
BBox operator+ (BBox const &rhs) const
BBoxoperator*= (BBox const &rhs)
BBox operator* (BBox const &rhs) const
int intersects (BBox const &rhs) const
int operator== (BBox const &rhs) const
int operator!= (BBox const &rhs) const
int inside (const int i) const
int inside (const int i, const int j) const
int inside (const int i, const int j, const int k) const
int inside (const int *c) const
int inside (Coords const &c) const
int interior (const int i) const
int interior (const int i, const int j) const
int interior (const int i, const int j, const int k) const
int interior (const int *c) const
int interior (Coords const &c) const
int operator> (BBox const &rhs) const
int operator>= (BBox const &rhs) const
int operator< (BBox const &rhs) const
int operator<= (BBox const &rhs) const
void accrete (const int i)
void grow (const int i)
void accrete (Coords const &c)
void grow (Coords const &c)
void growbydim (const short *c)
void shrinkbydim (const short *c)
void growupper (const int i)
void growlower (const int i)
void growupper (Coords const &c)
void growlower (Coords const &c)
void growupper (const int d, const int i)
void growlower (const int d, const int i)
void growupperbydim (const short *c)
void growlowerbydim (const short *c)
void shrinkupperbydim (const short *c)
void shrinklowerbydim (const short *c)
void shift (const int c)
void shift (Coords const &c)
void shift (const int d, const int c)
void coarsen (const int by)
void coarsen (Coords const &by)
void coarsen (const int d, const int by)
void refine (const int by)
void refine (Coords const &by)
void refine (const int by, const int olap)
void refine (const int by, const short *olap)
void refine (const int d, const int by, const int olap)

Public Attributes

int rank

Static Public Attributes

static class BBox _empty_bbox

Friends

std::istream & operator>> (std::istream &, BBox &)
std::ostream & operator<< (std::ostream &, BBox const &)
std::ifstream & operator>> (std::ifstream &, BBox &)
std::ofstream & operator<< (std::ofstream &, const BBox &)
std::stringstream & operator>> (std::stringstream &, BBox &)
std::stringstream & operator<< (std::stringstream &, const BBox &)

Detailed Description

Implementation of a rectangular region in the computational domain in global index coordinates.

This class is sort of an adaptation and extension of the from Class RegionX of LPARX developed by Scott Kohn (skohn-at-cs.ucsd.edu)

Author:
Manish Parashar, Ralf Deiterding (minor changes)

Constructor & Destructor Documentation

BBox::BBox ( void   )  [inline]
BBox::BBox ( const int  r,
const int  s 
) [inline]
BBox::BBox ( const int  r,
Coords const &  s 
) [inline]
BBox::BBox ( Coords const &  l,
Coords const &  u,
const int  s 
) [inline]
BBox::BBox ( const int  r,
const int *  l,
const int *  u,
const int  s 
) [inline]
BBox::BBox ( Coords const &  l,
Coords const &  u,
Coords const &  s 
) [inline]
BBox::BBox ( const int  r,
const int *  l,
const int *  u,
const int *  s 
) [inline]
BBox::BBox ( BBox const &  other  )  [inline]
BBox::BBox ( const int  r,
const int  i,
const int  ii,
const int  s 
) [inline]
BBox::BBox ( const int  r,
const int  i,
const int  j,
const int  ii,
const int  jj,
const int  s 
) [inline]
BBox::BBox ( const int  r,
const int  i,
const int  j,
const int  k,
const int  ii,
const int  jj,
const int  kk,
const int  s 
) [inline]
BBox::BBox ( const int  r,
const int  i,
const int  j,
const int  ii,
const int  jj,
const int  s,
const int  ss 
) [inline]
BBox::BBox ( const int  r,
const int  i,
const int  j,
const int  k,
const int  ii,
const int  jj,
const int  kk,
const int  s,
const int  ss,
const int  sss 
) [inline]
BBox::~BBox (  )  [inline]

Member Function Documentation

void BBox::accrete ( Coords const &  c  )  [inline]

References empty().

void BBox::accrete ( const int  i  )  [inline]

References empty().

int BBox::bottom ( void   )  const [inline]

References rank.

void BBox::coarsen ( const int  d,
const int  by 
) [inline]

References empty().

void BBox::coarsen ( Coords const &  by  )  [inline]

References empty(), Coords::rank, and rank.

int BBox::compatible ( BBox const &  rhs,
const int  d 
) const [inline]

Referenced by mergable().

int BBox::empty (  )  const [inline]

References rank.

Referenced by accrete(), accrete(), coarsen(), coarsen(), GridData< Type, 3 >::copy(), GridData< Type, 2 >::copy(), GridData< Type, 1 >::copy(), GridHierarchy::DAGH_CreateGridUnitList(), GridHierarchy::DAGH_RecomposeHierarchy(), DAGHCluster(), DAGHIO_HDF_NCSA_Read(), DAGHIO_HDF_NCSA_Write(), GridData< Type, 3 >::divide(), GridData< Type, 2 >::divide(), GridData< Type, 1 >::divide(), GridData< Type, 3 >::equals(), GridData< Type, 2 >::equals(), GridData< Type, 1 >::equals(), GridBox::gbBBox(), GridFunction< GFType, dim >::GF_AdaptiveBndryUpdate(), GridFunction< GFType, dim >::GF_Prolong(), GridFunction< GFType, dim >::GF_Read(), GridFunction< GFType, dim >::GF_ReadGhosts(), GridFunction< GFType, dim >::GF_Restrict(), GridFunction< GFType, dim >::GF_Write(), grow(), grow(), growbydim(), growbydim(), growlower(), growlower(), growlowerbydim(), growlowerbydim(), growupper(), growupper(), growupperbydim(), growupperbydim(), GridUnit::guBBox(), GridUnit::guBBoxAbs(), GhostInteraction::Ibbox(), GhostInteraction::IbboxFrom(), GridUnitList::intersect(), GridBoxList::intersect(), intersects(), GridData< Type, 3 >::is_eq(), GridData< Type, 2 >::is_eq(), GridData< Type, 1 >::is_eq(), GridData< Type, 3 >::is_ge(), GridData< Type, 2 >::is_ge(), GridData< Type, 1 >::is_ge(), GridData< Type, 3 >::is_gt(), GridData< Type, 2 >::is_gt(), GridData< Type, 1 >::is_gt(), GridData< Type, 3 >::is_le(), GridData< Type, 2 >::is_le(), GridData< Type, 1 >::is_le(), GridData< Type, 3 >::is_lt(), GridData< Type, 2 >::is_lt(), GridData< Type, 1 >::is_lt(), GridData< Type, 3 >::is_neq(), GridData< Type, 2 >::is_neq(), GridData< Type, 1 >::is_neq(), GridData< Type, 3 >::lin_interp(), GridData< Type, 2 >::lin_interp(), GridData< Type, 1 >::lin_interp(), GridData< Type, 3 >::maxabs(), GridData< Type, 2 >::maxabs(), GridData< Type, 1 >::maxabs(), GridData< Type, 3 >::maximum(), GridData< Type, 2 >::maximum(), GridData< Type, 1 >::maximum(), GridData< Type, 3 >::maxval(), GridData< Type, 2 >::maxval(), GridData< Type, 1 >::maxval(), BBoxList::mergeboxes(), GridData< Type, 3 >::minimum(), GridData< Type, 2 >::minimum(), GridData< Type, 1 >::minimum(), GridData< Type, 3 >::minus(), GridData< Type, 2 >::minus(), GridData< Type, 1 >::minus(), GridData< Type, 3 >::minval(), GridData< Type, 2 >::minval(), GridData< Type, 1 >::minval(), GridData< Type, 3 >::moment1(), GridData< Type, 2 >::moment1(), GridData< Type, 1 >::moment1(), GridData< Type, 3 >::multiply(), GridData< Type, 2 >::multiply(), GridData< Type, 1 >::multiply(), GridUnitList::operator*=(), operator+=(), operator<<(), operator==(), GridData< Type, 3 >::plus(), GridData< Type, 2 >::plus(), GridData< Type, 1 >::plus(), GridData< Type, 3 >::product(), GridData< Type, 2 >::product(), GridData< Type, 1 >::product(), refine(), GridUnitList::refinelist(), GridUnitList::refinethislist(), shift(), shift(), shiftabs(), shrinkbydim(), shrinkbydim(), shrinklowerbydim(), shrinklowerbydim(), shrinkupperbydim(), shrinkupperbydim(), size(), GridData< Type, 3 >::sum(), GridData< Type, 2 >::sum(), GridData< Type, 1 >::sum(), GridData< Type, 3 >::sumabs(), GridData< Type, 2 >::sumabs(), GridData< Type, 1 >::sumabs(), GridData< Type, 3 >::sumsqrd(), GridData< Type, 2 >::sumsqrd(), and GridData< Type, 1 >::sumsqrd().

Coords BBox::extents (  )  const [inline]
void BBox::grow ( Coords const &  c  )  [inline]

References empty().

void BBox::growbydim ( const short *  c  )  [inline]

References empty(), and rank.

void BBox::growlower ( const int  d,
const int  i 
) [inline]

References empty().

void BBox::growlower ( Coords const &  c  )  [inline]

References empty().

void BBox::growlower ( const int  i  )  [inline]

References empty().

Referenced by partition_one().

void BBox::growlowerbydim ( const short *  c  )  [inline]

References empty(), and rank.

void BBox::growupper ( const int  d,
const int  i 
) [inline]

References empty().

void BBox::growupper ( Coords const &  c  )  [inline]

References empty().

void BBox::growupper ( const int  i  )  [inline]
void BBox::growupperbydim ( const short *  c  )  [inline]
int BBox::inside ( Coords const &  c  )  const [inline]

References inside().

int BBox::inside ( const int *  c  )  const [inline]

References rank.

int BBox::inside ( const int  i,
const int  j,
const int  k 
) const [inline]
int BBox::inside ( const int  i,
const int  j 
) const [inline]
int BBox::inside ( const int  i  )  const [inline]
int BBox::interior ( Coords const &  c  )  const [inline]

References interior().

int BBox::interior ( const int *  c  )  const [inline]

References rank.

int BBox::interior ( const int  i,
const int  j,
const int  k 
) const [inline]
int BBox::interior ( const int  i,
const int  j 
) const [inline]
int BBox::interior ( const int  i  )  const [inline]

Referenced by interior().

int& BBox::lower ( const int  i  )  [inline]
Coords& BBox::lower (  )  [inline]
int BBox::lower ( const int  i  )  const [inline]
Coords const& BBox::lower (  )  const [inline]

Referenced by accrete(), GridData< Type, 3 >::copy(), GridData< Type, 2 >::copy(), GridData< Type, 1 >::copy(), GridHierarchy::DAGH_ComposeHierarchy(), GridHierarchy::DAGH_CreateBBoxList(), GridHierarchy::DAGH_CreateGridUnitList(), GridHierarchy::DAGH_RecomposeHierarchy(), GridHierarchy::DAGH_SetBaseGrid(), DAGHIO_HDF_NCSA_Read(), DAGHIO_HDF_NCSA_Write(), GridBoxList::difference(), BBoxList::difference(), GridData< Type, 3 >::divide(), GridData< Type, 2 >::divide(), GridData< Type, 1 >::divide(), GridData< Type, 3 >::equals(), GridData< Type, 2 >::equals(), GridData< Type, 1 >::equals(), gdbAlignBBox(), GridFunction< GFType, dim >::GF_ExternalBndryUpdate(), GridFunction< GFType, dim >::GF_ReadGhosts(), grow(), growbydim(), growlower(), growlowerbydim(), growupper(), GhostInteraction::Ibbox(), GhostInteraction::IbboxFrom(), GridData< Type, 3 >::is_eq(), GridData< Type, 2 >::is_eq(), GridData< Type, 1 >::is_eq(), GridData< Type, 3 >::is_ge(), GridData< Type, 2 >::is_ge(), GridData< Type, 1 >::is_ge(), GridData< Type, 3 >::is_gt(), GridData< Type, 2 >::is_gt(), GridData< Type, 1 >::is_gt(), GridData< Type, 3 >::is_le(), GridData< Type, 2 >::is_le(), GridData< Type, 1 >::is_le(), GridData< Type, 3 >::is_lt(), GridData< Type, 2 >::is_lt(), GridData< Type, 1 >::is_lt(), GridData< Type, 3 >::is_neq(), GridData< Type, 2 >::is_neq(), GridData< Type, 1 >::is_neq(), GridHierarchy::llb(), lower(), GridFunction< GFType, dim >::Map(), GridFunction< GFType, dim >::MapId(), GridData< Type, 3 >::maximum(), GridData< Type, 2 >::maximum(), GridData< Type, 1 >::maximum(), GridData< Type, 3 >::minimum(), GridData< Type, 2 >::minimum(), GridData< Type, 1 >::minimum(), GridData< Type, 3 >::minus(), GridData< Type, 2 >::minus(), GridData< Type, 1 >::minus(), GridData< Type, 3 >::multiply(), GridData< Type, 2 >::multiply(), GridData< Type, 1 >::multiply(), operator<<(), operator>(), operator>=(), partition_all(), partition_two(), GridData< Type, 3 >::plus(), GridData< Type, 2 >::plus(), GridData< Type, 1 >::plus(), pwalker_partition(), shift(), shiftabs(), shrinkbydim(), shrinklowerbydim(), GridHierarchy::worldCoords(), GridHierarchy::worldCoordsLower(), GridHierarchy::worldCoordsUpper(), and GridHierarchy::wub().

int BBox::mergable ( BBox const &  rhs,
const short *  olap 
) const [inline]

References mergable(), and rank.

int BBox::mergable ( BBox const &  rhs,
const int  d,
const int  olap 
) const [inline]

References compatible(), and rank.

Referenced by mergable(), and BBoxList::mergeboxes().

int BBox::operator!= ( BBox const &  rhs  )  const [inline]
BBox BBox::operator* ( BBox const &  rhs  )  const [inline]

References Coords::max(), and Coords::min().

BBox& BBox::operator*= ( BBox const &  rhs  )  [inline]

References Coords::max(), and Coords::min().

BBox BBox::operator+ ( BBox const &  rhs  )  const [inline]

References bbox().

BBox BBox::operator+ ( Coords const &  rhs  )  const [inline]

References bbox().

BBox& BBox::operator+= ( BBox const &  rhs  )  [inline]

References empty(), Coords::max(), and Coords::min().

BBox& BBox::operator+= ( Coords const &  rhs  )  [inline]

References empty(), Coords::max(), and Coords::min().

int BBox::operator< ( BBox const &  rhs  )  const [inline]

References inside().

int BBox::operator<= ( BBox const &  rhs  )  const [inline]

References inside().

BBox& BBox::operator= ( const BBox other  )  [inline]

References rank.

int BBox::operator== ( BBox const &  rhs  )  const [inline]

References empty().

int BBox::operator> ( BBox const &  rhs  )  const [inline]

References inside(), lower(), and upper().

int BBox::operator>= ( BBox const &  rhs  )  const [inline]

References inside(), lower(), and upper().

void BBox::refine ( const int  d,
const int  by,
const int  olap 
) [inline]

References growupper().

void BBox::refine ( const int  by,
const short *  olap 
) [inline]

References growupper(), and growupperbydim().

void BBox::refine ( const int  by,
const int  olap 
) [inline]

References growupper().

void BBox::refine ( Coords const &  by  )  [inline]

References growupper().

void BBox::setbbox ( BBox const &  other  )  [inline]

References rank.

void BBox::setbbox ( Coords const &  l,
Coords const &  u 
) [inline]
void BBox::setbbox ( const int *  l,
const int *  u 
) [inline]

References setlower(), and setupper().

void BBox::setempty (  )  [inline]
void BBox::setlower ( const int *  l  )  [inline]

References rank.

void BBox::setlower ( Coords const &  l  )  [inline]

Referenced by pwalker_partition(), and setbbox().

void BBox::setstepsize ( const int  s  )  [inline]

References Coords::setval().

void BBox::setstepsize ( Coords const &  s  )  [inline]
void BBox::setstepsize ( const int  i,
const int  s 
) [inline]

Referenced by GridData< Type, 3 >::copy(), GridData< Type, 2 >::copy(), GridData< Type, 1 >::copy(), GridHierarchy::DAGH_RecomposeHierarchy(), GridData< Type, 3 >::divide(), GridData< Type, 2 >::divide(), GridData< Type, 1 >::divide(), GridData< Type, 3 >::equals(), GridData< Type, 2 >::equals(), GridData< Type, 1 >::equals(), GridData< Type, 3 >::is_eq(), GridData< Type, 2 >::is_eq(), GridData< Type, 1 >::is_eq(), GridData< Type, 3 >::is_ge(), GridData< Type, 2 >::is_ge(), GridData< Type, 1 >::is_ge(), GridData< Type, 3 >::is_gt(), GridData< Type, 2 >::is_gt(), GridData< Type, 1 >::is_gt(), GridData< Type, 3 >::is_le(), GridData< Type, 2 >::is_le(), GridData< Type, 1 >::is_le(), GridData< Type, 3 >::is_lt(), GridData< Type, 2 >::is_lt(), GridData< Type, 1 >::is_lt(), GridData< Type, 3 >::is_neq(), GridData< Type, 2 >::is_neq(), GridData< Type, 1 >::is_neq(), GridData< Type, 3 >::maxabs(), GridData< Type, 2 >::maxabs(), GridData< Type, 1 >::maxabs(), GridData< Type, 3 >::maximum(), GridData< Type, 2 >::maximum(), GridData< Type, 1 >::maximum(), GridData< Type, 3 >::maxval(), GridData< Type, 2 >::maxval(), GridData< Type, 1 >::maxval(), GridData< Type, 3 >::minimum(), GridData< Type, 2 >::minimum(), GridData< Type, 1 >::minimum(), GridData< Type, 3 >::minus(), GridData< Type, 2 >::minus(), GridData< Type, 1 >::minus(), GridData< Type, 3 >::minval(), GridData< Type, 2 >::minval(), GridData< Type, 1 >::minval(), GridData< Type, 3 >::moment1(), GridData< Type, 2 >::moment1(), GridData< Type, 1 >::moment1(), GridData< Type, 3 >::multiply(), GridData< Type, 2 >::multiply(), GridData< Type, 1 >::multiply(), GridData< Type, 3 >::plus(), GridData< Type, 2 >::plus(), GridData< Type, 1 >::plus(), GridData< Type, 3 >::product(), GridData< Type, 2 >::product(), GridData< Type, 1 >::product(), pwalker_partition(), GridData< Type, 3 >::sum(), GridData< Type, 2 >::sum(), GridData< Type, 1 >::sum(), GridData< Type, 3 >::sumabs(), GridData< Type, 2 >::sumabs(), GridData< Type, 1 >::sumabs(), GridData< Type, 3 >::sumsqrd(), GridData< Type, 2 >::sumsqrd(), and GridData< Type, 1 >::sumsqrd().

void BBox::setupper ( const int *  u  )  [inline]

References rank.

void BBox::setupper ( Coords const &  u  )  [inline]

Referenced by pwalker_partition(), and setbbox().

void BBox::shift ( const int  d,
const int  c 
) [inline]

References empty().

void BBox::shift ( Coords const &  c  )  [inline]

References empty().

void BBox::shift ( const int  c  )  [inline]

References empty().

void BBox::shrinkbydim ( const short *  c  )  [inline]
void BBox::shrinklowerbydim ( const short *  c  )  [inline]

References empty(), and rank.

void BBox::shrinkupperbydim ( const short *  c  )  [inline]
int& BBox::stepsize ( const int  i  )  [inline]
int BBox::stepsize ( const int  i  )  const [inline]
Coords& BBox::stepsize ( void   )  [inline]
int& BBox::upper ( const int  i  )  [inline]
Coords& BBox::upper (  )  [inline]
int BBox::upper ( const int  i  )  const [inline]

Friends And Related Function Documentation

std::stringstream& operator<< ( std::stringstream &  s,
const BBox bb 
) [friend]
std::ofstream& operator<< ( std::ofstream &  s,
const BBox bb 
) [friend]
std::ostream& operator<< ( std::ostream &  s,
BBox const &  bb 
) [friend]
std::stringstream& operator>> ( std::stringstream &  s,
BBox bb 
) [friend]
std::ifstream& operator>> ( std::ifstream &  s,
BBox bb 
) [friend]
std::istream& operator>> ( std::istream &  s,
BBox bb 
) [friend]

Member Data Documentation


The documentation for this class was generated from the following file:
Generated on Thu Jun 30 02:19:00 2016 for AMROC's Hierachical Data Structures by  doxygen 1.6.3