FaceNodeBC is a class to encapsulate the operations of 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*dphi/dx + B*phi = C.
The derived class provides a function to fill A and B and C.
|
Constructors, destructor and defines |
| FaceNodeBC () |
| FaceNodeBC (int a_dir, Side::LoHiSide a_sd) |
| FaceNodeBC (int a_dir, Side::LoHiSide a_sd, const Interval &a_comps) |
virtual | ~FaceNodeBC () |
virtual FaceNodeBC * | new_boxBC () const=0 |
void | define (int a_dir, Side::LoHiSide a_sd) |
void | define (int a_dir, Side::LoHiSide a_sd, const Interval &a_comps) |
Protected Member Functions |
|
virtual void | applyInhomogeneousBCs (FArrayBox &a_state, const ProblemDomain &a_domain, Real a_dx) const |
virtual void | applyInhomogeneousBCs (FArrayBox &a_state, const Box &a_domain, Real a_dx) const |
virtual void | applyHomogeneousBCs (FArrayBox &a_state, const ProblemDomain &domain, Real a_dx) const |
virtual void | applyHomogeneousBCs (FArrayBox &a_state, const Box &domain, Real a_dx) const |
virtual void | applyEitherBCs (FArrayBox &a_state, const ProblemDomain &domain, Real a_dx, bool a_homogeneous) const |
virtual void | applyEitherBCs (FArrayBox &a_state, const Box &domain, Real a_dx, bool a_homogeneous) const |
virtual void | applyBCs (const Box &a_bcbox, FArrayBox &a_state, const FArrayBox &a_neumfac, const FArrayBox &a_dircfac, const FArrayBox &a_inhmval, Real a_dx) const |
|
virtual void | fillBCValues (FArrayBox &a_neumfac, FArrayBox &a_dircfac, FArrayBox &a_inhmval, Real a_dx, const ProblemDomain &domain) const=0 |
virtual void | fillBCValues (FArrayBox &a_neumfac, FArrayBox &a_dircfac, FArrayBox &a_inhmval, Real a_dx, const Box &domain) const=0 |
Protected Attributes |
Side::LoHiSide | m_side |
int | m_direction |
Interval | m_components |
Private Member Functions |
| FaceNodeBC (const FaceNodeBC &) |
virtual void | operator= (const FaceNodeBC &) |
Friends |
class | DomainNodeBC |