#include <CoarseAverageCodim.H>
Public Member Functions | |
CoarseAverageCodim () | |
Default constructor. | |
CoarseAverageCodim (const DisjointBoxLayout &a_fineGrids, const int a_codim, const int a_nComp, const int a_nRef) | |
Full constructor. | |
~CoarseAverageCodim () | |
Destructor. | |
void | define (const DisjointBoxLayout &a_fineGrids, const int a_codim, const int a_nComp, const int a_nRef) |
Defines the object. | |
bool | isDefined () const |
Has define been called? | |
void | average (const LevelData< CodimBox< FArrayBox > > &a_fineData) |
Averages fine-level data to internal coarse representation of fine grid. | |
void | averageHarmonic (const LevelData< CodimBox< FArrayBox > > &a_fineData) |
Harmonic averaging of fine data to coarse representation of fine grid. | |
void | sum (const LevelData< CodimBox< FArrayBox > > &a_fineData, const int a_refFactor=1) |
Summation of fine data to internal coarse representation of fine grid. | |
void | copyTo (LevelData< CodimBox< FArrayBox > > &a_coarseData) |
Obtain averaged results by copying to the destination. | |
void | averageToCoarse (LevelData< CodimBox< FArrayBox > > &a_coarseData, const LevelData< CodimBox< FArrayBox > > &a_fineData) |
Averages fine-level data to coarse level. | |
void | averageToCoarseHarmonic (LevelData< CodimBox< FArrayBox > > &a_coarseData, const LevelData< CodimBox< FArrayBox > > &a_fineData) |
Averages fine-level data to coarse level using harmonic averaging. | |
Protected Types | |
enum | AverageType { arithmetic = 0, harmonic } |
Protected Member Functions | |
void | computeAverages (LevelData< CodimBox< FArrayBox > > &a_coarseData, const LevelData< CodimBox< FArrayBox > > &a_fineData, const AverageType a_averageType) |
Utility function to completely determine averages. | |
void | average (const LevelData< CodimBox< FArrayBox > > &a_fineData, const AverageType a_averageType, const int a_refFactor) |
void | averageGridData (CodimBox< FArrayBox > &a_coarsenedFine, const CodimBox< FArrayBox > &a_fine, const AverageType a_averageType, const int a_refFactor) const |
Averages entire single grid data from fine->coarse. | |
Protected Attributes | |
LevelData< CodimBox< FArrayBox > > | m_coarsenedFineData |
bool | m_isDefined |
bool | m_isAveraged |
int | m_nRef |
enum CoarseAverageCodim::AverageType [protected] |
CoarseAverageCodim::CoarseAverageCodim | ( | ) |
Default constructor.
CoarseAverageCodim::CoarseAverageCodim | ( | const DisjointBoxLayout & | a_fineGrids, | |
const int | a_codim, | |||
const int | a_nComp, | |||
const int | a_nRef | |||
) |
Full constructor.
CoarseAverageCodim::~CoarseAverageCodim | ( | ) |
Destructor.
void CoarseAverageCodim::define | ( | const DisjointBoxLayout & | a_fineGrids, | |
const int | a_codim, | |||
const int | a_nComp, | |||
const int | a_nRef | |||
) |
Defines the object.
bool CoarseAverageCodim::isDefined | ( | ) | const [inline] |
Averages fine-level data to internal coarse representation of fine grid.
Harmonic averaging of fine data to coarse representation of fine grid.
void CoarseAverageCodim::sum | ( | const LevelData< CodimBox< FArrayBox > > & | a_fineData, | |
const int | a_refFactor = 1 | |||
) |
Summation of fine data to internal coarse representation of fine grid.
Obtain averaged results by copying to the destination.
void CoarseAverageCodim::averageToCoarse | ( | LevelData< CodimBox< FArrayBox > > & | a_coarseData, | |
const LevelData< CodimBox< FArrayBox > > & | a_fineData | |||
) |
Averages fine-level data to coarse level.
void CoarseAverageCodim::averageToCoarseHarmonic | ( | LevelData< CodimBox< FArrayBox > > & | a_coarseData, | |
const LevelData< CodimBox< FArrayBox > > & | a_fineData | |||
) |
Averages fine-level data to coarse level using harmonic averaging.
void CoarseAverageCodim::computeAverages | ( | LevelData< CodimBox< FArrayBox > > & | a_coarseData, | |
const LevelData< CodimBox< FArrayBox > > & | a_fineData, | |||
const AverageType | a_averageType | |||
) | [protected] |
Utility function to completely determine averages.
void CoarseAverageCodim::average | ( | const LevelData< CodimBox< FArrayBox > > & | a_fineData, | |
const AverageType | a_averageType, | |||
const int | a_refFactor | |||
) | [protected] |
Utility for averaging fine-level data to internal coarse representation of fine grid
void CoarseAverageCodim::averageGridData | ( | CodimBox< FArrayBox > & | a_coarsenedFine, | |
const CodimBox< FArrayBox > & | a_fine, | |||
const AverageType | a_averageType, | |||
const int | a_refFactor | |||
) | const [protected] |
Averages entire single grid data from fine->coarse.
LevelData<CodimBox<FArrayBox> > CoarseAverageCodim::m_coarsenedFineData [protected] |
Work array for coarsening of fine data, same "shape" as fine data
bool CoarseAverageCodim::m_isDefined [protected] |
Referenced by isDefined().
bool CoarseAverageCodim::m_isAveraged [protected] |
int CoarseAverageCodim::m_nRef [protected] |