Class Hydro

Class Documentation

class Hydro

Public Functions

Hydro()
void Init(Input&, Grid&, DataBlock*)
void ConvertConsToPrim()
void ConvertPrimToCons()
template<int>
void CalcRiemannFlux(const real)
template<int>
void CalcParabolicFlux(const real)
template<int>
void AddNonIdealMHDFlux(const real)
template<int>
void CalcRightHandSide(real, real)
void CalcCurrent()
void AddSourceTerms(real, real)
void CoarsenFlow(IdefixArray4D<real>&)
void CoarsenMagField(IdefixArray4D<real>&)
void CoarsenVectorPotential()
real GetGamma()
real CheckDivB()
void ResetStage()
void ShowConfig()
void EnrollUserDefBoundary(UserDefBoundaryFunc)
void EnrollInternalBoundary(InternalBoundaryFunc)
void EnrollEmfBoundary(EmfBoundaryFunc)
void EnrollFluxBoundary(UserDefBoundaryFunc)
void EnrollUserSourceTerm(SrcTermFunc)
void EnrollGravPotential(GravPotentialFunc)
void EnrollBodyForce(BodyForceFunc)
void EnrollOhmicDiffusivity(DiffusivityFunc)
void EnrollAmbipolarDiffusivity(DiffusivityFunc)
void EnrollHallDiffusivity(DiffusivityFunc)
void EnrollIsoSoundSpeed(IsoSoundSpeedFunc)
template<const int>
void HlldMHD()
template<const int>
void HllMHD()
template<const int>
void RoeMHD()
template<const int>
void TvdlfMHD()

Public Members

HydroBoundary boundary
bool haveSourceTerms = {false}
bool haveExplicitParabolicTerms = {false}
bool haveRKLParabolicTerms = {false}
bool haveCurrent = {false}
bool needExplicitCurrent = {false}
bool needRKLCurrent = {false}
ParabolicModuleStatus resistivityStatus
ParabolicModuleStatus ambipolarStatus
ParabolicModuleStatus hallStatus
ParabolicModuleStatus viscosityStatus
ParabolicModuleStatus thermalDiffusionStatus
Viscosity viscosity
ThermalDiffusion thermalDiffusion
bool haveAxis = {false}
Axis myAxis
bool haveRotation = {false}
real OmegaZ
bool haveShearingBox = {false}
real sbS
real sbLx
bool haveShockFlattening = {false}
ShockFlattening shockFlattening
IdefixArray4D<real> Vc
IdefixArray4D<real> Vs
IdefixArray4D<real> Ve
IdefixArray4D<real> Uc
IdefixArray4D<real> J
std::vector<std::string> VcName
std::vector<std::string> VsName
std::vector<std::string> VeName
ElectroMotiveForce emf
IdefixArray4D<real> Uc0
IdefixArray4D<real> Vs0
IdefixArray4D<real> Ve0
IdefixArray3D<real> InvDt
IdefixArray4D<real> FluxRiemann
IdefixArray3D<real> dMax