#include <EBLevelRedist.H>
|
| EBLevelRedist () |
|
| ~EBLevelRedist () |
|
| EBLevelRedist (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const int &a_ncomp, int a_redistRad=1, bool a_do2DStencil=false) |
|
void | define (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const int &a_ncomp, int a_redistRad=1, bool a_do2DStencil=false) |
|
| EBLevelRedist (const EBLevelGrid &a_eblg, const int &a_ncomp, int a_redistRad=1, bool a_do2DStencil=false) |
|
void | define (const EBLevelGrid &a_eblg, const int &a_ncomp, int a_redistRad=1, bool a_do2DStencil=false) |
|
void | resetWeights (const LevelData< EBCellFAB > &modifier, const int &ivar) |
|
void | increment (const BaseIVFAB< Real > &massDiff, const DataIndex &datInd, const Interval &variables) |
|
void | increment (const LevelData< IrregFAB > &a_dm, const Interval &a_variables) |
|
void | redistribute (LevelData< EBCellFAB > &solution, const Interval &variables) |
|
void | redistribute (LevelData< EBCellFAB > &a_solution, const Interval &a_srcVar, const Interval &a_dstVar) |
|
void | fixExplicitLap (const LevelData< EBCellFAB > &a_kappaLap, LevelData< EBCellFAB > &a_solution, const Interval &variables) |
|
bool | isDefined () const |
|
void | setToZero () |
|
◆ EBLevelRedist() [1/4]
EBLevelRedist::EBLevelRedist |
( |
| ) |
|
Default constructor. User must subsequently call define().
◆ ~EBLevelRedist()
EBLevelRedist::~EBLevelRedist |
( |
| ) |
|
◆ EBLevelRedist() [2/4]
Defining constructor. Constructs a valid object. Equivalent to default construction followed by define(). ebisl needs ghost cells out to 3*redistradius of the stencil. This sets the stencil to volume-weighted. Use resetWeights to set to mass weighted or whatever.
◆ EBLevelRedist() [3/4]
EBLevelRedist::EBLevelRedist |
( |
const EBLevelGrid & |
a_eblg, |
|
|
const int & |
a_ncomp, |
|
|
int |
a_redistRad = 1 , |
|
|
bool |
a_do2DStencil = false |
|
) |
| |
|
inline |
◆ EBLevelRedist() [4/4]
◆ define() [1/2]
Defines this object. Existing information is overriden. ebisl needs ghost cells out to 3*redistradius
Referenced by define(), and EBLevelRedist().
◆ define() [2/2]
void EBLevelRedist::define |
( |
const EBLevelGrid & |
a_eblg, |
|
|
const int & |
a_ncomp, |
|
|
int |
a_redistRad = 1 , |
|
|
bool |
a_do2DStencil = false |
|
) |
| |
|
inline |
◆ resetWeights()
void EBLevelRedist::resetWeights |
( |
const LevelData< EBCellFAB > & |
modifier, |
|
|
const int & |
ivar |
|
) |
| |
Modify the weights in the stencil by multiplying by the inputs in a normalized way. If you want mass weighting, send in the density.
Referenced by define().
◆ increment() [1/2]
Store the input mass difference in the buffers of the class by INCREMENTING the buffer. \ dm += massDiff
Referenced by define(), and increment().
◆ increment() [2/2]
◆ redistribute() [1/2]
Redistribute the data contained in the internal buffers. \ solution += weight*dm
Referenced by increment().
◆ redistribute() [2/2]
version where solution is not necessarily ncomp long. intervals have to be the same length. srcVar can be up to m_ncomp long. dstVar can be up to solution.nComp().
◆ fixExplicitLap()
Adjusts an explicit Laplacian calculation so that: a_solution_i = kappa_i*lap_i + (1-kappa_i)*sum_s(kappa_s*lap_s)/(sum_s kappa_s) where s is the set of cells neighboring, but not including i NOTE: a_solution must be passed in equal to a_kappaLap
Referenced by increment().
◆ isDefined()
bool EBLevelRedist::isDefined |
( |
| ) |
const |
Returns true if this object was created with the defining constructor or if define() has been called.
Referenced by increment().
◆ setToZero()
void EBLevelRedist::setToZero |
( |
| ) |
|
Reset the mass buffers of the class.
Referenced by increment().
◆ operator=()
◆ redistRad
int EBLevelRedist::redistRad |
|
protected |
◆ m_stencil
◆ m_ncomp
int EBLevelRedist::m_ncomp |
|
protected |
◆ m_redistRad
int EBLevelRedist::m_redistRad |
|
protected |
◆ m_grids
◆ m_domain
◆ m_ebisl
◆ m_isDefined
bool EBLevelRedist::m_isDefined |
|
protected |
◆ m_buffer
◆ m_sets
The documentation for this class was generated from the following file: