Skip to content
/ MAPL Public

MAPL is a foundation layer of the GEOS architecture, whose original purpose is to supplement the Earth System Modeling Framework (ESMF)

License

Apache-2.0, Unknown licenses found

Licenses found

Apache-2.0
LICENSE
Unknown
LICENSE-NOSA
Notifications You must be signed in to change notification settings

GEOS-ESM/MAPL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

6786b54 · Aug 22, 2024
Jun 14, 2024
Oct 11, 2022
Apr 23, 2024
Jun 6, 2024
Feb 6, 2024
Apr 23, 2024
Dec 20, 2023
Jun 14, 2024
Aug 22, 2024
May 9, 2024
Jun 6, 2024
Jun 4, 2024
Jul 17, 2024
May 31, 2024
Aug 22, 2024
May 24, 2024
Oct 4, 2023
Oct 26, 2021
May 3, 2024
Jun 15, 2022
Feb 6, 2024
Feb 6, 2024
Mar 18, 2024
Mar 18, 2024
Jan 13, 2022
Oct 24, 2019
Mar 27, 2024
Jun 23, 2022
Aug 14, 2024
Jul 17, 2024
Feb 2, 2024
Jan 14, 2021
Sep 21, 2021
Sep 21, 2021
Feb 7, 2024
Sep 21, 2021
Sep 21, 2021
Feb 7, 2024
Jun 21, 2024
Aug 30, 2023

MAPL Repository

GEOS-ESM

DOI

MAPL is a foundation layer of the GEOS architecture, whose original purpose is to supplement the Earth System Modeling Framework (ESMF). MAPL fills in missing capabilities of ESMF, provides higher-level interfaces for common boiler-plate logic, and enforces various componentization conventions across ESMF gridded components within GEOS.

MAPL has 10 primary subdirectories for Fortran source code:

  1. shared - low level utilities that are used throughout the remainder of MAPL.
  2. profiler - time and memory profiling utility
  3. pfio - high-performance client-server I/O layer
  4. base (formerly MAPL_Base) - legacy core of MAPL. This layer will gradually evaporate under further refactoring.
  5. generic (under construction) - new home for MAPL extension of ESMF framework.
  6. oomph - next gen generic will eventually disappear
  7. gridcomps - Cap, History, and ExtData gridcomps used by all GEOS configurations.
  8. MAPL_cfio - this is a deprecated lower-level I/O layer that is generally replaced by GMAO_pFIO. Not all of the strings have been cut yet. Sometime soon, this directory will be eliminated.
  9. griddedio - layer between ESMF container and pfio library
  10. field_utils - utilities for manipulating data on ESMF fields in a rank- and typekind-agnostic way

MAPL also has a variety of other auxiliary directories:

  1. include - include files used by external gridded components.
  2. Apps - various Python and Perl scripts used by gridded components.
  3. Python - beginnings of a run-time scripting framework for GEOS configurations
  4. cmake - CMake build macros
  5. Tests - miscellaneous standalone drivers.
  6. pflogger_stub - workaround for apps that wish to avoid a dependency on pFlogger
  7. pfunit - pFUnit (unit testing framework) extensions for ESMF components
  8. benchmarks - miscellaneous benchmarking scripts
  9. docs - documentation

Installing MAPL

Please see the INSTALL.md file for instructions on how to install MAPL. This also contains information on how to install the required dependencies including subrepositories MAPL expects.

Using MAPL

You can find simple examples on how to use MAPL components in ESMF applications at:

MAPL Tutorial

A MAPL User's Guide is also available to have an in depth description of MAPL components.

Contributing

Please check out our contributing guidelines.

License

All files are currently licensed under the Apache-2.0 license, see LICENSE.

Previously, the code was licensed under the NASA Open Source Agreement, Version 1.3.