#include <RampIBC.H>
Parameters: a_smallPressure - Lower limit for pressure (returned) a_gamma - Gamma for polytropic, gamma-law gas a_alpha - The angle from horizontal to the wedge edge a_ms - Mach shock number a_xcorner - Position of the corner/tip of the wedge a_artvisc - Artificial viscosity coefficient
This entire problem is rotated so that the wedge edge is horizontal in the problem domain.
Public Member Functions | |
RampIBC () | |
Null Constructor. | |
RampIBC (Real &a_smallPressure, const Real &a_gamma, const Real &a_alpha, const Real &a_ms, const Real &a_xcorner, const Real &a_artvisc) | |
Constructor which defines parameters used by Fortran routines. | |
virtual | ~RampIBC () |
Destructor. | |
void | setFortranCommon (Real &a_smallPressure, const Real &a_gamma, const Real &a_alpha, const Real &a_ms, const Real &a_xcorner, const Real &a_artvisc) |
Sets parameters in a common block used by Fortran routines. | |
void | setFortranCommonSet () |
Set the flag m_isFortranCommonSet to true. | |
PhysIBC * | new_physIBC () |
Factory method - this object is its own factory. | |
virtual void | initialize (LevelData< FArrayBox > &a_U) |
Set up initial conditions. | |
virtual void | primBC (FArrayBox &a_WGdnv, const FArrayBox &a_Wextrap, const FArrayBox &a_W, const int &a_dir, const Side::LoHiSide &a_side, const Real &a_time) |
Set boundary primitive values. | |
virtual void | setBdrySlopes (FArrayBox &a_dW, const FArrayBox &a_W, const int &a_dir, const Real &a_time) |
Set boundary slopes. | |
virtual void | artViscBC (FArrayBox &a_F, const FArrayBox &a_U, const FArrayBox &a_divVel, const int &a_dir, const Real &a_time) |
Adjust boundary fluxes to account for artificial viscosity. | |
Protected Attributes | |
bool | m_isFortranCommonSet |
RampIBC::RampIBC | ( | ) |
Null Constructor.
RampIBC::RampIBC | ( | Real & | a_smallPressure, | |
const Real & | a_gamma, | |||
const Real & | a_alpha, | |||
const Real & | a_ms, | |||
const Real & | a_xcorner, | |||
const Real & | a_artvisc | |||
) |
Constructor which defines parameters used by Fortran routines.
virtual RampIBC::~RampIBC | ( | ) | [virtual] |
Destructor.
void RampIBC::setFortranCommon | ( | Real & | a_smallPressure, | |
const Real & | a_gamma, | |||
const Real & | a_alpha, | |||
const Real & | a_ms, | |||
const Real & | a_xcorner, | |||
const Real & | a_artvisc | |||
) |
Sets parameters in a common block used by Fortran routines.
void RampIBC::setFortranCommonSet | ( | ) |
Set the flag m_isFortranCommonSet to true.
Set the flag m_isFortranCommonSet to true so that new IBCs made with new_physIBC() will have this flag set without calling setFortranCommon() (this is a clumsy design and should be improved).
PhysIBC* RampIBC::new_physIBC | ( | ) | [virtual] |
virtual void RampIBC::primBC | ( | FArrayBox & | a_WGdnv, | |
const FArrayBox & | a_Wextrap, | |||
const FArrayBox & | a_W, | |||
const int & | a_dir, | |||
const Side::LoHiSide & | a_side, | |||
const Real & | a_time | |||
) | [virtual] |
virtual void RampIBC::setBdrySlopes | ( | FArrayBox & | a_dW, | |
const FArrayBox & | a_W, | |||
const int & | a_dir, | |||
const Real & | a_time | |||
) | [virtual] |
Set boundary slopes.
The boundary slopes in a_dW are already set to one sided difference approximations. If this function doesn't change them they will be used for the slopes at the boundaries.
Implements PhysIBC.
bool RampIBC::m_isFortranCommonSet [protected] |