atl_modg_2d_set_bnd Subroutine

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

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

!!OMP PARALLEL & !!OMP PRIVATE(iBC, iDir, iAlign, iFace) & !!OMP DEFAULT(shared)

signfact = int(signfact * sidefact)

!!OMP END PARALLEL

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_statedata_type), intent(inout) :: statedata

The state data on the current level

type(atl_modg_2d_scheme_type), intent(inout) :: modg

The parameters of th the modg scheme.

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(2)

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

integer, intent(in) :: currentLevel

the level to compute on