Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

SelfGravityPhysics Class Reference

GodonovPhysics-derived class encapsulating the self-gravity problem. More...

#include <SelfGravityPhysics.H>

Inheritance diagram for SelfGravityPhysics:

Inheritance graph
[legend]
Collaboration diagram for SelfGravityPhysics:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SelfGravityPhysics ()
 Constructor.
virtual ~SelfGravityPhysics ()
 Destructor.
virtual Real getMaxWaveSpeed (const FArrayBox &a_U, const Box &a_box)
 Compute the maximum wave speed.
virtual Real getMaxWaveSpeedWithSource (const FArrayBox &a_U, const FArrayBox &a_S, const Real &a_dx, const Box &a_box)
 Compute the maximum wave speed with gravity term.
virtual GodunovPhysicsnew_godunovPhysics () const
 Object factory for this class.
virtual Vector< string > stateNames ()
 Names of the conserved variables.
virtual Vector< string > plotNames ()
 Names of the plot variables.
virtual int numConserved ()
 Number of conserved variables.
virtual int numFluxes ()
 Number of flux variables.
virtual bool isDefined ()
virtual int numPrimitives ()
 Number of primitive variables.
virtual int numSlopes ()
 Number of primitive variables for which slopes are computed.
virtual void consToPrim (FArrayBox &a_W, const FArrayBox &a_U, const Box &a_box)
 Compute the primitive variables from the conserved variables within a_box.
virtual void getFlux (FArrayBox &a_flux, const FArrayBox &a_whalf, const int &a_dir, const Box &a_box)
 Compute the fluxes from primitive variable values on a face.
virtual void charAnalysis (FArrayBox &a_dW, const FArrayBox &a_W, const int &a_dir, const Box &a_box)
 Transform a_dW from primitive to characteristic variables.
virtual void charSynthesis (FArrayBox &a_dW, const FArrayBox &a_W, const int &a_dir, const Box &a_box)
 Transform a_dW from characteristic to primitive variables.
virtual void charValues (FArrayBox &a_lambda, const FArrayBox &a_W, const int &a_dir, const Box &a_box)
 Compute the characteristic values (eigenvalues).
virtual void incrementSource (FArrayBox &a_localS, const FArrayBox &a_S, const FArrayBox &a_W, const Real &a_time, const Real &a_dt, const Box &a_box)
 Add to (increment) the source terms given the current state.
virtual void incrementSource (FArrayBox &a_S, const FArrayBox &a_W, const Box &a_box)
 Add to (increment) the source terms given the current state.
virtual void riemann (FArrayBox &a_WStar, const FArrayBox &a_WLeft, const FArrayBox &a_WRight, const FArrayBox &a_W, const Real &a_time, const int &a_dir, const Box &a_box)
 Compute the solution to the Riemann problem.
virtual void postNormalPred (FArrayBox &a_dWMinus, FArrayBox &a_dWPlus, const FArrayBox &a_W, const Real &a_dt, const Real &a_dx, const int &a_dir, const Box &a_box)
 Post-normal predictor calculation.
virtual void quasilinearUpdate (FArrayBox &a_AdWdx, const FArrayBox &a_wHalf, const FArrayBox &a_W, const Real &a_scale, const int &a_dir, const Box &a_box)
 Compute the quasilinear update A*dW/dx.
virtual void synchronize (FArrayBox &a_U, const FArrayBox &a_UOld, const Box &a_box)
 synchronize entropy and pressure
virtual void setupSourceTerm (FArrayBox &a_S, const ForceBox &a_force, const FArrayBox &a_U, const Real &a_time, const Real &a_dt, const Box &a_box)
virtual Real applySource (FArrayBox &a_U, const FArrayBox &a_force, const Real &a_time, const Real &a_dt, const Box &a_box)
 apply source and returns max dt based on CFL condition
