Library of utility functions for assisiting in the application of boundary conditions.
More...
#include <Proto_BoundaryCondition.H>
|
static Box | Boundary (Box domainBox, Face face) |
| Returns the Box corresponding to the boundary of domainBox on face. For low-faces along the axis dir, the output is domainBox.edge(dir). For high-faces, the output is domainBox.adjacent(dir). That is to say, Low boundaries are contained within domainBox and high boundaries are just outside of domainBox. This is the convention used in all of Proto. More...
|
|
template<class T > |
static BCStencil< T > | DirichletStencil (T dx, Face face, int fluxCoord) |
| Generates the BCStencil object needed to apply a dirichlet boundary condition to a flux in direction dir on a specified face. More...
|
|
template<class T , unsigned int C, MemType MEM, unsigned int D, unsigned int E> |
static void | Dirichlet (Array< BoxData< T, C, MEM, D, E >, DIM > &fluxes, const BoxData< T, C, MEM, D, E > &state, T dirichletBCValue, Face face, Box interiorBox, Array< T, DIM > dx) |
| Applies a constant dirichlet boundary condition on a specified face by updating the fluxes in all directions. More...
|
|
template<class T , unsigned int C, MemType MEM, unsigned int D, unsigned int E> |
static void | Dirichlet (Array< BoxData< T, C, MEM, D, E >, DIM > &fluxes, const BoxData< T, C, MEM, D, E > &state, const BoxData< T, C, MEM, D, E > &dirichletBCvalues, Face face, Box interiorBox, Array< T, DIM > dx) |
| Applies a variable dirichlet boundary condition on a specified face by updating the fluxes in all directions. More...
|
|
Library of utility functions for assisiting in the application of boundary conditions.
◆ Boundary()
Box Proto::BoundaryCondition::Boundary |
( |
Box |
domainBox, |
|
|
Face |
face |
|
) |
| |
|
inlinestatic |
Returns the Box corresponding to the boundary of domainBox on face. For low-faces along the axis dir, the output is domainBox.edge(dir). For high-faces, the output is domainBox.adjacent(dir). That is to say, Low boundaries are contained within domainBox and high boundaries are just outside of domainBox. This is the convention used in all of Proto.
- Parameters
-
domainBox | - The Box corresponding to the interior of a domain |
face | - The face of domainBox whose boundary Box is to be computed |
◆ DirichletStencil()
template<class T >
BCStencil< T > Proto::BoundaryCondition::DirichletStencil |
( |
T |
dx, |
|
|
Face |
face, |
|
|
int |
fluxCoord |
|
) |
| |
|
inlinestatic |
Generates the BCStencil object needed to apply a dirichlet boundary condition to a flux in direction dir on a specified face.
- Parameters
-
dx | - Grid spacing |
face | - The face corresponding to the boundary condition |
fluxDir | - Coordinate of the flux being updated. Can be normal or tangential |
◆ Dirichlet() [1/2]
template<class T , unsigned int C, MemType MEM, unsigned int D, unsigned int E>
void Proto::BoundaryCondition::Dirichlet |
( |
Array< BoxData< T, C, MEM, D, E >, DIM > & |
fluxes, |
|
|
const BoxData< T, C, MEM, D, E > & |
state, |
|
|
T |
dirichletBCValue, |
|
|
Face |
face, |
|
|
Box |
interiorBox, |
|
|
Array< T, DIM > |
dx |
|
) |
| |
|
inlinestatic |
Applies a constant dirichlet boundary condition on a specified face by updating the fluxes in all directions.
- Parameters
-
fluxes | - flux data which will be updated on the appropriate boundary to apply the BC |
state | - state data used to apply the BC |
dirichletBCValue | - constant value of the state on the boundary. Note that the same constant Will be applied to every component of each flux. Alias as needed to apply BCs componentwise. |
face | - the face on which the boundary condition will be applied |
interiorBox | - defines which elements of state and fluxes are interior to the domain. This can be larger than the Boxes defining the state / fluxes. In practice, fluxes and state are patch scoped values and interiorBox is the Box associated with a ProblemDomain. |
dx | - anisotropic grid spacing |
◆ Dirichlet() [2/2]
template<class T , unsigned int C, MemType MEM, unsigned int D, unsigned int E>
void Proto::BoundaryCondition::Dirichlet |
( |
Array< BoxData< T, C, MEM, D, E >, DIM > & |
fluxes, |
|
|
const BoxData< T, C, MEM, D, E > & |
state, |
|
|
const BoxData< T, C, MEM, D, E > & |
dirichletBCvalues, |
|
|
Face |
face, |
|
|
Box |
interiorBox, |
|
|
Array< T, DIM > |
dx |
|
) |
| |
|
inlinestatic |
Applies a variable dirichlet boundary condition on a specified face by updating the fluxes in all directions.
- Parameters
-
fluxes | - flux data which will be updated on the appropriate boundary to apply the BC |
state | - state data used to apply the BC |
dirichletBCValues | - values of the state on the boundary |
face | - the face on which the boundary condition will be applied |
interiorBox | - defines which elements of state and fluxes are interior to the domain. This can be larger than the Boxes defining the state / fluxes. In practice, fluxes and state are patch scoped values and interiorBox is the Box associated with a ProblemDomain. |
dx | - anisotropic grid spacing |
The documentation for this class was generated from the following file: