Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(ESMF_Grid) | :: | grid | ||||
type(ESMF_StaggerLoc) | :: | staggerloc | ||||
integer, | intent(out), | optional | :: | rc |
subroutine checkGridLite(grid,staggerloc,rc) type (ESMF_Grid) :: grid type(ESMF_StaggerLoc) :: staggerloc integer, intent(out), optional :: rc type(ESMF_GridDecompType) :: decompType integer :: localDECount, lDE, ec(ESMF_MAXDIM) integer :: localrc, i, dimCount if (present(rc)) rc = ESMF_RC_NOT_IMPL ! Make sure Grid isn't arbitrarily distributed call ESMF_GridGetDecompType(grid, decompType, rc=localrc) if (ESMF_LogFoundError(localrc, ESMF_ERR_PASSTHRU, & ESMF_CONTEXT, rcToReturn=rc)) return ! Error if decompType is ARBITRARY if (decompType .eq. ESMF_GRID_ARBITRARY) then call ESMF_LogSetError(rcToCheck=ESMF_RC_ARG_BAD, & msg="- can't currently regrid an arbitrarily distributed Grid", & ESMF_CONTEXT, rcToReturn=rc) return endif if(present(rc)) rc = ESMF_SUCCESS end subroutine checkGridLite