Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

AMRLevelMHD Class Reference

AMRLevel-derived class for implementing Godunov-based AMR MHD algorithm. More...

#include <AMRLevelMHD.H>

Inheritance diagram for AMRLevelMHD:

Inheritance graph
[legend]
Collaboration diagram for AMRLevelMHD:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 AMRLevelMHD ()
 Constructor.
virtual ~AMRLevelMHD ()
 Destructor.
void defineParams (const Real &a_cfl, const Real &a_domainLength, const int &a_verbosity, const Real &a_refineThresh, const int &a_tagBufferSize, const Real &a_initialDtMultiplier, const GodunovPhysics *const a_godunovPhysics, const int &a_normalPredOrder, const bool &a_useFourthOrderSlopes, const bool &a_usePrimLimiting, const bool &a_useCharLimiting, const bool &a_useFlattening, const bool &a_useArtificialViscosity, const Real &a_artificialViscosity, const bool &a_doFilterBField)
 Define the parameters the object needs.
virtual void define (AMRLevel *a_coarserLevelPtr, const Box &a_problemDomain, int a_level, int a_refRatio)
 This instance should never get called - historical.
virtual void define (AMRLevel *a_coarserLevelPtr, const ProblemDomain &a_problemDomain, int a_level, int a_refRatio)
 Define new AMR level.
virtual Real advance ()
 Advance by one timestep.
virtual void postTimeStep ()
 Things to do after a timestep.
virtual void tagCells (IntVectSet &a_tags)
 Create tags for regridding.
virtual void tagCellsInit (IntVectSet &a_tags)
 Create tags at initialization.
virtual void regrid (const Vector< Box > &a_newGrids)
 Set up data on this level after regridding.
virtual void initialGrid (const Vector< Box > &a_newGrids)
 Initialize grids.
virtual void initialData ()
 Initialize data.
virtual void postInitialize ()
 Things to do after initialization.
virtual Real computeDt ()
 Returns the dt computed earlier for this level.
virtual Real computeInitialDt ()
 Compute dt using initial data.
const LevelData< FArrayBox > & getStateNew () const
const LevelData< FArrayBox > & getStateOld () const
bool allDefined () const

Protected Member Functions

DisjointBoxLayout loadBalance (const Vector< Box > &a_grids)
void levelSetup ()
void DivergenceB (LevelData< FArrayBox > &a_divb, const LayoutData< FluxBox > &a_WHalf)
void ProjectBField (LayoutData< FluxBox > &a_WHalf, const LevelData< FArrayBox > &a_phi)
void FilterBFieldOld (LevelData< FArrayBox > &a_U)
void FilterBField (LevelData< FArrayBox > &a_U, LevelFluxRegister &a_finerFluxRegister, LevelFluxRegister &a_coarserFluxRegister)
AMRLevelMHDgetCoarserLevel () const
AMRLevelMHDgetFinerLevel () const

Protected Attributes

LevelData< FArrayBoxm_UOld
LevelData< FArrayBoxm_UNew
LevelData< FArrayBoxm_Phi
LevelData< FArrayBoxm_flux [CH_SPACEDIM]
LayoutData< FluxBoxm_whalf
LevelData< FArrayBoxm_source
LevelData< FArrayBoxm_rhs
Real m_cfl
Real m_dx
FineInterp m_fineInterp
CoarseAverage m_coarseAverage
Real m_dtNew
int m_numStates
int m_numPrims
int m_numFluxes
Vector< string > m_stateNames
Vector< string > m_plotNames
int m_numGhost
Real m_domainLength
LevelGodunov m_levelGodunov
LevelSolver m_levelSolver
LevelFluxRegister m_fluxRegister
GodunovPhysicsm_gdnvPhysics
PoissonOp m_poissonOp
int m_normalPredOrder
bool m_useFourthOrderSlopes
bool m_usePrimLimiting
bool m_useCharLimiting
bool m_useFlattening
bool m_useArtificialViscosity
Real m_artificialViscosity
bool m_doFilterBField
Real m_refineThresh
int m_tagBufferSize
bool m_hasCoarser
bool m_hasFiner
DisjointBoxLayout m_grids
bool m_paramsDefined

Detailed Description

AMRLevel-derived class for implementing Godunov-based AMR MHD algorithm.


Constructor & Destructor Documentation

AMRLevelMHD::AMRLevelMHD  ) 
 

Constructor.

virtual AMRLevelMHD::~AMRLevelMHD  )  [virtual]
 

Destructor.


Member Function Documentation

virtual Real AMRLevelMHD::advance  )  [virtual]
 

Advance by one timestep.

Implements AMRLevel< TTYPE >.

bool AMRLevelMHD::allDefined  )  const
 

virtual Real AMRLevelMHD::computeDt  )  [virtual]
 

Returns the dt computed earlier for this level.

Implements AMRLevel< TTYPE >.

virtual Real AMRLevelMHD::computeInitialDt  )  [virtual]
 

Compute dt using initial data.

Implements AMRLevel< TTYPE >.

virtual void AMRLevelMHD::define AMRLevel a_coarserLevelPtr,
const ProblemDomain a_problemDomain,
int  a_level,
int  a_refRatio
[virtual]
 

Define new AMR level.

Reimplemented from AMRLevel< TTYPE >.

virtual void AMRLevelMHD::define AMRLevel a_coarserLevelPtr,
const Box a_problemDomain,
int  a_level,
int  a_refRatio
[virtual]
 

This instance should never get called - historical.

Reimplemented from AMRLevel< TTYPE >.

