Skip to content

MAPL 2.52.0

Compare
Choose a tag to compare
@mathomp4 mathomp4 released this 17 Jan 19:00
· 29 commits to main since this release
c41f37c

DOI

This release of MAPL has many new features and fixes over MAPL 2.52.

Among the new features are:

  • Added the ability to read netCDF tile files
  • Added a new optional start_date and start_time to control the output window for each History collection. No output will be written before then. If not specified, these default to the beginning of the experiment.
  • Added loggers when writing or reading weight files
  • Added new option to AGCM.rc overwrite_checkpoint to allow checkpoint files to be overwritten. By default still will not overwrite checkpoints
  • The trajectory sampler netCDF output variable location_index_in_iodafile can be turned off, after we add two control variables: use_NWP_1_file and restore_2_obs_vector for users. When set to true, the two options will select only one obs file at each Epoch interval, and will rotate the output field index back to the location vector inthe obs file before generating netCDF output.
  • Support splitfield: 1 in HISTORY.rc for trajectory sampler

The fixes include better freeing of MPI communicators (which were accumulating during long runs) and better behavior of calls when NaNs are present.

All testing with GEOS shows this is zero-diff to MAPL 2.51

NOTE: Below you'll see that we are now generally testing MAPL (in CI) with ESMF 8.8.0. At the moment, ESMF 8.8.0 is not required for MAPL 2. It is a requirement for MAPL 3 but we have not yet added any use of ESMF 8.8 specific features in MAPL 2.


This version of MAPL was tested with:

  • Intel Fortran Classic (ifort) 2021.6.0 and 2021.13
  • Intel Fortran (ifx) 2025.0
  • GCC 13.2.0 and 14.2.0
  • NAG 7.2

The libraries this version of MAPL is currently tested with are below.

  • Baselibs 7.27.0
    • netcdf-c 4.9.2
    • netcdf-fortran 4.6.1
    • ESMF 8.7.0 (Note: MAPL only requires 8.6.1 at the moment)
    • GFE 1.16.0
      • gFTL 1.14.0
      • gFTL-shared 1.9.0
      • pFUnit 4.10.0 (optional)
      • fArgParse 1.8.0 (if -DBUILD_WITH_FARGPARSE=YES, default=YES)
      • pFlogger 1.14.0 (if -DBUILD_WITH_PFLOGGER=YES, default=YES)
    • UDUNITS2 2.28.8

Also, if you build with Baselibs and/or -DUSE_F2PY=ON, you should use (at least):

  • ESMA_cmake v3.55.0

We recommend most external users set -DUSE_F2PY=OFF

We also require CMake 3.24 or higher.


From CHANGELOG.md

Added

  • Added subroutine to read nc4 tile file
  • Added optional start_date and start_time to control the output window for each History collection. No output will be written before then. If not specified, these default to the beginning of the experiment.
  • Added utility to prepare inputs for ExtDataDriver.x so that ExtData can simulate a real GEOS run
  • Added loggers when writing or reading weight files
  • Added new option to AGCM.rc overwrite_checkpoint to allow checkpoint files to be overwritten. By default still will not overwrite checkpoints
  • The trajectory sampler netCDF output variable location_index_in_iodafile can be turned off, after we add two control variables: use_NWP_1_file and restore_2_obs_vector for users. When set to true, the two options will select only one obs file at each Epoch interval, and will rotate the output field index back to the location vector inthe obs file before generating netCDF output.
  • Support splitfield: 1 in HISTORY.rc for trajectory sampler

Changed

  • Changed MAPL_ESMFRegridder to require the dstMaskValues to be added as grid attribute to use fixed masking, fixes UFS issue
  • Increased formatting width of time index in ExtData2G diagnostic print
  • Updated GitHub checkout action to use blobless clones
  • Update CI to use Baselibs 7.29.0 by default
    • This provides ESMF 8.8.0
  • Update components.yaml
    • ESMA_env v4.34.0
      • Update to MPT 2.30 at NAS
      • Update to Baselibs 7.29.0 (ESMF 8.8.0)
    • ESMA_cmake v3.56.0
      • Use LOCATION Python FIND_STRATEGY

Fixed

  • Free MPI communicators after reading and/or writing of restarts
  • Fixed the behavior of MAPL_MaxMin in presence of NaN
  • Fixed bug with return codes and macros in udunits2f

What's Changed

Full Changelog: v2.51.2...v2.52.0