History MAPL v3 - GEOS-ESM/MAPL GitHub Wiki

Goals

  • Move more to generic, base, shared
  • Update gFTL to gFTL2.
  • Eliminate unnecessary keywords.

Tasks

  • Replace "" and '' with EMPTY_STRING to standardize usage.
  • Update datetime methods to use existing or new procedures in generic and/or base.
  • Check on more general datetime in MAPL.
  • Implement _RC macro throughout.
  • Implement _STAT macro throughout.
  • Move helper functions out of procedures (contains) to GC, generic, base, or shared.
    • subroutine Initialize
  • Move stdout and stderr to MAPL v3 usage.
  • Implement scalar-vector multiplication for History fields (see issue #1959).

Questions

  • Should non-GC types, procedures, variables, etc. move to a subdirectory of generic?
  • Which MAPL_HistoryCollection keywords can go?

    only conservative: -> regrid_method: (all-inclusive keyword)

  • What is the datetime format of History?

Procedures

Keep in Place

  • subroutine SetServices ( gc, rc )
  • subroutine Initialize ( gc, import, dumexport, clock, rc )
  • subroutine Run ( gc, import, export, clock, rc )
  • subroutine Finalize ( gc, import, export, clock, rc )

Move Maybe

  • subroutine wildCardExpand(rc)
  • subroutine MAPL_WildCardExpand(state, regexStr, fieldNames, rc)
  • subroutine splitUngriddedFields(rc)
  • subroutine appendArray(array, idx, rc)
  • subroutine appendFieldSet(fldset, fldName, stateName, aliasName, specialName, rc)
  • subroutine parse_fields(cfg, label, field_set, collection_name, items, rc)
  • subroutine MAPL_GradsCtlWrite ( clock, state,list,fname,expid,expdsc,output_grids,rc )
  • subroutine get_DateStamp (clock, DateStamp, offset, rc)
  • subroutine RegridTransform(STATE_IN, XFORM, STATE_OUT, LS_IN, LS_OUT, NTILES_IN, NTILES_OUT, RC)
  • subroutine RegridTransformT2G2G(STATE_IN, XFORM, XFORMntv, STATE_OUT, LS_IN, LS_OUT, LS_NTV, NTILES_IN, NTILES_OUT, RC)
  • subroutine RegridTransformT2G(STATE_IN, XFORM, STATE_OUT, LS_OUT, NTILES_OUT, RC)
  • subroutine Get_Tdim (list, clock, tdim)
  • subroutine MAPL_SetExpression(nfield,fields,tmpfields,rewrite,nPExtraFields, &
  • subroutine MAPL_RunExpression(state,fields,tmpfields,rewrite,nfield,rc)
  • subroutine MAPL_StateDestroy(State, RC)
  • subroutine MAPL_StateGet(state,name,field,rc)
  • subroutine RecordRestart( gc, import, export, clock, rc )
  • subroutine checkIfStateHasField(state, fieldName, hasField, rc)
  • subroutine shavebits( state, list, rc)
  • subroutine CopyStateItems(src, dst, rc)

Move

Derived Types