Chombo + EB + MF  3.2
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
EBNormalizeByVolumeFraction Class Reference

#include <EBNormalizeByVolumeFraction.H>

Public Member Functions

 EBNormalizeByVolumeFraction (const EBLevelGrid &a_eblg, const LevelData< EBCellFAB > *a_data=NULL, const int a_radius=1)
 
void define (const LevelData< EBCellFAB > &a_data)
 define all the ste3ncils More...
 
 ~EBNormalizeByVolumeFraction ()
 
void operator() (LevelData< EBCellFAB > &a_Q, const Interval &a_compInterval)
 
void operator() (LevelData< EBCellFAB > &a_Q)
 
void normalize (LevelData< EBCellFAB > &a_Q, const Interval &a_compInterval)
 
void normalize (LevelData< EBCellFAB > &a_Q)
 

Protected Member Functions

void getLocalStencil (VoFStencil &a_stencil, const VolIndex &a_vof, const DataIndex &a_dit)
 
 EBNormalizeByVolumeFraction ()
 
 EBNormalizeByVolumeFraction (const EBNormalizeByVolumeFraction &)
 
EBNormalizeByVolumeFractionoperator= (const EBNormalizeByVolumeFraction &)
 

Private Attributes

bool m_isDefined
 
int m_radius
 
LayoutData< RefCountedPtr< AggStencil< EBCellFAB, EBCellFAB > > > m_stencil
 
EBLevelGrid m_eblg
 

Detailed Description

This class represents an operation that takes a volume-fraction-weighted quantity kappa*Q (where kappa is the volume fraction) and computes Q from it by normalizing it w.r.t. the volume fractions of cells within a monotone path radius. The radius may either be specified explicitly or computed from a given EBLevelGrid.

Constructor & Destructor Documentation

◆ EBNormalizeByVolumeFraction() [1/3]

EBNormalizeByVolumeFraction::EBNormalizeByVolumeFraction ( const EBLevelGrid a_eblg,
const LevelData< EBCellFAB > *  a_data = NULL,
const int  a_radius = 1 
)
inline

Construct an EBNormalizeByVolumeFraction object associated with the associated with the given EBLevelGrid.

Parameters
EBLevelGridThe level grid for which data can be normalized by the resulting object. wacky interface is for backward compatibility if data is null, define is not called.

References CH_assert, define(), m_eblg, m_isDefined, and m_radius.

◆ ~EBNormalizeByVolumeFraction()

EBNormalizeByVolumeFraction::~EBNormalizeByVolumeFraction ( )
inline

Destructor.

References operator()().

◆ EBNormalizeByVolumeFraction() [2/3]

EBNormalizeByVolumeFraction::EBNormalizeByVolumeFraction ( )
protected

Referenced by normalize().

◆ EBNormalizeByVolumeFraction() [3/3]

EBNormalizeByVolumeFraction::EBNormalizeByVolumeFraction ( const EBNormalizeByVolumeFraction )
protected

Member Function Documentation

◆ define()

void EBNormalizeByVolumeFraction::define ( const LevelData< EBCellFAB > &  a_data)

define all the ste3ncils

Referenced by EBNormalizeByVolumeFraction().

◆ operator()() [1/2]

void EBNormalizeByVolumeFraction::operator() ( LevelData< EBCellFAB > &  a_Q,
const Interval a_compInterval 
)

Compute the normalized quantity corresponding to the given volume-fraction-weighted quantity by volume-averaging that quantity over every monotone path radius for each cell in the level.

Parameters
a_QA volume-fraction-weighted quantity to be normalized.
a_compIntervalAn interval representing the range of components to be normalized by this operation.

Referenced by ~EBNormalizeByVolumeFraction().

◆ operator()() [2/2]

void EBNormalizeByVolumeFraction::operator() ( LevelData< EBCellFAB > &  a_Q)

Compute the normalized quantity corresponding to the given volume-fraction-weighted quantity by volume-averaging that quantity over every monotone path radius for each cell in the level. This version of the correction normalizes all components of a_Q.

Parameters
a_QA volume-fraction-weighted quantity to be normalized.

◆ normalize() [1/2]

void EBNormalizeByVolumeFraction::normalize ( LevelData< EBCellFAB > &  a_Q,
const Interval a_compInterval 
)
inline

◆ normalize() [2/2]

void EBNormalizeByVolumeFraction::normalize ( LevelData< EBCellFAB > &  a_Q)
inline

◆ getLocalStencil()

void EBNormalizeByVolumeFraction::getLocalStencil ( VoFStencil a_stencil,
const VolIndex a_vof,
const DataIndex a_dit 
)
protected

Referenced by normalize().

◆ operator=()

EBNormalizeByVolumeFraction& EBNormalizeByVolumeFraction::operator= ( const EBNormalizeByVolumeFraction )
protected

Referenced by normalize().

Member Data Documentation

◆ m_isDefined

bool EBNormalizeByVolumeFraction::m_isDefined
private

◆ m_radius

int EBNormalizeByVolumeFraction::m_radius
private

◆ m_stencil

LayoutData<RefCountedPtr<AggStencil<EBCellFAB, EBCellFAB> > > EBNormalizeByVolumeFraction::m_stencil
private

◆ m_eblg

EBLevelGrid EBNormalizeByVolumeFraction::m_eblg
private

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