class DenseIntVectSet


Inheritance:

DenseIntVectSet


public members:

DenseIntVectSet()
DenseIntVectSet(const Box& a_domain, bool init = true)
DenseIntVectSet & operator-=(const Box& box )
DenseIntVectSet & operator-=(const IntVect& intvect)
DenseIntVectSet & operator-=(const DenseIntVectSet & ivs)
DenseIntVectSet & operator&=(const Box& box )
DenseIntVectSet & operator&=(const ProblemDomain & domain)
DenseIntVectSet & operator|=(const IntVect& intvect)
DenseIntVectSet & operator|=(const Box& b)
DenseIntVectSet & operator|=(const DenseIntVectSet & b)
DenseIntVectSet & operator&=(const DenseIntVectSet & ivs)
void shift(const IntVect& iv)
bool contains(const Box& box ) const
void coarsen(int iref)
void refine(int iref)
void grow(int igrow)
void grow(int idir, int igrow)
DenseIntVectSet chop(int dir, int chop_pnt)
void nestingRegion(int a_radius, const Box& a_domain)
void nestingRegion(int a_radius, const ProblemDomain & a_domain)
bool isEmpty() const
bool isFull() const
int numPts() const
Vector <Box> createBoxes() const
void compact() const

Documentation

Performance-oriented class that reproduces most of the functionality of IntVectSet. The one function that is not supported is union (|= ). This object stores a dense representation of an IntVectSet over the box of definition
DenseIntVectSet (const Box& a_domain, bool init = true)
you can either have the domain begin all true, or all false

DenseIntVectSet & operator-= (const Box& box )
make this set the complement of itself and the input

DenseIntVectSet & operator-= (const IntVect& intvect)
make this set the complement of itself and the input

DenseIntVectSet & operator-= (const DenseIntVectSet & ivs)
make this set the complement of itself and the input

DenseIntVectSet & operator&= (const Box& box )
make this set the intersection of itself and the input

DenseIntVectSet & operator&= (const ProblemDomain & domain)
make this set the intersection of itself and the input

DenseIntVectSet & operator|= (const IntVect& intvect)
make this set the union of itself and the input. intvect MUST be within the domain of of the DenseIntVectSet or this will throw an error

DenseIntVectSet & operator|= (const Box& b)
make this set the union of itself and the input. b MUST be within the domain of of the DenseIntVectSet or this will throw an error

DenseIntVectSet & operator|= (const DenseIntVectSet & b)
make this set the union of itself and the input. resulting DenseIntVectSet has domain of the minBox holding both oeprator and operand

DenseIntVectSet & operator&= (const DenseIntVectSet & ivs)
make this set the intersection of itself and the input

void shift (const IntVect& iv)
Shift every cell in the set by the input.

bool contains (const Box& box ) const
returns 'true' if the entire set of points specified by the box 'b' is a member of the IntvectSet

void coarsen (int iref)
coarsen the set by the input

void refine (int iref)
refine the set by the input

void grow (int igrow)
grow the set by the input

void grow (int idir, int igrow)
grow the set by the input

DenseIntVectSet chop (int dir, int chop_pnt)
Chop the DenseIntVectSet at the chop_pnt in the dir direction
Returns one DenseIntVectSet and modifies the object DenseIntVectSet.
The union of the two is the original IntVectSet.
The modified DenseIntVectSet is the low end, the returned DenseIntvectSet
is the high end.

void nestingRegion (int a_radius, const Box& a_domain)
see IntVectSet

void nestingRegion (int a_radius, const ProblemDomain & a_domain)
see IntVectSet

bool isEmpty () const
return true if the set has no points

bool isFull () const
return true if the set consists of a set of a full box

int numPts () const
return the number of points in the set

Vector <Box> createBoxes () const
turn DenseIntVectSet into a Vector of Boxes

void compact () const
set object to its minimum representation. changes data, but is a logically const operation


this class has no child classes.

alphabetic index hierarchy of classes


Chombo

Copyright Notice

This software is copyright (C) by the Lawrence Berkeley National Laboratory. Permission is granted to reproduce this software for non-commercial purposes provided that this notice is left intact.

It is acknowledged that the U.S. Government has rights to this software under Contract DE-AC03-765F00098 between the U.S. Department of Energy and the University of California.

This software is provided as a professional and academic contribution for joint exchange. Thus it is experimental, is provided ``as is'', with no warranties of any kind whatsoever, no support, no promise of updates, or printed documentation. By using this software, you acknowledge that the Lawrence Berkeley National Laboratory and Regents of the University of California shall have no liability with respect to the infringement of other copyrights by any part of this software.