Skip to content

Commit

Permalink
Merge pull request #777 from rem1776/release/2021.02
Browse files Browse the repository at this point in the history
2021.02.01 Patch changes
  • Loading branch information
rem1776 authored Jul 9, 2021
2 parents b9fc651 + 76229fe commit 879e883
Show file tree
Hide file tree
Showing 5 changed files with 638 additions and 12 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ and this project uses `yyyy.rr[.pp]`, where `yyyy` is the year a patch is releas
`rr` is a sequential release number (starting from `01`), and an optional two-digit
sequential patch number (starting from `01`).

## [2021.02.01] - 2021-07-09
### Fixed
- MPP: Fixed uninitialized variables for data domains in mpp domain broadcast routines
### Added
- MPP: Restored deleted pset functionality needed by GFDL SCM by reinstating mpp_peset.F90

## [2021.02] - 2021-05-20
### Added
- FMS2_IO: Added fms2_io support for boundary condition restarts. `register_restart_region_2d` and `register_restart_region_3d` were added to fms2_io’s `register_restart_field` interface and `read_restart_bc` and `write_restart_bc` subroutines were added to read and write boundary conditions restarts. See [test_fms/fms2_io/test_bc_restart.F90](https://github.com/NOAA-GFDL/FMS/blob/9d55115a331685e4c6e01f2dfb3b770a9f80fa37/test_fms/fms2_io/test_bc_restart.F90) for sample usage.
Expand Down
2 changes: 1 addition & 1 deletion configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ AC_PREREQ([2.69])

# Initialize with name, version, and support email address.
AC_INIT([GFDL FMS Library],
[2021.02.0],
[2021.02.01],
[[email protected]],
[FMS],
[https://www.gfdl.noaa.gov/fms])
Expand Down
9 changes: 6 additions & 3 deletions mpp/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ libmpp_la_SOURCES = \
mpp_efp.F90 \
mpp_memutils.F90 \
mpp_memuse.c \
mpp_pset.F90 \
include/group_update_pack.inc \
include/group_update_unpack.inc \
include/mpp_alltoall_mpi.h \
Expand Down Expand Up @@ -171,7 +172,7 @@ mpp_utilities_mod.$(FC_MODEXT): \
mpp_domains_mod.$(FC_MODEXT): \
mpp_data_mod.$(FC_MODEXT) \
mpp_parameter_mod.$(FC_MODEXT) \
mpp_mod.$(FC_MODEXT) \
mpp_mod.$(FC_MODEXT) \
mpp_memutils_mod.$(FC_MODEXT) \
mpp_efp_mod.$(FC_MODEXT) \
include/mpp_define_nest_domains.inc \
Expand Down Expand Up @@ -233,6 +234,7 @@ mpp_io_mod.$(FC_MODEXT): \
include/mpp_io_unstructured_read.inc
mpp_efp_mod.$(FC_MODEXT): mpp_parameter_mod.$(FC_MODEXT) mpp_mod.$(FC_MODEXT)
mpp_memutils_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT)
mpp_pset_mod.$(FC_MODEXT): mpp_mod.$(FC_MODEXT)

# Mod files are built and then installed as headers.
BUILT_SOURCES = \
Expand All @@ -243,7 +245,8 @@ BUILT_SOURCES = \
mpp_memutils_mod.$(FC_MODEXT) \
mpp_efp_mod.$(FC_MODEXT) \
mpp_domains_mod.$(FC_MODEXT) \
mpp_io_mod.$(FC_MODEXT)
nodist_include_HEADERS = $(BUILD_SOURCES)
mpp_io_mod.$(FC_MODEXT) \
mpp_pset_mod.$(FC_MODEXT)
nodist_include_HEADERS = $(BUILT_SOURCES)

include $(top_srcdir)/mkmods.mk
52 changes: 44 additions & 8 deletions mpp/include/mpp_domains_misc.inc
Original file line number Diff line number Diff line change
Expand Up @@ -536,6 +536,10 @@ end subroutine init_nonblock_type
domain%x%compute%end = -1
domain%y%compute%begin = 1
domain%y%compute%end = -1
domain%x%data %begin = -1
domain%x%data %end = -1
domain%y%data %begin = -1
domain%y%data %end = -1
domain%x%global %begin = -1
domain%x%global %end = -1
domain%y%global %begin = -1
Expand Down Expand Up @@ -577,6 +581,10 @@ end subroutine init_nonblock_type
domain%list(listpos)%y%compute%end = msg(5)
domain%list(listpos)%tile_id(1) = msg(6)
if(domain%x(1)%global%begin < 0) then
domain%x(1)%data %begin = msg(2)
domain%x(1)%data %end = msg(3)
domain%y(1)%data %begin = msg(4)
domain%y(1)%data %end = msg(5)
domain%x(1)%global%begin = msg(2)
domain%x(1)%global%end = msg(3)
domain%y(1)%global%begin = msg(4)
Expand All @@ -592,6 +600,10 @@ end subroutine init_nonblock_type
endif
domain%ntiles = msg(12)
else
domain%x(1)%data %begin = msg(2) - msg(7)
domain%x(1)%data %end = msg(3) + msg(8)
domain%y(1)%data %begin = msg(4) - msg(9)
domain%y(1)%data %end = msg(5) + msg(10)
domain%x(1)%global%begin = min(domain%x(1)%global%begin, msg(2))
domain%x(1)%global%end = max(domain%x(1)%global%end, msg(3))
domain%y(1)%global%begin = min(domain%y(1)%global%begin, msg(4))
Expand Down Expand Up @@ -651,6 +663,10 @@ end subroutine init_nonblock_type
domain_out%x%compute%end = -1
domain_out%y%compute%begin = 1
domain_out%y%compute%end = -1
domain_out%x%data %begin = -1
domain_out%x%data %end = -1
domain_out%y%data %begin = -1
domain_out%y%data %end = -1
domain_out%x%global %begin = -1
domain_out%x%global %end = -1
domain_out%y%global %begin = -1
Expand Down Expand Up @@ -698,6 +714,10 @@ end subroutine init_nonblock_type
domain_out%list(listpos)%y%compute%end = msg(5)
domain_out%list(listpos)%tile_id(1) = msg(6)
if(domain_out%x(1)%global%begin < 0) then
domain_out%x(1)%data %begin = msg(2)
domain_out%x(1)%data %end = msg(3)
domain_out%y(1)%data %begin = msg(4)
domain_out%y(1)%data %end = msg(5)
domain_out%x(1)%global%begin = msg(2)
domain_out%x(1)%global%end = msg(3)
domain_out%y(1)%global%begin = msg(4)
Expand All @@ -713,6 +733,10 @@ end subroutine init_nonblock_type
endif
domain_out%ntiles = msg(12)
else
domain_out%x(1)%data %begin = msg(2) - msg(7)
domain_out%x(1)%data %end = msg(3) + msg(8)
domain_out%y(1)%data %begin = msg(4) - msg(9)
domain_out%y(1)%data %end = msg(5) + msg(10)
domain_out%x(1)%global%begin = min(domain_out%x(1)%global%begin, msg(2))
domain_out%x(1)%global%end = max(domain_out%x(1)%global%end, msg(3))
domain_out%y(1)%global%begin = min(domain_out%y(1)%global%begin, msg(4))
Expand Down Expand Up @@ -776,6 +800,10 @@ end subroutine init_nonblock_type
domain%x%compute%end = -1
domain%y%compute%begin = 0
domain%y%compute%end = -1
domain%x%data %begin = 0
domain%x%data %end = -1
domain%y%data %begin = 0
domain%y%data %end = -1
domain%x%global %begin = 0
domain%x%global %end = -1
domain%y%global %begin = 0
Expand Down Expand Up @@ -827,10 +855,10 @@ end subroutine init_nonblock_type
domain%list(listpos)%y%compute%begin = msg(4)
domain%list(listpos)%y%compute%end = msg(5)
domain%list(listpos)%tile_id(1) = msg(6)
domain%list(listpos)%x%global%begin = msg(12)
domain%list(listpos)%x%global%end = msg(13)
domain%list(listpos)%y%global%begin = msg(14)
domain%list(listpos)%y%global%end = msg(15)
domain%list(listpos)%x%global %begin = msg(12)
domain%list(listpos)%x%global %end = msg(13)
domain%list(listpos)%y%global %begin = msg(14)
domain%list(listpos)%y%global %end = msg(15)
listpos = listpos + 1
if( debug )write( errunit,* )'PE ', mpp_pe(), 'received domain from PE ', msg(1), 'is,ie,js,je=', msg(2:5)
end if
Expand Down Expand Up @@ -889,6 +917,10 @@ end subroutine init_nonblock_type
domain%x%compute%end = -1
domain%y%compute%begin = 0
domain%y%compute%end = -1
domain%x%data %begin = 0
domain%x%data %end = -1
domain%y%data %begin = 0
domain%y%data %end = -1
domain%x%global %begin = 0
domain%x%global %end = -1
domain%y%global %begin = 0
Expand Down Expand Up @@ -927,6 +959,10 @@ end subroutine init_nonblock_type
if( .NOT.native .AND. msg(1).NE.NULL_PE .AND. tile_coarse==msg(16) )then
domain%list(listpos)%pe = msg(1)
if(domain%x(1)%compute%begin == 0) then
domain%x(1)%data %begin = msg(2) - msg(7)
domain%x(1)%data %end = msg(3) + msg(8)
domain%y(1)%data %begin = msg(4) - msg(9)
domain%y(1)%data %end = msg(5) + msg(10)
domain%x(1)%global%begin = msg(12)
domain%x(1)%global%end = msg(13)
domain%y(1)%global%begin = msg(14)
Expand All @@ -947,10 +983,10 @@ end subroutine init_nonblock_type
domain%list(listpos)%y%compute%begin = msg(4)
domain%list(listpos)%y%compute%end = msg(5)
domain%list(listpos)%tile_id(1) = msg(6)
domain%list(listpos)%x%global%begin = msg(12)
domain%list(listpos)%x%global%end = msg(13)
domain%list(listpos)%y%global%begin = msg(14)
domain%list(listpos)%y%global%end = msg(15)
domain%list(listpos)%x%global %begin = msg(12)
domain%list(listpos)%x%global %end = msg(13)
domain%list(listpos)%y%global %begin = msg(14)
domain%list(listpos)%y%global %end = msg(15)
listpos = listpos + 1
if( debug )write( errunit,* )'PE ', mpp_pe(), 'received domain from PE ', msg(1), 'is,ie,js,je=', msg(2:5)
end if
Expand Down
Loading

0 comments on commit 879e883

Please sign in to comment.