void AMRLevelMHD::defineParams const Real a_cfl,
const Real a_domainLength,
const int &  a_verbosity,
const Real a_refineThresh,
const int &  a_tagBufferSize,
const Real a_initialDtMultiplier,
const GodunovPhysics *const   a_godunovPhysics,
const int &  a_normalPredOrder,
const bool &  a_useFourthOrderSlopes,
const bool &  a_usePrimLimiting,
const bool &  a_useCharLimiting,
const bool &  a_useFlattening,
const bool &  a_useArtificialViscosity,
const Real a_artificialViscosity,
const bool &  a_doFilterBField
 

Define the parameters the object needs.

void AMRLevelMHD::DivergenceB LevelData< FArrayBox > &  a_divb,
const LayoutData< FluxBox > &  a_WHalf
[protected]
 

void AMRLevelMHD::FilterBField LevelData< FArrayBox > &  a_U,
LevelFluxRegister a_finerFluxRegister,
LevelFluxRegister a_coarserFluxRegister
[protected]
 

void AMRLevelMHD::FilterBFieldOld LevelData< FArrayBox > &  a_U  )  [protected]
 

AMRLevelMHD* AMRLevelMHD::getCoarserLevel  )  const [protected]
 

AMRLevelMHD* AMRLevelMHD::getFinerLevel  )  const [protected]
 

const LevelData<FArrayBox>& AMRLevelMHD::getStateNew  )  const
 

const LevelData<FArrayBox>& AMRLevelMHD::getStateOld  )  const
 

virtual void AMRLevelMHD::initialData  )  [virtual]
 

Initialize data.

Implements AMRLevel< TTYPE >.

virtual void AMRLevelMHD::initialGrid const Vector< Box > &  a_newGrids  )  [virtual]
 

Initialize grids.

Implements AMRLevel< TTYPE >.

void AMRLevelMHD::levelSetup  )  [protected]
 

DisjointBoxLayout AMRLevelMHD::loadBalance const Vector< Box > &  a_grids  )  [protected]
 

virtual void AMRLevelMHD::postInitialize  )  [virtual]
 

Things to do after initialization.

Implements AMRLevel< TTYPE >.

virtual void AMRLevelMHD::postTimeStep  )  [virtual]
 

Things to do after a timestep.

Implements AMRLevel< TTYPE >.

void AMRLevelMHD::ProjectBField LayoutData< FluxBox > &  a_WHalf,
const LevelData< FArrayBox > &  a_phi
[protected]
 

virtual void AMRLevelMHD::regrid const Vector< Box > &  a_newGrids  )  [virtual]
 

Set up data on this level after regridding.

Implements AMRLevel< TTYPE >.

virtual void AMRLevelMHD::tagCells IntVectSet a_tags  )  [virtual]
 

Create tags for regridding.

Implements AMRLevel< TTYPE >.

virtual void AMRLevelMHD::tagCellsInit IntVectSet a_tags  )  [virtual]
 

Create tags at initialization.

Implements AMRLevel< TTYPE >.


Member Data Documentation

Real AMRLevelMHD::m_artificialViscosity [protected]
 

Real AMRLevelMHD::m_cfl [protected]
 

CoarseAverage AMRLevelMHD::m_coarseAverage [protected]
 

bool AMRLevelMHD::m_doFilterBField [protected]
 

Real AMRLevelMHD::m_domainLength [protected]
 

Real AMRLevelMHD::m_dtNew [protected]
 

Real AMRLevelMHD::m_dx [protected]
 

FineInterp AMRLevelMHD::m_fineInterp [protected]
 

LevelData<FArrayBox> AMRLevelMHD::m_flux[CH_SPACEDIM] [protected]
 

LevelFluxRegister AMRLevelMHD::m_fluxRegister [protected]
 

GodunovPhysics* AMRLevelMHD::m_gdnvPhysics [protected]
 

DisjointBoxLayout AMRLevelMHD::m_grids [protected]
 

bool AMRLevelMHD::m_hasCoarser [protected]
 

bool AMRLevelMHD::m_hasFiner [protected]
 

LevelGodunov AMRLevelMHD::m_levelGodunov [protected]
 

LevelSolver AMRLevelMHD::m_levelSolver [protected]
 

int AMRLevelMHD::m_normalPredOrder [protected]
 

int AMRLevelMHD::m_numFluxes [protected]
 

int AMRLevelMHD::m_numGhost [protected]
 

int AMRLevelMHD::m_numPrims [protected]
 

int AMRLevelMHD::m_numStates [protected]
 

bool AMRLevelMHD::m_paramsDefined [protected]
 

LevelData<FArrayBox> AMRLevelMHD::m_Phi [protected]
 

Vector<string> AMRLevelMHD::m_plotNames [protected]
 

PoissonOp AMRLevelMHD::m_poissonOp [protected]
 

Real AMRLevelMHD::m_refineThresh [protected]
 

LevelData<FArrayBox> AMRLevelMHD::m_rhs [protected]
 

LevelData<FArrayBox> AMRLevelMHD::m_source [protected]
 

Vector<string> AMRLevelMHD::m_stateNames [protected]
 

int AMRLevelMHD::m_tagBufferSize [protected]
 

LevelData<FArrayBox> AMRLevelMHD::m_UNew [protected]
 

LevelData<FArrayBox> AMRLevelMHD::m_UOld [protected]
 

bool AMRLevelMHD::m_useArtificialViscosity [protected]
 

bool AMRLevelMHD::m_useCharLimiting [protected]
 

bool AMRLevelMHD::m_useFlattening [protected]
 

bool AMRLevelMHD::m_useFourthOrderSlopes [protected]
 

bool AMRLevelMHD::m_usePrimLimiting [protected]
 

LayoutData<FluxBox> AMRLevelMHD::m_whalf [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Oct 5 12:44:55 2005 for Chombo&AMRIdealMHD by  doxygen 1.4.1