remove_solid_in_bc Subroutine

public subroutine remove_solid_in_bc(minLevel, maxLevel, nBCs, nFields, levelPointer, levelDesc, globBC, fields)

First check count number of valid elements (non-solid) in each BC. Then rearrange BC elements list so it contains only valid elements. Update fields%bc%elemLvl%stencilPos fields%bc%elemLvl%posInNghElems accordingly.

\todo: do this for both SBB and LIBB?

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: minLevel
integer, intent(in) :: maxLevel
integer, intent(in) :: nBCs
integer, intent(in) :: nFields
integer, intent(in) :: levelPointer(:)

Level pointer

type(tem_levelDesc_type), intent(in) :: levelDesc(minLevel:maxLevel)

Level Descriptor

type(glob_boundary_type) :: globBC(nBCs)
type(mus_field_type) :: fields(nFields)

Calls

proc~~remove_solid_in_bc~~CallsGraph proc~remove_solid_in_bc remove_solid_in_bc proc~rearrange_bc_elems rearrange_bc_elems proc~remove_solid_in_bc->proc~rearrange_bc_elems proc~check_solid_in_bc check_solid_in_bc proc~remove_solid_in_bc->proc~check_solid_in_bc

Called by

proc~~remove_solid_in_bc~~CalledByGraph proc~remove_solid_in_bc remove_solid_in_bc proc~update_bclists update_BClists proc~update_bclists->proc~remove_solid_in_bc proc~mus_construct mus_construct proc~mus_construct->proc~update_bclists proc~mus_initialize mus_initialize proc~mus_initialize->proc~mus_construct program~mus_harvesting mus_harvesting program~mus_harvesting->proc~mus_construct proc~mus_perform_dynloadbal mus_perform_dynLoadBal proc~mus_perform_dynloadbal->proc~mus_construct none~do_balance do_balance none~do_balance->proc~mus_perform_dynloadbal program~musubi musubi program~musubi->proc~mus_initialize

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: nValid(minLevel:maxLevel)

number of valid BC elements

integer, private, allocatable:: posInBCElem(:,:)

positions of only valid elements (non-solid) in bc_elems_type

integer, private :: iBC
integer, private :: iField
integer, private :: iLevel
integer, private :: iElem
logical, private :: allWall