Proposed MAPL Tutorial Outline - GEOS-ESM/MAPL GitHub Wiki

  • Introduction to GEOS Architecture
  • GEOS Architecture Design Philosophy
  • MAPL as a layer on top of ESMF
    • What is ESMF? What is MAPL
    • Relationship with ESMF
    • Why MAPL
  • Introduction to MAPL features as used within GEOS
    • Cap Creation
    • GridComp Creation
    • State (Import, Export, Internal)
      • Creation, Modification
      • VarSpec
    • MetaComp
    • Generic (SetServices, Initialize, Run, Finalize)
    • Grid, Field, Field Bundle
      • Creation, Allocation, Initialization, Manipulation (Modification, Duplication, Attributes, etc.)
    • Config
    • I/O
    • etc.
    • Dependencies to build and test MAPL
  • Build and run instructions
  • Frequently touched aspects by (most) users of GEOS with examples
    • Resource (Configuration) Files (introduce the YAML approach?)
    • Adding a field or field bundle (including how to use VarSpec)
    • ExtData
    • History
    • etc
  • More examples geared towards users who are also developers of GEOS components
    • MAPL App from scratch
    • I would propose 3 complete MAPL Applications that create simple grid comps in order of complexity with voluminous comments and that demonstrate all the topics listed earlier. A driver that creates a single gridcomp (no MAPL cap), a driver that creates two and demonstrates connectivity (no MAPL cap), a mini geos that uses MAPL cap, has a simple gridcomp structure, maybe a root with 2 children, could provide files for example that would output something in history with this.
    • Could also have simple Applications (no grid comp) to demonstrate basic ESMF and some MAPL utilities, ideas - how to create a grid, fields, the MAPL regridding layers.
    • How to add a new GridComp (model, history, coupler, etc)
    • Others?