mus_balance Subroutine

private subroutine mus_balance(tree, minLevel, maxLevel, levelDesc, nBCs, globBC, general, sparta)

This routine performs the load balancing for multilevel simulations. The weights are calculated on the basis of levelwise run time, which are then fed to sparta for calculation of splitting positions. Restart files are saved and the simulation is restarted with the newly distributed mesh

Arguments

Type IntentOptional Attributes Name
type(treelmesh_type), intent(inout) :: tree

geometry infomation

integer, intent(in) :: minLevel

min level and max level

integer, intent(in) :: maxLevel

min level and max level

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

Level descriptor

integer, intent(in) :: nBCs

global IBM type Number of boundary conditions

type(glob_boundary_type), intent(in) :: globBC(nBCs)

BC elements information

type(tem_general_type), intent(in) :: general

global parameters

type(tem_sparta_type), intent(inout) :: sparta

Sparta data type