WaveIBC Class Reference

#include <WaveIBC.H>

Inheritance diagram for WaveIBC:

Inheritance graph
[legend]
Collaboration diagram for WaveIBC:

Collaboration graph
[legend]

List of all members.


Detailed Description

Example of a sinusoidal plane wave plus a constant density.

Initial conditions for gaussian.

Parameters: a_smallPressure - Lower limit for pressure (returned) a_gamma - Gamma for polytropic, gamma-law gas a_ambientDensity - Ambient density add to the plane-wave a_deltaDensity - Mean of the plane-wave a_pressure - If 0, use isentropic pressure if 1, use the constant pressure of 1.0 a_waveNumber - The wave number of the plane-wave a_velocity - Initial velocity of the gas a_center - Position of a maximum of the plane-wave a_artvisc - Artificial viscosity coefficient

Parameters used in the initial conditions m_rr0 - initial radius

Public Member Functions

 WaveIBC ()
 Null constructor.
 WaveIBC (Real &a_smallPressure, const Real &a_gamma, const Real &a_ambientDensity, const Real &a_deltaDensity, const int &a_pressure, const IntVect &a_waveNumber, const RealVect &a_center, const RealVect &a_velocity, const Real &a_artvisc)
 Constructor which defines parameters used by Fortran routines.
virtual ~WaveIBC ()
 Destructor.
void setFortranCommon (Real &a_smallPressure, const Real &a_gamma, const Real &a_ambientDensity, const Real &a_deltaDensity, const int &a_pressure, const IntVect &a_waveNumber, const RealVect &a_center, const RealVect &a_velocity, const Real &a_artvisc)
 Sets parameters in a common block used by Fortran routines.
PhysIBCnew_physIBC ()
 Factory method - this object is its own factory.
void initialize (LevelData< FArrayBox > &a_U)
 Set up initial conditions.
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.
void setBdrySlopes (FArrayBox &a_dW, const FArrayBox &a_W, const int &a_dir, const Real &a_time)
 Set boundary slopes.
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.
 WaveIBC ()
 Null constructor.
 ~WaveIBC ()
 Destructor.
void setParams (Real a_r0, RealVect a_x0=RealVect::Zero)
 Sets parameters.
PhysIBCnew_physIBC ()
 Factory method - this object is its own factory.
void initialize (LevelData< FArrayBox > &a_phi, LevelData< FArrayBox > &a_pi, Real a_dx)
 Set up initial conditions.

Protected Attributes

bool m_isFortranCommonSet
RealVect m_x0
Real m_rr0
bool m_params_are_set


Constructor & Destructor Documentation

WaveIBC::WaveIBC (  ) 

Null constructor.

WaveIBC::WaveIBC ( Real a_smallPressure,
const Real a_gamma,
const Real a_ambientDensity,
const Real a_deltaDensity,
const int &  a_pressure,
const IntVect a_waveNumber,
const RealVect a_center,
const RealVect a_velocity,
const Real a_artvisc 
)

Constructor which defines parameters used by Fortran routines.

virtual WaveIBC::~WaveIBC (  )  [virtual]

Destructor.

WaveIBC::WaveIBC (  ) 

Null constructor.

WaveIBC::~WaveIBC (  )  [inline]

Destructor.


Member Function Documentation

void WaveIBC::setFortranCommon ( Real a_smallPressure,
const Real a_gamma,
const Real a_ambientDensity,
const Real a_deltaDensity,
const int &  a_pressure,
const IntVect a_waveNumber,
const RealVect a_center,
const RealVect a_velocity,
const Real a_artvisc 
)

Sets parameters in a common block used by Fortran routines.

PhysIBC* WaveIBC::new_physIBC (  )  [virtual]

Factory method - this object is its own factory.

Return a pointer to a new PhysIBC object with m_isDefined = false (i.e., its define() must be called before it is used) and m_isFortranCommonSet set to value of m_isFortranCommonset in the current (factory) object.

Implements PhysIBC.

void WaveIBC::initialize ( LevelData< FArrayBox > &  a_U  )  [virtual]

Set up initial conditions.

Implements PhysIBC.

void WaveIBC::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]

Set boundary primitive values.

Implements PhysIBC.

void WaveIBC::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.

void WaveIBC::artViscBC ( FArrayBox a_F,
const FArrayBox a_U,
const FArrayBox a_divVel,
const int &  a_dir,
const Real a_time 
) [virtual]

Adjust boundary fluxes to account for artificial viscosity.

Implements PhysIBC.

void WaveIBC::setParams ( Real  a_r0,
RealVect  a_x0 = RealVect::Zero 
)

Sets parameters.

PhysIBC* WaveIBC::new_physIBC (  )  [virtual]

Factory method - this object is its own factory.

Return a pointer to a new PhysIBC object with m_isDefined = false (i.e., its define() must be called before it is used) and m_params_are_set set to value of m_params_are_set in the current (factory) object.

Implements PhysIBC.

void WaveIBC::initialize ( LevelData< FArrayBox > &  a_phi,
LevelData< FArrayBox > &  a_pi,
Real  a_dx 
) [virtual]

Set up initial conditions.

Implements PhysIBC.


Member Data Documentation

RealVect WaveIBC::m_x0 [protected]

Real WaveIBC::m_rr0 [protected]

bool WaveIBC::m_params_are_set [protected]


The documentation for this class was generated from the following files:

Generated on Tue Apr 14 14:24:06 2009 for Chombo + EB by  doxygen 1.5.5