SineIBC Class Reference

#include <SineIBC.H>

Inheritance diagram for SineIBC:

Inheritance graph
[legend]
Collaboration diagram for SineIBC:

Collaboration graph
[legend]

List of all members.


Detailed Description

Example of a sinusoidal density variation plus a constant density.

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

The sine is adjusted so that one period fits in the domain in each direction - assuming the domain is a square (required).

Public Member Functions

 SineIBC ()
 Null constructor.
 SineIBC (Real &a_smallPressure, const Real &a_gamma, const Real &a_ambientDensity, const Real &a_deltaDensity, const int &a_pressure, const RealVect &a_center, const RealVect &a_velocity, const Real &a_artvisc)
 Constructor which defines parameters used by Fortran routines.
virtual ~SineIBC ()
 Destructor.
void setFortranCommon (Real &a_smallPressure, const Real &a_gamma, const Real &a_ambientDensity, const Real &a_deltaDensity, const int &a_pressure, 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.

Protected Attributes

bool m_isFortranCommonSet


Constructor & Destructor Documentation

SineIBC::SineIBC (  ) 

Null constructor.

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

Constructor which defines parameters used by Fortran routines.

virtual SineIBC::~SineIBC (  )  [virtual]

Destructor.


Member Function Documentation

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

Sets parameters in a common block used by Fortran routines.

PhysIBC* SineIBC::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 SineIBC::initialize ( LevelData< FArrayBox > &  a_U  )  [virtual]

Set up initial conditions.

Implements PhysIBC.

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


Member Data Documentation


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

Generated on Tue Apr 14 14:23:59 2009 for Chombo + EB by  doxygen 1.5.5