chombo-discharge
Public Member Functions | Protected Attributes | List of all members
MultiFluidIndexSpace Class Reference

Two-fluid index space. More...

#include <CD_MultiFluidIndexSpace.H>

Public Member Functions

 MultiFluidIndexSpace ()
 Weak constructor. Must call define later.
 
virtual ~MultiFluidIndexSpace ()
 Destructor.
 
virtual void define (const Box &a_domain, const RealVect &a_origin, const Real &a_dx, const Vector< GeometryService * > &a_geoservers, const bool a_distributedData, int a_nCellMax=-1, int a_maxCoarsenings=-1, bool a_fixOnlyFirstPhaseRegNextToMultiValued=false)
 Define function. More...
 
const RefCountedPtr< EBIndexSpace > & getEBIndexSpace (const phase::which_phase a_phase) const
 Get a particular EBIndexSpace. More...
 
const RefCountedPtr< EBIndexSpace > & getEBIndexSpace (const int a_phase) const
 Get a particular ebis. More...
 
RefCountedPtr< EBIndexSpace > & getEBIndexSpace (const phase::which_phase a_phase)
 Get a particular ebis. More...
 
RefCountedPtr< EBIndexSpace > & getEBIndexSpace (const int a_phase)
 Get ebis. More...
 
IntVectSet interfaceRegion (const ProblemDomain &a_domain) const
 Get the interface region. This is defined as the intersection between the irregular cells of the gas phase and the other phases. More...
 
int numPhases () const
 Get number of phases.
 

Protected Attributes

Vector< RefCountedPtr< EBIndexSpace > > m_ebis
 EBIndexSpaces.
 
RefCountedPtr< MFIndexSpace > m_multifluidIndexSpace
 MFIndexSpace.
 

Detailed Description

Two-fluid index space.

This is basically a wrapper for using two Chombo EBIndexSpaces in the simulation. It calls Chombo for building the EBIS'.

Member Function Documentation

◆ define()

void MultiFluidIndexSpace::define ( const Box &  a_domain,
const RealVect &  a_origin,
const Real &  a_dx,
const Vector< GeometryService * > &  a_geoservers,
const bool  a_distributedData,
int  a_nCellMax = -1,
int  a_maxCoarsenings = -1,
bool  a_fixOnlyFirstPhaseRegNextToMultiValued = false 
)
virtual

Define function.

Parameters
[in]a_domainFinest domain
[in]a_originLower-left corner
[in]a_dxFinest resolution
[in]a_geoserversGenerators for cut-cells
[in]a_distributedDataSpecial flag for Chombo (passing grid generation to the geometryservice)
[in]a_nCellMaxMinimum number of cells in the coarsening
[in]a_maxCoarseningsMaximum number of coarsenings.
[in]a_fixOnlyFirstPhaseRegNextToMultiValuedSpecial flag for Chombo.

◆ getEBIndexSpace() [1/4]

RefCountedPtr< EBIndexSpace > & MultiFluidIndexSpace::getEBIndexSpace ( const int  a_phase)

Get ebis.

Parameters
[in]a_phasePhase

◆ getEBIndexSpace() [2/4]

const RefCountedPtr< EBIndexSpace > & MultiFluidIndexSpace::getEBIndexSpace ( const int  a_phase) const

Get a particular ebis.

Parameters
[in]a_phasePhase

◆ getEBIndexSpace() [3/4]

RefCountedPtr< EBIndexSpace > & MultiFluidIndexSpace::getEBIndexSpace ( const phase::which_phase  a_phase)

Get a particular ebis.

Parameters
[in]a_phasePhase

◆ getEBIndexSpace() [4/4]

const RefCountedPtr< EBIndexSpace > & MultiFluidIndexSpace::getEBIndexSpace ( const phase::which_phase  a_phase) const

Get a particular EBIndexSpace.

Parameters
[in]a_phasePhase

◆ interfaceRegion()

IntVectSet MultiFluidIndexSpace::interfaceRegion ( const ProblemDomain &  a_domain) const

Get the interface region. This is defined as the intersection between the irregular cells of the gas phase and the other phases.

Parameters
[in]a_domainDomain

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