ADflow  v1.0
ADflow is a finite volume RANS solver tailored for gradient-based aerodynamic design optimization.
Functions/Subroutines
loadbalance Module Reference

Functions/Subroutines

subroutine loadbalancegrid
 
subroutine blockdistribution
 
subroutine initflowdoms
 
subroutine sortsubfaces (oldSubfaceID, blockID)
 
subroutine determinecomputeblocks (splitInfo)
 
subroutine bcfacessubblock (cgnsID, ii, jj)
 
subroutine externalfacessubblock (cgnsID, ii, jj, nSubPerCGNS, nAlloc, splitInfo)
 
subroutine internalfacessubblock (cgnsID, ii, jj, nSubPerCGNS, nAlloc, splitInfo)
 
subroutine graphpartitioning (emptyPartitions, commNeglected)
 
subroutine checkloadbalance (cellsBalanced, facesBalanced)
 
subroutine splitblock (compBlock, nSub, nCells, ranges)
 
subroutine split2block (nSub, n1, n2, nTarget, ranges, viscousDir)
 
subroutine reallocsubfacememory (ii, nAlloc)
 

Function/Subroutine Documentation

◆ bcfacessubblock()

subroutine loadbalance::bcfacessubblock ( integer(kind=inttype), intent(in)  cgnsID,
integer(kind=inttype), intent(in)  ii,
integer(kind=inttype), intent(inout)  jj 
)

Definition at line 1544 of file loadBalance.F90.

References communication::adflow_comm_world, partitionmod::blocks, cgnsgrid::cgnsdoms, cgnsgrid::cgnsfamilies, inputphysics::flowtype, communication::myid, commonformats::strings, and utils::terminate().

Referenced by determinecomputeblocks().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ blockdistribution()

subroutine loadbalance::blockdistribution

◆ checkloadbalance()

subroutine loadbalance::checkloadbalance ( logical, intent(out)  cellsBalanced,
logical, intent(out)  facesBalanced 
)

◆ determinecomputeblocks()

subroutine loadbalance::determinecomputeblocks ( type(splitcgnstype), dimension(cgnsndom), intent(in)  splitInfo)

Definition at line 1370 of file loadBalance.F90.

References bcfacessubblock(), partitionmod::blocks, cgnsgrid::cgnsdoms, cgnsgrid::cgnsndom, externalfacessubblock(), internalfacessubblock(), partitionmod::nblocks, and utils::terminate().

Referenced by blockdistribution().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ externalfacessubblock()

subroutine loadbalance::externalfacessubblock ( integer(kind=inttype), intent(in)  cgnsID,
integer(kind=inttype), intent(in)  ii,
integer(kind=inttype), intent(inout)  jj,
integer(kind=inttype), dimension(0:cgnsndom), intent(in)  nSubPerCGNS,
integer(kind=inttype), intent(inout)  nAlloc,
type(splitcgnstype), dimension(cgnsndom), intent(in)  splitInfo 
)

Definition at line 1768 of file loadBalance.F90.

References communication::adflow_comm_world, partitionmod::blocks, cgnsgrid::cgnsdoms, utils::delta(), communication::myid, reallocsubfacememory(), commonformats::strings, and utils::terminate().

Referenced by determinecomputeblocks().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ graphpartitioning()

subroutine loadbalance::graphpartitioning ( logical, intent(out)  emptyPartitions,
logical, intent(out)  commNeglected 
)

◆ initflowdoms()

subroutine loadbalance::initflowdoms

Definition at line 1180 of file loadBalance.F90.

References block::flowdoms, inputiteration::mgstartlevel, block::ndom, inputiteration::nmglevels, inputtimespectral::ntimeintervalsspectral, utils::nullifyflowdompointers(), and utils::terminate().

Referenced by loadbalancegrid().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ internalfacessubblock()

subroutine loadbalance::internalfacessubblock ( integer(kind=inttype), intent(in)  cgnsID,
integer(kind=inttype), intent(in)  ii,
integer(kind=inttype), intent(inout)  jj,
integer(kind=inttype), dimension(0:cgnsndom), intent(in)  nSubPerCGNS,
integer(kind=inttype), intent(inout)  nAlloc,
type(splitcgnstype), intent(in)  splitInfo 
)

Definition at line 2131 of file loadBalance.F90.

References partitionmod::blocks, cgnsgrid::cgnsdoms, and searchinternalneighbors().

Referenced by determinecomputeblocks().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loadbalancegrid()

subroutine loadbalance::loadbalancegrid

◆ reallocsubfacememory()

subroutine loadbalance::reallocsubfacememory ( integer(kind=inttype), intent(in)  ii,
integer(kind=inttype), intent(inout)  nAlloc 
)

Definition at line 3192 of file loadBalance.F90.

References partitionmod::blocks, and utils::reallocateinteger().

Referenced by externalfacessubblock(), and searchinternalneighbors().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sortsubfaces()

subroutine loadbalance::sortsubfaces ( integer(kind=inttype), dimension(*), intent(out)  oldSubfaceID,
type(distributionblocktype), intent(in)  blockID 
)

◆ split2block()

subroutine loadbalance::split2block ( integer(kind=inttype), intent(in)  nSub,
integer(kind=inttype), intent(in)  n1,
integer(kind=inttype), intent(in)  n2,
integer(kind=inttype), intent(in)  nTarget,
integer(kind=inttype), dimension(nsub, 3, 2), intent(inout)  ranges,
logical, dimension(3), intent(in)  viscousDir 
)

Definition at line 2985 of file loadBalance.F90.

References inputiteration::mgstartlevel, and inputiteration::nmglevels.

Referenced by splitblock().

Here is the caller graph for this function:

◆ splitblock()

subroutine loadbalance::splitblock ( type(distributionblocktype), intent(in)  compBlock,
integer(kind=inttype), intent(inout)  nSub,
integer(kind=inttype), intent(in)  nCells,
integer(kind=inttype), dimension(nsub, 3, 2), intent(out)  ranges 
)