Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
logical | :: | correct | ||||
integer | :: | rc |
subroutine test_create_dual_from_file(correct, rc) type(ESMF_Mesh) :: mesh logical :: correct integer :: rc integer :: petCount, localPet type(ESMF_VM) :: vm ! get global VM call ESMF_VMGetGlobal(vm, rc=rc) if (rc /= ESMF_SUCCESS) return call ESMF_VMGet(vm, localPet=localPet, petCount=petCount, rc=rc) if (rc /= ESMF_SUCCESS) return ! return with an error if not 1 or 4 PETs if ((petCount /= 1) .and. (petCount /=4)) then rc=ESMF_FAILURE return endif ! Read mesh from file mesh=ESMF_MeshCreate("data/test_sph_3x3_esmf.nc", & fileformat=ESMF_FILEFORMAT_ESMFMESH, & convertToDual=.true., & rc=rc) if (rc /= ESMF_SUCCESS) return ! DEBUG OUTPUT !call ESMF_MeshWrite(mesh,"mesh_dual",rc=rc) !if (rc .ne. ESMF_SUCCESS) rc=ESMF_FAILURE ! Get rid of Mesh call ESMF_MeshDestroy(mesh, rc=rc) if (rc /= ESMF_SUCCESS) return ! Return success rc=ESMF_SUCCESS end subroutine test_create_dual_from_file