Skip to content

Delete base/MaplGrid.F90 (mapl_MaplGrid module) #4875

@tclune

Description

@tclune

Goal

Delete `base/MaplGrid.F90` which defines the `mapl_MaplGrid` module, as part of the ongoing effort to eliminate `base/`. This must be done before `MAPL_LocStreamMod` can be moved to `base3g/`.

Public symbols and migration targets

  1. `MAPL_GridGet` — migrate all callers to `use MAPL, only: MAPL_GridGet` (via `mapl3g_GridGet`). This is the largest item, touching multiple repos.

  2. `MAPL_DistGridGet` — only used by `MAPL_LocStreamMod`; migrate to `use mapl3g_DistGridGet`.

  3. `MAPL_GetImsJms` — only used by `MAPL_LocStreamMod`; move implementation into `MAPL_LocStreamMod` as a private routine.

  4. `MAPL_GridHasDE` — only used by `MAPL_VerticalMethods`; move implementation there as a private routine or into `geom/`.

  5. `MaplGrid` type — only referenced in a commented-out line in `generic3g/InnerMetaComponent.F90`; effectively unused, can simply be dropped.

Callers of MAPL_GridGet (multi-repo)

Internal to MAPL:

  • `state/StateMasking.F90`
  • `GeomIO/pFIOServerBounds.F90`
  • `base/MAPL_VerticalInterpMod.F90`
  • `base/MAPL_VerticalMethods.F90`
  • `base/SimpleBundleMod.F90`
  • `base/MAPL_LocStreamMod.F90`

External repos:

  • `GMAO_Shared`: `windfix.F90`
  • `GOCART`: `SS2G_GridCompMod.F90`
  • `GEOSgcm_GridComp`: `GEOS_GwdGridComp.F90`

Suggested PR sequence

  1. Migrate all `MAPL_GridGet` callers (MAPL + downstream repos) to `use MAPL`
  2. Migrate `MAPL_DistGridGet` in `MAPL_LocStreamMod` to `mapl3g_DistGridGet`
  3. Move `MAPL_GetImsJms` into `MAPL_LocStreamMod` as private
  4. Move `MAPL_GridHasDE` into `MAPL_VerticalMethods` as private
  5. Delete `MaplGrid.F90` and remove from `CMakeLists.txt`

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions