BCFunction Class Reference

#include <BCFunc.H>

Inheritance diagram for BCFunction:

Inheritance graph
[legend]

List of all members.


Detailed Description

This base class represents a boundary condition for an elliptic or parabolic partial differential equation.

Public Member Functions

 BCFunction ()
 Base class constructor. Called by all subclass constructors.
virtual ~BCFunction ()
 Destructor.
virtual void operator() (FArrayBox &a_state, const Box &a_valid, const ProblemDomain &a_domain, Real a_dx, bool a_homogeneous)=0
virtual void operator() (FArrayBox &a_state, const Box &a_valid, const ProblemDomain &a_domain, Real a_dx, const DataIndex &a_index, bool a_homogeneous)
virtual void setTime (const Real &a_time)
void fillGhostCells (const LevelData< FArrayBox > &phi, const Real dx, const bool homogeneous)
 Fill the ghost cells for a single level.
void fillGhostCells (const Vector< LevelData< FArrayBox > * > &phi, const Real dx0, const Vector< int > &refV, const bool homogeneous)
 Fill the ghost cells for a Hierarchy of levels.

Private Member Functions

 BCFunction (const BCFunction &)
BCFunctionoperator= (const BCFunction &)

Constructor & Destructor Documentation

BCFunction::BCFunction (  )  [inline]

Base class constructor. Called by all subclass constructors.

virtual BCFunction::~BCFunction (  )  [inline, virtual]

Destructor.

BCFunction::BCFunction ( const BCFunction  )  [private]


Member Function Documentation

virtual void BCFunction::operator() ( FArrayBox a_state,
const Box a_valid,
const ProblemDomain a_domain,
Real  a_dx,
bool  a_homogeneous 
) [pure virtual]

Computes values of a solution, $\phi$, on ghost cells. These ghost values impose the boundary condition represented by the BCFunction object.

Parameters:
a_state The values of $\phi$ on the box given by a_valid.
a_valid The box on which the boundary condition is to be imposed.
a_domain The problem domain on which this boundary condition is imposed.
a_dx The grid spacing.
a_homogeneous If set to true, ghost values are computed for a homogeneous boundary condition. This is useful for multigrid solves.

Implemented in ConstBCFunction.

Referenced by operator()().

virtual void BCFunction::operator() ( FArrayBox a_state,
const Box a_valid,
const ProblemDomain a_domain,
Real  a_dx,
const DataIndex a_index,
bool  a_homogeneous 
) [inline, virtual]

Computes the values of $\phi$ on ghost cells specifying a data index. By default, this calls the version of the method without a DataIndex.

Parameters:
a_state The values of $\phi$ on the box given by a_valid.
a_valid The box on which the boundary condition is to be imposed.
a_domain The problem domain on which this boundary condition is imposed.
a_dx The grid spacing.
a_index A DataIndex that can be used in the calculation.
a_homogeneous If set to true, ghost values are computed for a homogeneous boundary condition. This is useful for multigrid solves.

References operator()().

virtual void BCFunction::setTime ( const Real a_time  )  [inline, virtual]

Sets the time associated with this boundary condition. By default, this method does nothing, so this aspect of BCFunction can be ignored for time-independent boundary conditions.

Parameters:
a_time The time to be passed to the boundary condition.

void BCFunction::fillGhostCells ( const LevelData< FArrayBox > &  phi,
const Real  dx,
const bool  homogeneous 
) [inline]

void BCFunction::fillGhostCells ( const Vector< LevelData< FArrayBox > * > &  phi,
const Real  dx0,
const Vector< int > &  refV,
const bool  homogeneous 
) [inline]

Fill the ghost cells for a Hierarchy of levels.

References fillGhostCells().

BCFunction& BCFunction::operator= ( const BCFunction  )  [private]


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

Generated on Fri Nov 24 03:42:54 2017 for Chombo + EB by  doxygen 1.5.5