This class holds a domain's worth of FaceNodeBCs, one for each face of the physical domain. The user adds a FaceNodeBC-derived class for each face to enforce boundary conditions.
If the solution is phi and the face normal direction is x, the boundary conditions at a face are expressed as
A*dphi/dx + B*phi = C.
|
Public Member Functions |
|
| | DomainNodeBC () |
| | ~DomainNodeBC () |
| DomainNodeBC & | operator= (const DomainNodeBC &) |
| | DomainNodeBC (const DomainNodeBC &) |
|
| const FaceNodeBC & | operator() (int direction, Side::LoHiSide side) const |
|
| void | setFaceNodeBC (const FaceNodeBC &a_bc) |
|
| void | applyHomogeneousBCs (NodeFArrayBox &a_state, const ProblemDomain &a_domain, Real a_dx) const |
| void | applyHomogeneousBCs (NodeFArrayBox &a_state, const Box &a_domain, Real a_dx) const |
| void | applyInhomogeneousBCs (NodeFArrayBox &a_state, const ProblemDomain &a_domain, Real a_dx) const |
| void | applyInhomogeneousBCs (NodeFArrayBox &a_state, const Box &a_domain, Real a_dx) const |
Protected Member Functions |
| bool | isBCDefined (int a_dir, const Side::LoHiSide a_side) const |
| void | resetFaceNodeBC (const int a_dir, const Side::LoHiSide a_side) |
Protected Attributes |
| Tuple< FaceNodeBC *, SpaceDim > | m_loBC |
| Tuple< FaceNodeBC *, SpaceDim > | m_hiBC |