|
virtual | ~MultiBlockMeshRefine () |
| Destructor. More...
|
|
| MultiBlockMeshRefine (const ProblemDomain &a_baseDomain, RealVect dxCoarse, const RefCountedPtr< MultiBlockCoordSysFactory > &a_factory, const Vector< int > &a_refRatios, const Real a_fillRatio, const int a_blockFactor, const int a_bufferSize, const int a_maxSize) |
| Full constructor – leaves object in usable state. More...
|
|
| BRMeshRefine () |
| Default constructor – leaves object in an unusable state. More...
|
|
| BRMeshRefine (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) |
| Full constructor – leaves object in usable state. More...
|
|
| BRMeshRefine (const ProblemDomain &a_baseDomain, const Vector< int > &a_refRatios, const Real a_fillRatio, const int a_blockFactor, const int a_bufferSize, const int a_maxSize) |
| Full constructor – leaves object in usable state. More...
|
|
virtual | ~BRMeshRefine () |
| Destructor. More...
|
|
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. More...
|
|
void | define (const ProblemDomain &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. More...
|
|
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 |
| Constructs a set of boxes which covers a set of tagged cells. More...
|
|
void | makeBoxes (std::list< Box > &a_mesh, IntVectSet &a_tags, const IntVectSet &a_pnd, const ProblemDomain &a_domain, const int a_maxSize, const int a_depth, const int a_totalBufferSize) const |
|
| MeshRefine () |
| default constructor – leaves object in an unusable state More...
|
|
| MeshRefine (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) |
| full constructor – leaves object in usable state More...
|
|
| MeshRefine (const ProblemDomain &a_baseDomain, const Vector< int > &a_refRatios, const Real a_fillRatio, const int a_blockFactor, const int a_bufferSize, const int a_maxSize) |
| full constructor – leaves object in usable state More...
|
|
virtual | ~MeshRefine () |
| destructor More...
|
|
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 More...
|
|
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 More...
|
|
virtual int | regrid (Vector< Vector< Box > > &a_newmeshes, Vector< IntVectSet > &a_tags, const int a_baseLevel, const int a_topLevel, const Vector< Vector< Box > > &a_oldMeshes) |
| create hierarchy of grids from tags at all levels More...
|
|
const Vector< int > & | refRatios () const |
| returns vector of refinement ratios More...
|
|
Real | fillRatio () const |
| returns fillRatio More...
|
|
int | blockFactor () const |
| returns blocking factor More...
|
|
int | bufferSize () const |
| returns proper nesting buffer size More...
|
|
int | maxSize () const |
| returns maximum box size in any dimension – 0 means no limit More...
|
|
void | refRatios (const Vector< int > &a_nRefVect) |
| sets vector of refinement ratios More...
|
|
virtual void | fillRatio (const Real a_fill_ratio) |
| sets fillRatio More...
|
|
virtual void | blockFactor (const int a_block_factor) |
| sets blocking factor More...
|
|
virtual void | bufferSize (const int a_buffer_size) |
| sets proper nesting buffer size More...
|
|
virtual void | maxSize (const int a_max_size) |
| sets maximum box size in any dimension – 0 means no limit More...
|
|
bool | isDefined () const |
| has this object been defined properly? More...
|
|
void | granularity (int a_granularity) |
| sets proper nesting region granularity. More...
|
|
void | setPNDMode (int a_mode) |
|
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. More...
|
|
IntVect | inRefineDirs (int a_val) const |
| returns IntVect with component d set to a_val if m_refineDirs[d] == 1; else 1. More...
|
|
void | restrictUnrefined (Box &a_box) const |
|
void | restrictUnrefined (IntVectSet &a_ivs) const |
|
|
virtual bool | properlyNested (const Box &a_box, const ProblemDomain &a_domain, const IntVectSet &a_pnd, int a_totalBufferSize) const |
| This one is to let Mapped Multiblock grids respect the PND across mapped boundaries. More...
|
|
virtual void | buildSupport (const ProblemDomain &lvldomain, Vector< Box > &lvlboxes, IntVectSet &modifiedTags) |
| These two are to get the tagging to respect Mapped Boundaries. More...
|
|
virtual void | clipBox (Box &a_box, const ProblemDomain &a_domain) const |
|
const MultiBlockCoordSys * | getCoords (const ProblemDomain &a_lvldomain) const |
|
| MultiBlockMeshRefine () |
|
void | splitBox (std::list< Box > &a_boxes, const std::list< Box >::iterator &a_boxindex, const int a_dimension, const int a_maxboxsize) const |
|
void | splitBox (std::list< Box > &a_boxes, const std::list< Box >::iterator &a_boxindex, const int a_maxboxsize) const |
|
Vector< int > | makeTrace (const IntVectSet &a_Ivs, int a_dir) const |
|
void | makeTraces (const IntVectSet &a_Ivs, Vector< int > *a_traces) const |
|
int | findSplit (const Vector< int > &a_trace) const |
|
int | findSplit (const Vector< int > &a_trace, const int a_maxSize) const |
|
int | findMaxInflectionPoint (const Vector< int > &a_trace, int &a_maxVal) const |
|
int | findMaxInflectionPoint (const Vector< int > &a_trace, int &a_maxVal, const int a_maxSize) const |
|
void | splitTags (const IntVectSet &a_tags, const int a_split_dir, const int a_split_indx, IntVectSet &a_tags_lo, IntVectSet &a_tags_hi) const |
|
void | splitTagsInPlace (const int a_split_dir, const int a_split_indx, IntVectSet &a_tags_inout_lo, IntVectSet &a_tags_hi) const |
|
void | splitTagsInBestDimension (IntVectSet &a_tags_inout_lo, IntVectSet &a_tags_hi, const int a_maxSize) const |
|
void | breakBoxes (Vector< Box > &a_vboxin, const int &a_maxSize, const int &a_idir) const |
|
int | maxloc (const int *a_V, const int a_Size) const |
|
void | makeBoxesParallel (std::list< Box > &a_mesh, IntVectSet &a_tags, const IntVectSet &a_pnd, const ProblemDomain &a_domain, const int a_maxSize, const int a_depth, const int a_totalBufferSize, const int a_minSize, const Interval &a_procInterval) const |
|
void | sendBoxesParallel (const std::list< Box > &a_mesh, int tag) const |
|
void | receiveBoxesParallel (const Interval &a_from, const Interval &a_to, std::list< Box > &a_mesh, int tag) const |
|
int | longsideRefineDirs (const Box &a_bx, int &a_dir) const |
|
virtual void | computeLocalBlockFactors () |
| computes local blockFactors used internally to enforce the BlockFactor More...
|
|
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. More...
|
|
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 Vector< Box > &a_baseMesh, const Vector< int > &a_bufferSize) const |
|
A BRMeshRefine algorithm for MultiBlock domains. Only needs to cleverly intercept the virtual makePND operation.
bvs: March 2012