virtual void forceCorrection (FArrayBox &a_U, const ForceBox &a_force, const Real &a_time, const Real &a_dt, const Box &a_box)
virtual void setPressureToEntropy (FArrayBox &a_U, const Box &a_box)
virtual Interval velocityInterval ()
 Interval within the primitive variables corresponding to the velocities.
virtual int pressureIndex ()
 Component index within the primitive variables of the pressure.
virtual int densityIndex ()
 Component index within the primitive variables of the pressure.
virtual int bulkModulusIndex ()
 Component index within the primitive variables of the bulk modulus.
virtual int entropyIndex ()
 Component index within the primitive variables of the entropy.
virtual Real smallPressure ()
 Used to limit the absolute value of a "pressure" difference.
virtual void setSmallPressure (const Real &a_smallPressure)
 set smallPressure parameter
virtual void setUnits (const CodeUnits &a_units)
 setup code units utility

Protected Attributes

Real m_smallPressure
CodeUnits m_units
FArrayBoxm_source

Detailed Description

GodonovPhysics-derived class encapsulating the self-gravity problem.


Constructor & Destructor Documentation

SelfGravityPhysics::SelfGravityPhysics  ) 
 

Constructor.

virtual SelfGravityPhysics::~SelfGravityPhysics  )  [virtual]
 

Destructor.


Member Function Documentation

virtual Real SelfGravityPhysics::applySource FArrayBox a_U,
const FArrayBox a_force,
const Real a_time,
const Real a_dt,
const Box a_box
[virtual]
 

apply source and returns max dt based on CFL condition

virtual int SelfGravityPhysics::bulkModulusIndex  )  [virtual]
 

Component index within the primitive variables of the bulk modulus.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::charAnalysis FArrayBox a_dW,
const FArrayBox a_W,
const int &  a_dir,
const Box a_box
[virtual]
 

Transform a_dW from primitive to characteristic variables.

On input, a_dW contains the increments of the primitive variables. On output, it contains the increments in the characteristic variables.

IMPORTANT NOTE: It is assumed that the characteristic analysis puts the eigenvalues in order from smallest to largest and orders the eigenvalues and characteristic variables accordingly.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::charSynthesis FArrayBox a_dW,
const FArrayBox a_W,
const int &  a_dir,
const Box a_box
[virtual]
 

Transform a_dW from characteristic to primitive variables.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::charValues FArrayBox a_lambda,
const FArrayBox a_W,
const int &  a_dir,
const Box a_box
[virtual]
 

Compute the characteristic values (eigenvalues).

Implements GodunovPhysics.

virtual void SelfGravityPhysics::consToPrim FArrayBox a_W,
const FArrayBox a_U,
const Box a_box
[virtual]
 

Compute the primitive variables from the conserved variables within a_box.

Implements GodunovPhysics.

virtual int SelfGravityPhysics::densityIndex  )  [virtual]
 

Component index within the primitive variables of the pressure.

virtual int SelfGravityPhysics::entropyIndex  )  [virtual]
 

Component index within the primitive variables of the entropy.

virtual void SelfGravityPhysics::forceCorrection FArrayBox a_U,
const ForceBox &  a_force,
const Real a_time,
const Real a_dt,
const Box a_box
[virtual]
 

virtual void SelfGravityPhysics::getFlux FArrayBox a_flux,
const FArrayBox a_whalf,
const int &  a_dir,
const Box a_box
[virtual]
 

Compute the fluxes from primitive variable values on a face.

Implements GodunovPhysics.

virtual Real SelfGravityPhysics::getMaxWaveSpeed const FArrayBox a_U,
const Box a_box
[virtual]
 

Compute the maximum wave speed.

Implements GodunovPhysics.

virtual Real SelfGravityPhysics::getMaxWaveSpeedWithSource const FArrayBox a_U,
const FArrayBox a_S,
const Real a_dx,
const Box a_box
[virtual]
 

Compute the maximum wave speed with gravity term.

virtual void SelfGravityPhysics::incrementSource FArrayBox a_S,
const FArrayBox a_W,
const Box a_box
[inline, virtual]
 

