MultiBlockMeshRefine Class Reference

#include <MultiBlockMeshRefine.H>

Inheritance diagram for MultiBlockMeshRefine:

Inheritance graph
[legend]

List of all members.


Detailed Description

A BRMeshRefine algorithm for MultiBlock domains. Only needs to cleverly intercept the virtual makePND operation.

bvs: March 2012

Public Member Functions

virtual ~MultiBlockMeshRefine ()
 Destructor.
 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.

Protected Member Functions

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.
virtual void buildSupport (const ProblemDomain &lvldomain, Vector< Box > &lvlboxes, IntVectSet &modifiedTags)
 These two are to get the tagging to respect Mapped Boundaries.
virtual void clipBox (Box &a_box, const ProblemDomain &a_domain) const
const MultiBlockCoordSysgetCoords (const ProblemDomain &a_lvldomain) const
 MultiBlockMeshRefine ()

Protected Attributes

RefCountedPtr
< MultiBlockCoordSysFactory
m_factory
std::map< ProblemDomain,
MultiBlockCoordSys * > 
m_coords
RealVect m_dxCoarse


Constructor & Destructor Documentation

virtual MultiBlockMeshRefine::~MultiBlockMeshRefine (  )  [virtual]

Destructor.

MultiBlockMeshRefine::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.

Parameters:
a_baseDomain  Level 0 domain. used to index into factory object for levels
dxCoarse  level 0 grid spacing. needed for mapping information
a_refRatios  Refinement ratios -- refRatio[0] is btwn levels 0 and 1
a_fillRatio  Measure of how efficiently tagged cells will be covered
a_blockFactor  Amount by which grids are guaranteed to be coarsenable
a_bufferSize  Proper nesting buffer amount
a_maxSize  Maximum grid length in any direction -- 0 means no limit.

MultiBlockMeshRefine::MultiBlockMeshRefine (  )  [inline, protected]

Implementation/helper class Default constructor -- leaves object in an unusable state. not callable by outside classes strong construction only for now.


Member Function Documentation

virtual bool MultiBlockMeshRefine::properlyNested ( const Box a_box,
const ProblemDomain a_domain,
const IntVectSet a_pnd,
int  a_totalBufferSize 
) const [protected, virtual]

This one is to let Mapped Multiblock grids respect the PND across mapped boundaries.

Reimplemented from MeshRefine.

virtual void MultiBlockMeshRefine::buildSupport ( const ProblemDomain lvldomain,
Vector< Box > &  lvlboxes,
IntVectSet modifiedTags 
) [protected, virtual]

These two are to get the tagging to respect Mapped Boundaries.

Reimplemented from MeshRefine.

virtual void MultiBlockMeshRefine::clipBox ( Box a_box,
const ProblemDomain a_domain 
) const [protected, virtual]

Reimplemented from MeshRefine.

const MultiBlockCoordSys* MultiBlockMeshRefine::getCoords ( const ProblemDomain a_lvldomain  )  const [protected]


Member Data Documentation


The documentation for this class was generated from the following file:

Generated on Thu May 25 03:27:16 2017 for Chombo + EB + MF by  doxygen 1.5.5