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

Type IntentOptional Attributes Name
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~check_solid_in_bc check_solid_in_bc proc~remove_solid_in_bc->proc~check_solid_in_bc proc~rearrange_bc_elems rearrange_bc_elems proc~remove_solid_in_bc->proc~rearrange_bc_elems val val proc~check_solid_in_bc->val proc~rearrange_bc_elems->val

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 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 proc~mus_solve mus_solve proc~mus_solve->proc~mus_perform_dynloadbal program~musubi musubi program~musubi->proc~mus_initialize