SELF_DomainDecomposition_t Module



Contents


Derived Types

type, public :: DomainDecomposition_t

Components

TypeVisibilityAttributesNameInitial
integer, public, pointer, dimension(:):: elemToRank
integer, public :: maxMsg
integer, public :: mpiComm
logical, public :: mpiEnabled
integer, public :: mpiPrec
integer, public :: msgCount
integer, public :: nElem
integer, public :: nRanks
integer, public, pointer, dimension(:):: offSetElem
integer, public :: rankId
integer, public, allocatable:: requests(:)
integer, public, allocatable:: stats(:,:)

Type-Bound Procedures

procedure, public :: FinalizeMPIExchangeAsync
procedure, public :: Free => Free_DomainDecomposition_t
procedure, public :: GenerateDecomposition => GenerateDecomposition_DomainDecomposition_t
procedure, public :: Init => Init_DomainDecomposition_t
procedure, public :: SetElemToRank => SetElemToRank_DomainDecomposition_t

Subroutines

public subroutine DomainDecomp(nElems, nDomains, offsetElem)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: nElems
integer, intent(in) :: nDomains
integer, intent(out) :: offsetElem(0:nDomains)

public subroutine ElemToRank(nDomains, offsetElem, elemID, domain)

Arguments

TypeIntentOptionalAttributesName
integer, intent(in) :: nDomains
integer, intent(in) :: offsetElem(0:nDomains)
integer, intent(in) :: elemID
integer, intent(out) :: domain

public subroutine FinalizeMPIExchangeAsync(mpiHandler)

Arguments

TypeIntentOptionalAttributesName
class(DomainDecomposition_t), intent(inout) :: mpiHandler

public subroutine Free_DomainDecomposition_t(this)

Arguments

TypeIntentOptionalAttributesName
class(DomainDecomposition_t), intent(inout) :: this

public subroutine GenerateDecomposition_DomainDecomposition_t(this, nGlobalElem, maxMsg)

Arguments

TypeIntentOptionalAttributesName
class(DomainDecomposition_t), intent(inout) :: this
integer, intent(in) :: nGlobalElem
integer, intent(in) :: maxMsg

public subroutine Init_DomainDecomposition_t(this, enableMPI)

Arguments

TypeIntentOptionalAttributesName
class(DomainDecomposition_t), intent(inout) :: this
logical, intent(in) :: enableMPI

public subroutine SetElemToRank_DomainDecomposition_t(this, nElem)

Arguments

TypeIntentOptionalAttributesName
class(DomainDecomposition_t), intent(inout) :: this
integer, intent(in) :: nElem