11 #ifndef _MESHREFINE_H_ 12 #define _MESHREFINE_H_ 21 #include "NamespaceHeader.H" 92 const Box& a_baseDomain,
96 const Real a_fillRatio,
98 const int a_blockFactor,
100 const int a_bufferSize,
102 const int a_maxSize);
110 const Real a_fillRatio,
112 const int a_blockFactor,
114 const int a_bufferSize,
116 const int a_maxSize);
123 const Box& a_baseDomain,
127 const Real a_fillRatio,
129 const int a_blockFactor,
131 const int a_bufferSize,
133 const int a_maxSize);
141 const Real a_fillRatio,
143 const int a_blockFactor,
145 const int a_bufferSize,
147 const int a_maxSize);
163 const int a_baseLevel,
165 const int a_topLevel,
184 const int a_baseLevel,
186 const int a_topLevel,
214 virtual void blockFactor(
const int a_block_factor);
217 virtual void bufferSize(
const int a_buffer_size);
220 virtual void maxSize(
const int a_max_size);
247 const int a_totalBufferSize)
const = 0;
276 int a_totalBuffer)
const;
289 const int a_baseLevel,
291 const int a_topLevel,
304 const int a_baseLevel,
306 const int a_topLevel,
351 #include "NamespaceFooter.H" Vector< ProblemDomain > m_vectDomains
Definition: MeshRefine.H:321
virtual void clipBox(Box &a_box, const ProblemDomain &a_domain) const
Vector< IntVectSet > m_pnds
Definition: MeshRefine.H:323
int bufferSize() const
returns proper nesting buffer size
int m_lowestRefineDir
Definition: MeshRefine.H:348
virtual void buildSupport(const ProblemDomain &lvldomain, Vector< Box > &lvlboxes, IntVectSet &modifiedTags)
MeshRefine()
default constructor – leaves object in an unusable state
An irregular domain on an integer lattice.
Definition: IntVectSet.H:44
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
int maxSize() const
returns maximum box size in any dimension – 0 means no limit
Real fillRatio() const
returns fillRatio
virtual ~MeshRefine()
destructor
virtual void makeBoxes(Vector< Box > &a_mesh, const IntVectSet &a_tags, const IntVectSet &a_pnd, const ProblemDomain &a_domain, const int a_maxSize, const int a_totalBufferSize) const =0
constructs a set of boxes which covers a set of tagged cells
int m_blockFactor
Definition: MeshRefine.H:332
Real m_fillRatio
Definition: MeshRefine.H:330
int m_lastBase
Definition: MeshRefine.H:324
void granularity(int a_granularity)
sets proper nesting region granularity.
void setPNDMode(int a_mode)
int m_lastBuffer
Definition: MeshRefine.H:326
void setRefineDirs(const IntVect &a_refineDirs)
set each component to 1 or 0 according to whether or not we refine in that direction. Default IntVect::Unit.
virtual void makePNDs(Vector< IntVectSet > &a_pnds, Vector< int > &a_totalBufferSize, const int a_baseLevel, const int a_topLevel, const Vector< ProblemDomain > &a_domains, const IntVectSet &a_baseMesh, const Vector< int > &a_bufferSize) const
Computes proper nesting domains.
double Real
Definition: REAL.H:33
void define(const Box &a_baseDomain, const Vector< int > &a_refRatios, const Real a_fillRatio, const int a_blockFactor, const int a_bufferSize, const int a_maxSize)
define function – size of RefRatios will define maximum number of levels
virtual bool properlyNested(const Box &a_box, const ProblemDomain &a_domain, const IntVectSet &a_pnd, int a_totalBuffer) const
IntVect m_refineDirs
Definition: MeshRefine.H:345
virtual int regrid(Vector< Vector< Box > > &a_newmeshes, const IntVectSet &a_tags, const int a_baseLevel, const int a_topLevel, const Vector< Vector< Box > > &a_oldMeshes)
create hierarchy of grids from a single level of tags
Vector< int > m_nRefVect
Definition: MeshRefine.H:328
IntVect inRefineDirs(int a_val) const
returns IntVect with component d set to a_val if m_refineDirs[d] == 1; else 1.
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:469
void restrictUnrefined(Box &a_box) const
int m_maxSize
Definition: MeshRefine.H:338
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
const Vector< int > & refRatios() const
returns vector of refinement ratios
int m_lastTop
Definition: MeshRefine.H:325
bool isDefined() const
has this object been defined properly?
virtual void computeLocalBlockFactors()
computes local blockFactors used internally to enforce the BlockFactor
bool m_isDefined
Definition: MeshRefine.H:319
Class which manages grid generation.
Definition: MeshRefine.H:26
int m_PNDMode
Definition: MeshRefine.H:342
int blockFactor() const
returns blocking factor
int m_granularity
Definition: MeshRefine.H:340
Vector< int > m_level_blockfactors
Definition: MeshRefine.H:334
int m_bufferSize
Definition: MeshRefine.H:336