Add to (increment) the source terms given the current state.

On input, a_S contains the current source terms. On output, a_S has had any additional source terms (based on the current state, a_W) added to it. This should all be done on the region defined by a_box.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::incrementSource FArrayBox a_localS,
const FArrayBox a_S,
const FArrayBox a_W,
const Real a_time,
const Real a_dt,
const Box a_box
[virtual]
 

Add to (increment) the source terms given the current state.

virtual bool SelfGravityPhysics::isDefined  )  [virtual]
 

virtual GodunovPhysics* SelfGravityPhysics::new_godunovPhysics  )  const [virtual]
 

Object factory for this class.

Implements GodunovPhysics.

virtual int SelfGravityPhysics::numConserved  )  [virtual]
 

Number of conserved variables.

Implements GodunovPhysics.

virtual int SelfGravityPhysics::numFluxes  )  [virtual]
 

Number of flux variables.

This can be greater than the number of conserved variables if addition fluxes/face-centered quantities are computed.

Implements GodunovPhysics.

virtual int SelfGravityPhysics::numPrimitives  )  [virtual]
 

Number of primitive variables.

Implements GodunovPhysics.

virtual int SelfGravityPhysics::numSlopes  )  [virtual]
 

Number of primitive variables for which slopes are computed.

virtual Vector<string> SelfGravityPhysics::plotNames  )  [virtual]
 

Names of the plot variables.

virtual void SelfGravityPhysics::postNormalPred FArrayBox a_dWMinus,
FArrayBox a_dWPlus,
const FArrayBox a_W,
const Real a_dt,
const Real a_dx,
const int &  a_dir,
const Box a_box
[virtual]
 

Post-normal predictor calculation.

Implements GodunovPhysics.

virtual int SelfGravityPhysics::pressureIndex  )  [virtual]
 

Component index within the primitive variables of the pressure.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::quasilinearUpdate FArrayBox a_AdWdx,
const FArrayBox a_wHalf,
const FArrayBox a_W,
const Real a_scale,
const int &  a_dir,
const Box a_box
[virtual]
 

Compute the quasilinear update A*dW/dx.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::riemann FArrayBox a_WStar,
const FArrayBox a_WLeft,
const FArrayBox a_WRight,
const FArrayBox a_W,
const Real a_time,
const int &  a_dir,
const Box a_box
[virtual]
 

Compute the solution to the Riemann problem.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::setPressureToEntropy FArrayBox a_U,
const Box a_box
[virtual]
 

virtual void SelfGravityPhysics::setSmallPressure const Real a_smallPressure  )  [virtual]
 

set smallPressure parameter

virtual void SelfGravityPhysics::setUnits const CodeUnits a_units  )  [virtual]
 

setup code units utility

virtual void SelfGravityPhysics::setupSourceTerm FArrayBox a_S,
const ForceBox &  a_force,
const FArrayBox a_U,
const Real a_time,
const Real a_dt,
const Box a_box
[virtual]
 

virtual Real SelfGravityPhysics::smallPressure  )  [virtual]
 

Used to limit the absolute value of a "pressure" difference.

Implements GodunovPhysics.

virtual Vector<string> SelfGravityPhysics::stateNames  )  [virtual]
 

Names of the conserved variables.

Implements GodunovPhysics.

virtual void SelfGravityPhysics::synchronize FArrayBox a_U,
const FArrayBox a_UOld,
const Box a_box
[virtual]
 

synchronize entropy and pressure

virtual Interval SelfGravityPhysics::velocityInterval  )  [virtual]
 

Interval within the primitive variables corresponding to the velocities.

Implements GodunovPhysics.


Member Data Documentation

Real SelfGravityPhysics::m_smallPressure [protected]
 

FArrayBox* SelfGravityPhysics::m_source [protected]
 

CodeUnits SelfGravityPhysics::m_units [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Oct 5 14:02:18 2005 for Chombo&AMRSelfGravity by  doxygen 1.4.1