atl_modg_set_bnd Subroutine

public subroutine atl_modg_set_bnd(bc, boundary, facedata, equation, time, mesh, poly_proj, nodalBnd, material, currentLevel, statedata)

Subroutine to set face values to impose boundary conditions at a certain point of the domain. The subroutine is operating levelwise.

Todo

For zero gradient BC, we need stateData passed into this routine

Arguments

Type IntentOptional Attributes Name
type(atl_boundary_type), intent(in) :: bc(:)

The global description of the boundaries.

type(atl_level_boundary_type), intent(in) :: boundary

The levelwise collection of boundary elements and boundary faces.

type(atl_facedata_type), intent(inout) :: facedata

The face data on the current level

type(atl_Equations_type), intent(in) :: equation

The underlying equation system

type(tem_time_type), intent(in) :: time

The absolute time point.

type(atl_cube_elem_type), intent(in) :: mesh

The description of the mesh on the current level.

type(ply_poly_project_type), intent(inout) :: poly_proj

Data for the projection methods

logical, intent(in) :: nodalBnd

Set boundaries in nodal fashion by default? If set to false, the boundaries may still be set in nodal way whenever necessary (e.g. boundaries which have space-time dependence, etc.)

type(atl_faceMaterialData_type), intent(in), optional :: material(3)

Material description of the faces contained in boundary. One entry for each spatial direction, i.e. x,y,z.

integer, intent(in) :: currentLevel

the level to compute on

type(atl_statedata_type), intent(inout) :: statedata

The state data on the current level