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

GaussBC Class Reference

Class to enforce proper boundary conditions for the spherical collapse of a cloud. More...

#include <GaussBC.H>

Inheritance diagram for GaussBC:

Inheritance graph
[legend]
Collaboration diagram for GaussBC:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 GaussBC ()
 Null constructor.
 GaussBC (int dir, Side::LoHiSide sd)
 Basic constructor -- sets Interval to (0,0).
 GaussBC (int dir, Side::LoHiSide sd, const Interval &a_comps)
 Full constructor.
 ~GaussBC ()
 Destructor.
virtual void setParameters (const Real &a_mass, const Real &a_lScale=1, const RealVect &a_center=RealVect(D_DECL(0.5, 0.5, 0.5)))

Protected Member Functions

virtual void fillBCValues (FArrayBox &a_neumfac, FArrayBox &a_dircfac, FArrayBox &a_inhmval, Real a_dx, const Box &a_domain) const
virtual void fillBCValues (FArrayBox &a_neumfac, FArrayBox &a_dircfac, FArrayBox &a_inhmval, Real a_dx, const ProblemDomain &a_domain) const
BoxGhostBCnew_boxghostbc () const

Protected Attributes

Real m_mass
 mass that determines the potential at the boundary cells
Real m_scale
 scale to convert dx -> dl= scale*dx
RealVect m_center
 location of the center of mass of m_mass

Friends

class DomainGhostBC

Detailed Description

Class to enforce proper boundary conditions for the spherical collapse of a cloud.

We require that the potential on the boundary of the box is set by the mass enclosed by the radius at which the cell find itself. We use this class for two problems: 1) the collapse of a pressureless cloud in which case the mass referred to above is the total mass in the box. 2) the cosmological, secondary infall problem in which case the mass is due to the overdensity with respect to the average.

Recall that BoxGhostBC is a class to encapsulate the operations of ghost-cell boundary conditions at a face. If the solution is phi and the face normal direction is x, the boundary conditions usually used can be expressed as A*phi + B*dphi/dx = C. Our conditions require, A=1, B=0, C=f(r) These functions are only meant to be called by DomainGhostBC


Constructor & Destructor Documentation

GaussBC::GaussBC  ) 
 

Null constructor.

GaussBC::GaussBC int  dir,
Side::LoHiSide  sd
 

Basic constructor -- sets Interval to (0,0).

GaussBC::GaussBC int  dir,
Side::LoHiSide  sd,
const Interval a_comps
 

Full constructor.

GaussBC::~GaussBC  ) 
 

Destructor.


Member Function Documentation

virtual void GaussBC::fillBCValues FArrayBox a_neumfac,
FArrayBox a_dircfac,
FArrayBox a_inhmval,
Real  a_dx,
const ProblemDomain a_domain
const [protected, virtual]
 

Fills coefficient arrays -- fills neumann factor with 1.0 and other two fields with 0.0.

Implements BoxGhostBC.

virtual void GaussBC::fillBCValues FArrayBox a_neumfac,
FArrayBox a_dircfac,
FArrayBox a_inhmval,
Real  a_dx,
const Box a_domain
const [protected, virtual]
 

Fills coefficient arrays -- fills neumann factor with 1.0 and other two fields with 0.0.

Implements BoxGhostBC.

BoxGhostBC* GaussBC::new_boxghostbc  )  const [protected, virtual]
 

Virtual constructor workaround.

Implements BoxGhostBC.

virtual void GaussBC::setParameters const Real a_mass,
const Real a_lScale = 1,
const RealVect a_center = RealVect(D_DECL(0.5, 0.5, 0.5))
[virtual]
 


Friends And Related Function Documentation

friend class DomainGhostBC [friend]
 

Reimplemented from BoxGhostBC.


Member Data Documentation

RealVect GaussBC::m_center [protected]
 

location of the center of mass of m_mass

Real GaussBC::m_mass [protected]
 

mass that determines the potential at the boundary cells

Real GaussBC::m_scale [protected]
 

scale to convert dx -> dl= scale*dx


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