3.3. Boundary Conditions
This section provides a high-level overview of the types of boundary conditions that can be applied in Aria. These boundary conditions are often denoted as Dirichlet, Neumann or Robin conditions. Dirichlet or essential boundary conditions for a solution field stem directly from the governing equations for a particular physics. In Aria, Neumann and Robin conditions are generally categorized as flux boundary conditions.
3.3.1. Dirichlet (Specified Value)
The Dirichlet boundary condition is probably the most
straightforward boundary condition to apply. Since, by
definition, it is not a function of the unknown solution field,
its complexity is limited to being a known function of space and
time. The specified field must be continuous on the surface
of each subdomain, . See the
command reference
for a complete list of ways to specify a dirichlet BCs.
3.3.2. Neumann (Specified Flux)
The flux boundary condition may be written (for the flux of conserved
quantity
) as
(3.93)
where is a given function.
Note that an adiabatic boundary condition (default) defines a zero flux
boundary condition:
See the command reference for a complete list of ways to specify a flux BCs.
3.3.3. Fluxbp
Fluxbp provides a flux condition integrated by parts, with the primary use case in Aria for modeling Capillary forces in CDFEM simulations (see CDFEM Approach to Modeling the Capillary Force for more details). In this boundary condition, the flux condition is incorporated via integration by parts, which is beneficial in avoiding higher-order derivatives. For example, in multiphase flows involving capillary forces, using Fluxbp conditions can avoid higher-order derivatives associated with calculating the local curvature.
3.3.4. Disting
Aria’s distinguishing condition (DC) feature is an essential ingredient in solving many coupled physics problems. A distinguishing condition is really just another equation specification except that it typically replaces a regular equation on a subset of the domain such as a surface.
For example, the temperature can be constrained to a specified wall temperature via a polynomial or string function to specify the following
(3.94)
where is a reference wall temperature.
An additional feature of distinguishing conditions is that multiple DCs for a given degree of freedom on a given surface are added together. This additive feature allows users to build up their own conditions from primitive ones using string functions (see String Functions), where any zero-valued function can serve as a distinguishing condition.
An important thing to know about these conditions is that they are satisfied weakly as
(3.95)
Consequently, the condition is only satisfied weakly and to within the tolerance of the nonlinear solver.
3.3.5. Rotated
Rotated boundary conditions are specialized forms of distinguishing conditions. For example, in solving fluids problems with a free surface where the mesh boundary moves with the material, e.g., an ALE simulation, a kinematic condition is used to tie the mesh to the fluid on the free boundary. In this case, the velocity normal to the free surface satisfies
(3.96)
In this case, the matrix rows associated with the ordinal directions of the equation are rotated prior to applying the distinguishing conditions, such that the matrix rows now correspond to normal and tangential directions instead of the original ordinate directions. For (3.96), the rows associated with the mesh degrees of freedom would be rotated after finite element assembly, but before applying the distinguishing condition, and (3.96) only contributes to a single matrix row which now corresponds to the normal direction. The rotation is then undone such that the full solution is still represented in the problem coordinate system, and physics associated with tangential directions were not affected.
3.3.6. Interface
Interface boundary conditions are used to provide additional contributions analogous to flux or disting boundary conditions on an interface between two materials (interface and interface_disting, respectively). Interface boundary conditions are applied to contiguous meshes. These contributions are equivalent to those in (3.93); however, the flux can now have a functional relationship on quantities on both sides of the interface. If the same degree of freedom is used on both sides of the interface, by construction the finite element volume assembly will account for the flux through the interface, so any contribution from the interface BC would be an additional contribution. However, there are situations where the volume contribution is not done on both sides of the interface, e.g., when both volume blocks are in separate regions or when the volume blocks are in different material phases. One example of this kind of usage is for Robin-style coupling in conjugate heat transfer problems.
3.3.7. Colloc Prefix
The colloc keyword works for distinguishing and rotated boundary conditions. Instead of applying the penalty function weakly, i.e., weighted by the finite element function and integrated over the surface, the boundary condition is applied nodally via a lumped approximation.
Warning
While colloc boundary conditions should effectively be the same as lumped boundary conditions, some inconsistencies have been noted in how colloc boundary conditions are implemented. Namely, COLLOC_ROTATED seems to mirror a lumped approximation for a rotated boundary condition, while INERFACE_COLLOC_DISTING seems to use a simple (unweighted) nodal contribution
3.3.8. Lumped Prefix
The lumped prefix is applicable to flux and disting style boundary conditions. For LUMPED_FLUX, instead of using a consistent finite element integration, the flux contributions are lumped at the nodes similarly to a lumped mass approximation. As mentioned in the previous section, LUMPED_DISTING provides a lumped version of the distinguishing condition, except when in conjunction with a INTERFACE_COLLOC_DISTING. More details can be found in Mass Lumping.