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)
AMRLevelMHD * getCoarserLevel () const
AMRLevelMHD * getFinerLevel () const

Protected Attributes

LevelData< FArrayBox > m_UOld
LevelData< FArrayBox > m_UNew
LevelData< FArrayBox > m_Phi
LevelData< FArrayBox > m_flux [CH_SPACEDIM]
LayoutData< FluxBox > m_whalf
LevelData< FArrayBox > m_source
LevelData< FArrayBox > m_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
GodunovPhysics * m_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