countnBnds Subroutine

private subroutine countnBnds(globBC, boundaryID, tree, stencil, nBCs, comm)

Identify the number of boundary condition elements of each BC type and number of elements with multiple BC types. This is 1st step in Build_BClists

Arguments

TypeIntentOptionalAttributesName
type(glob_boundary_type), intent(inout) :: globBC(nBCs)

boundaries for the elements with bnd property set

integer(kind=long_k), intent(in) :: boundaryID(:,:)

boundary information from mesh

type(treelmesh_type), intent(in) :: tree

fluid tree from mesh

type(tem_stencilHeader_type), intent(in) :: stencil

stencil

integer, intent(in) :: nBCs

contains pdf global information

integer, intent(in) :: comm

mpi communication enviroment with mpi communicator


Calls

proc~~countnbnds~~CallsGraph proc~countnbnds countnBnds mpi_allreduce mpi_allreduce proc~countnbnds->mpi_allreduce proc~tem_horizontalspacer tem_horizontalSpacer proc~countnbnds->proc~tem_horizontalspacer proc~tem_levelof tem_LevelOf proc~countnbnds->proc~tem_levelof

Called by

proc~~countnbnds~~CalledByGraph proc~countnbnds countnBnds proc~build_bclists build_BClists proc~build_bclists->proc~countnbnds proc~mus_construct mus_construct proc~mus_construct->proc~build_bclists proc~mus_initialize mus_initialize proc~mus_initialize->proc~mus_construct proc~mus_perform_dynloadbal mus_perform_dynLoadBal proc~mus_perform_dynloadbal->proc~mus_construct program~mus_harvesting mus_harvesting program~mus_harvesting->proc~mus_construct program~musubi musubi program~musubi->proc~mus_initialize none~do_balance do_balance none~do_balance->proc~mus_perform_dynloadbal

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: iElem
integer, private :: iDir
integer, private :: iBnd
integer, private :: level
integer, private :: iMeshDir
integer, private :: iErr
integer, private :: iLevel
integer, private :: minLevel
integer, private :: maxLevel
logical, private :: found(nBCs)
integer(kind=long_k), private :: bID
integer, private, allocatable:: nBnds(:,:)

number of local elements of each boundary type in each level

integer, private, allocatable:: nCornerBnds(:,:)

number of local elements with multiple boundary type in each level

integer, private, allocatable:: nBnds_total(:,:)