Compute block extents.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(block_object), | intent(inout) | :: | self | Block. |
elemental subroutine compute_extents(self)
!< Compute block extents.
class(block_object), intent(inout) :: self !< Block.
self%error%status = ERROR_BLOCK_COMPUTE_EXTENTS_FAILED
associate(ni=>self%signature%ni, nj=>self%signature%nj, nk=>self%signature%nk)
if (allocated(self%node)) then
self%signature%emin%x = minval(self%node(1:ni, 1:nj, 1:nk)%vertex%x)
self%signature%emin%y = minval(self%node(1:ni, 1:nj, 1:nk)%vertex%y)
self%signature%emin%z = minval(self%node(1:ni, 1:nj, 1:nk)%vertex%z)
self%signature%emax%x = maxval(self%node(1:ni, 1:nj, 1:nk)%vertex%x)
self%signature%emax%y = maxval(self%node(1:ni, 1:nj, 1:nk)%vertex%y)
self%signature%emax%z = maxval(self%node(1:ni, 1:nj, 1:nk)%vertex%z)
self%error%status = NO_ERROR
endif
endassociate
endsubroutine compute_extents