Chombo + EB + MF
3.2
|
AMRLevel for advection-diffusion. More...
#include <AMRLevelAdvectDiffuse.H>
Public Member Functions | |
AMRLevelAdvectDiffuse () | |
Default constructor. More... | |
AMRLevelAdvectDiffuse (const AdvectPhysics &a_gphys, AdvectionVelocityFunction a_advFunc, BCHolder a_bcFunc, const Real &a_cfl, const Real &a_domainLength, const Real &a_refineThresh, const int &a_tagBufferSize, const Real &a_initialDtMultiplier, const bool &a_useLimiting, const Real &a_nu) | |
Full constructor. Arguments are same as in define() More... | |
void | makeDiffusiveSource (LevelData< FArrayBox > &a_diffusiveSource) |
void | define (const AdvectPhysics &a_gphys, AdvectionVelocityFunction a_advFunc, BCHolder a_bcFunc, const Real &a_cfl, const Real &a_domainLength, const Real &a_refineThresh, const int &a_tagBufferSize, const Real &a_initialDtMultiplier, const bool &a_useLimiting, const Real &a_nu) |
Defines this AMRLevelAdvectDiffuse. More... | |
virtual | ~AMRLevelAdvectDiffuse () |
virtual void | define (AMRLevel *a_coarserLevelPtr, const Box &a_problemDomain, int a_level, int a_refRatio) |
Never called: historical. More... | |
virtual void | define (AMRLevel *a_coarserLevelPtr, const ProblemDomain &a_problemDomain, int a_level, int a_refRatio) |
Define new AMRLevelAdvectDiffuse from coarser. More... | |
virtual Real | advance () |
Advance by one timestep. More... | |
virtual void | postTimeStep () |
Things to do after a timestep. More... | |
virtual void | tagCells (IntVectSet &a_tags) |
Create tags for regridding. More... | |
virtual void | tagCellsInit (IntVectSet &a_tags) |
Create tags at initialization. More... | |
virtual void | regrid (const Vector< Box > &a_newGrids) |
Set up data on this level after regridding. More... | |
virtual void | initialGrid (const Vector< Box > &a_newGrids) |
Initialize grids. More... | |
virtual void | initialData () |
Initialize data. More... | |
virtual void | postInitialize () |
Things to do after initialization. More... | |
virtual void | writeCheckpointHeader (HDF5Handle &a_handle) const |
Write checkpoint header. More... | |
virtual void | writeCheckpointLevel (HDF5Handle &a_handle) const |
Write checkpoint data for this level. More... | |
virtual void | readCheckpointHeader (HDF5Handle &a_handle) |
Read checkpoint header. More... | |
virtual void | readCheckpointLevel (HDF5Handle &a_handle) |
Read checkpoint data for this level. More... | |
virtual void | writePlotHeader (HDF5Handle &a_handle) const |
Write plotfile header. More... | |
virtual void | writePlotLevel (HDF5Handle &a_handle) const |
Write plotfile data for this level. More... | |
virtual Real | computeDt () |
Returns the dt computed earlier for this level. More... | |
virtual Real | computeInitialDt () |
Compute dt using initial data. More... | |
LevelData< FArrayBox > & | getStateNew () |
LevelData< FArrayBox > & | getStateOld () |
Public Member Functions inherited from AMRLevel | |
AMRLevel () | |
virtual | ~AMRLevel () |
virtual bool | convergedToSteadyState () |
virtual void | preRegrid (int a_base_level, const Vector< Vector< Box > > &a_new_grids) |
virtual void | postRegrid (int a_base_level) |
virtual void | postInitialGrid (const bool a_restart) |
virtual void | conclude (int a_step) const |
virtual void | writeCustomPlotFile (const std::string &a_prefix, int a_step) const |
virtual void | finerLevelPtr (AMRLevel *a_finer_level_ptr) |
virtual void | dt (Real a_dt) |
virtual void | time (Real a_time) |
virtual void | initialDtMultiplier (Real a_initial_dt_multiplier) |
virtual Real | dt () const |
virtual Real | time () const |
virtual Real | initialDtMultiplier () const |
virtual const ProblemDomain & | problemDomain () const |
virtual Vector< Box > | boxes () const |
bool | isDefined () const |
bool | hasCoarserLevel () const |
bool | hasFinerLevel () const |
virtual int | level () const |
virtual int | refRatio () const |
Vector< AMRLevel * > | getAMRLevelHierarchy () |
Retrieve an array of all of the AMRLevel objects in the entire hierarchy. More... | |
Protected Member Functions | |
void | setSolverCoef (Real a_alpha, Real a_beta) |
void | interpolateInTime (LevelData< FArrayBox > &a_interp, const LevelData< FArrayBox > &a_old, const LevelData< FArrayBox > &a_new, Real a_time, Real a_tOld, Real a_tNew) |
void | getHierarchyAndGrids (Vector< AMRLevelAdvectDiffuse *> &a_hierarchy, Vector< DisjointBoxLayout > &a_grids, Vector< int > &a_refRat, ProblemDomain &a_lev0Dom, Real &a_lev0Dx) |
void | doImplicitReflux () |
void | printRefluxRHSMax (const std::string &a_preflix) |
Real | diffusiveAdvance (LevelData< FArrayBox > &a_diffusiveSource) |
void | defineSolvers () |
void | getCoarseDataPointers (LevelData< FArrayBox > **a_coarserDataOldPtr, LevelData< FArrayBox > **a_coarserDataNewPtr, LevelFluxRegister **a_coarserFRPtr, LevelFluxRegister **a_finerFRPtr, Real &a_tCoarserOld, Real &a_tCoarserNew) |
void | fillAdvectionVelocity () |
void | levelSetup () |
AMRLevelAdvectDiffuse * | getCoarserLevel () const |
AMRLevelAdvectDiffuse * | getFinerLevel () const |
Protected Attributes | |
BCHolder | m_bcFunc |
LevelData< FArrayBox > | m_UOld |
LevelData< FArrayBox > | m_UNew |
LevelData< FArrayBox > | m_dU |
LevelData< FluxBox > | m_advVel |
Vector< string > | m_stateNames |
bool | m_isDefined |
Real | m_cfl |
Real | m_domainLength |
Real | m_refineThresh |
int | m_tagBufferSize |
Real | m_initialDtMultiplier |
bool | m_useLimiting |
Real | m_nu |
Real | m_dx |
RefCountedPtr< AdvectPhysics > | m_advPhys |
AdvectionVelocityFunction | m_advFunc |
FineInterp | m_fineInterp |
CoarseAverage | m_coarseAverage |
Real | m_dtNew |
int | m_numGhost |
LevelAdvect | m_levelGodunov |
LevelFluxRegister | m_fluxRegister |
bool | m_hasCoarser |
bool | m_hasFiner |
bool | m_doImplicitReflux |
bool | m_hasDiffusion |
DisjointBoxLayout | m_grids |
Protected Attributes inherited from AMRLevel | |
ProblemDomain | m_problem_domain |
Vector< Box > | m_level_grids |
int | m_level |
int | m_ref_ratio |
Real | m_initial_dt_multiplier |
Real | m_dt |
Real | m_time |
AMRLevel * | m_coarser_level_ptr |
AMRLevel * | m_finer_level_ptr |
bool | m_isDefined |
Static Protected Attributes | |
static RefCountedPtr< LevelTGA > | s_diffuseLevTGA |
static RefCountedPtr< AMRMultiGrid< LevelData< FArrayBox > > > | s_diffuseAMRMG |
static RefCountedPtr< AMRLevelOpFactory< LevelData< FArrayBox > > > | s_diffuseOpFact |
static BiCGStabSolver< LevelData< FArrayBox > > | s_botSolver |
Static Protected Attributes inherited from AMRLevel | |
static int | s_verbosity |
Private Member Functions | |
void | operator= (const AMRLevelAdvectDiffuse &) |
AMRLevelAdvectDiffuse (const AMRLevelAdvectDiffuse &) | |
Additional Inherited Members | |
Static Public Member Functions inherited from AMRLevel | |
static int | verbosity () |
static void | verbosity (int a_verbosity) |
AMRLevel for advection-diffusion.
|
inline |
Default constructor.
References m_isDefined.
|
inline |
Full constructor. Arguments are same as in define()
References define(), makeDiffusiveSource(), and ~AMRLevelAdvectDiffuse().
|
virtual |
Referenced by AMRLevelAdvectDiffuse().
|
private |
Referenced by AMRLevelAdvectDiffuse().
void AMRLevelAdvectDiffuse::define | ( | const AdvectPhysics & | a_gphys, |
AdvectionVelocityFunction | a_advFunc, | ||
BCHolder | a_bcFunc, | ||
const Real & | a_cfl, | ||
const Real & | a_domainLength, | ||
const Real & | a_refineThresh, | ||
const int & | a_tagBufferSize, | ||
const Real & | a_initialDtMultiplier, | ||
const bool & | a_useLimiting, | ||
const Real & | a_nu | ||
) |
Defines this AMRLevelAdvectDiffuse.
a_gphys | advection physics class |
a_advFunc | velocity function providing the advection velocity |
a_bcFunc | boundary condition class for diffusion solve |
a_cfl | CFL number |
a_domainLength | physical length of domain |
a_refineThresh | undivided gradient size over which a cell will be tagged for refinement |
a_tagBufferSize | number of buffer cells around each tagged cell that will also be tagged |
a_initialDtMultiplier | CFL number at beginning of calculation |
a_useLimiting | whether to use van Leer limiting |
a_nu | diffusion coefficient |
Referenced by AMRLevelAdvectDiffuse(), and define().
|
inlinevirtual |
Never called: historical.
Reimplemented from AMRLevel.
References advance(), computeDt(), computeInitialDt(), define(), MayDay::Error(), initialData(), initialGrid(), postInitialize(), postTimeStep(), readCheckpointHeader(), readCheckpointLevel(), regrid(), tagCells(), tagCellsInit(), writeCheckpointHeader(), writeCheckpointLevel(), writePlotHeader(), and writePlotLevel().
|
virtual |
Define new AMRLevelAdvectDiffuse from coarser.
Reimplemented from AMRLevel.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Referenced by getStateOld().
|
protected |
Referenced by getStateOld().
|
protected |
Referenced by getStateOld().
|
protected |
Referenced by getStateOld().
|
protected |
Referenced by getStateOld().
|
protected |
Referenced by getStateOld().
|
protected |
Referenced by getStateOld().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
private |
|
protected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
Referenced by getStateOld().
Referenced by getStateNew().
|
protected |
|
protected |
Referenced by AMRLevelAdvectDiffuse().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |