communication faces (at least by one of the neighboring elements). It checks if the communicated elements are from finer/coarser level and attaches the fromFiner/fromCoarser property to this face if necessary.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_levelDesc_type), | intent(in) | :: | levelDesc(1:3,minLevel:maxLevel) |
Level descriptor for each level of your mesh. |
||
integer, | intent(in) | :: | minLevel |
Minimum level of your mesh. |
||
integer, | intent(in) | :: | maxLevel |
Maximum level of your mesh. |
||
type(tem_face_type), | intent(inout) | :: | faces(minLevel:maxLevel) |
The face descriptor to be corrected. |
subroutine tem_extend_remotePrp(levelDesc, minLevel, maxLevel, faces )
! --------------------------------------------------------------------------
!> Minimum level of your mesh.
integer, intent(in) :: minLevel
!> Maximum level of your mesh.
integer, intent(in) :: maxLevel
!> Level descriptor for each level of your mesh.
type(tem_levelDesc_type), intent(in) :: levelDesc(1:3,minLevel:maxLevel)
!> The face descriptor to be corrected.
type(tem_face_type),intent(inout) :: faces(minLevel:maxLevel)
! --------------------------------------------------------------------------
integer :: iLevel, iDir
! --------------------------------------------------------------------------
! We correct the properties for each level and each direction independently
levelLoop: do iLevel = minLevel, maxLevel
directionLoop: do iDir = 1, 3
! Check for from finer property of the communicated faces.
call tem_extend_commFromFinerPrp( levelDesc(iDir, iLevel), iDir, &
& faces(iLevel)%faces(iDir) )
! Check for from coarser property of the communicated faces.
call tem_extend_commFromCoarserPrp( levelDesc(iDir, iLevel), iDir, &
& faces(iLevel)%faces(iDir) )
end do directionLoop
end do levelLoop
end subroutine tem_extend_remotePrp