mus_construct Subroutine

public subroutine mus_construct(scheme, geometry, params)

Initialize Musubi data strucutres based on data provided by Treelm

Load the mesh and boundary conditions for this process from disk. Get the level-wise treeID lists and create the required ghost and halo elements.

Result

After this routine, all data structures for starting the main loop of the solver are allocated and ready.

Arguments

TypeIntentOptionalAttributesName
type(mus_scheme_type), intent(inout) :: scheme

scheme information including fluid, boundary and flow information

type(mus_geom_type), intent(inout) :: geometry

geometric information

type(mus_param_type), intent(in) :: params

run-time Parameters


Calls

mus_constructwbuild_bcLevelPointer
w
wbuild_BClists
w
wcalculate_nElems
w
wcommunicate_property
w
wdebug_connectivity
w
wdebug_dependenciesFromCoarser
w
wdebug_dependenciesFromFiner
w
wdebug_glob_boundary_type
w
wdebug_normals
w
wdestroy
w
wfinalize_BClist
w
winit_levelBuffers
w
wmus_alloc_fieldBC
w
wmus_build_BCStencils
w
wmus_build_IBMStencils
w
wmus_calc_commAmount
w
wmus_calc_nElems
w
wmus_construct_connectivity
w
wmus_dump_levelDescIntp_nElems
w
wmus_field_getSymmetricBCs
w
wmus_finalize_layout
w
wmus_init_auxFieldArrays
w
wmus_init_levelDescIntpArrays
w
wmus_intp_update_depFromCoarser
w
wmus_intp_update_depFromFiner
w
wmus_pdf_allocate
w
wmus_update_BcghostElem
w
wmus_updateConnectivity_forSymmetricBC
w
wset_halo_commLinks
w
wset_sendHaloBits
w
wtem_build_horizontalDependencies
w
wtem_build_verticalDependencies
w
wtem_debug_bc_prop
w
wtem_debug_HorizontalDependencies
w
wtem_dumpTreeIDlists
w
wtem_find_allElements
w
wtem_getTimerVal
w
wtem_horizontalSpacer
w
wtem_init_elemLevels
w
wtem_startTimer
w
wtem_stopTimer
w
wtem_write_debugMesh
w
wupdate_BClists
w

Called by

proc~~mus_construct~~CalledByGraph proc~mus_construct mus_construct 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 proc~mus_solve mus_solve program~musubi->proc~mus_solve proc~mus_solve->none~do_balance

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, private :: iLevel
integer, private :: iStencil
integer, private :: iBC
integer, private :: iField
logical, private :: requireAll_loc
integer, private :: minLevel
integer, private :: maxLevel
type(mus_statistics_type), private :: stat
type(logical_array_type), private, allocatable:: haloRequired(:)

mark halo elements which communicate all its links

integer, private :: symmetricBCs(geometry%boundary%nBCtypes)
integer, private :: nSymBCs