Skip to content

Method extract_tilefrac and average_tile in calc_land.py lack of a key argument lev #166

@rhaegar325

Description

@rhaegar325

Compare with old version Mopper, our current extract_tilefrac and average_tile methods in Moppy lack of a specific argument lev, which will led to miss a coordinate type:

Coordinates:
  * time     (time) datetime64[ns] 16kB 1850-01-16T12:00:00 ... 2014-12-16T12...
  * lat      (lat) float64 1kB -90.0 -88.75 -87.5 -86.25 ... 87.5 88.75 90.0
  * lon      (lon) float64 2kB 0.0 1.875 3.75 5.625 ... 352.5 354.4 356.2 358.1
    type     |S11 11B ...

according to CMIP6_Lmon.json, there is an extra dimention for some land variables, for example:


"baresoilFrac": {
    ...
    "dimensions": "longitude latitude time typebare",
    ...
},

"c3PftFrac": {
    ...
    "dimensions": "longitude latitude time typec3pft",
    ...
}

Those different type are stored in MOPPeR/src/mopdata/landtype.yaml file in the old Mopper:

mod_mapping:
  typebare: bare_ground
  typeburnt: burnt_vegetation
  typec3pft: c3_plant_functional_types
  typec3crop: crops_of_c3_plant_functional_types
  typec3natg: natural_grasses_of_c3_plant_functional_types
  typec3pastures: pastures_of_c3_plant_functional_types
  typec4pft: c4_plant_functional_types
  typec4crop: crops_of_c4_plant_functional_types
  typec4natg: natural_grasses_of_c4_plant_functional_types
  typec4pastures: pastures_of_c4_plant_functional_types
  typecloud: cloud
  typecrop: crops
  typefis: floating_ice_shelf
  typegis: grounded_ice_sheet
  typeland: land
  typeli: land_ice
  typemp: sea_ice_melt_pond
  typenatgr: natural_grasses
  typenwd: herbaceous_vegetation
  typepasture: pastures
  typepdec: primary_deciduous_trees
  typepever: primary_evergreen_trees
  typeresidual: residual
  typesdec: secondary_decidous_trees
  typesea: sea
  typesever: secondary_evergreen_trees
  typeshrub: shrubs
  typesi: sea_ice
  typesirdg: sea_ice_ridges
  typetree: trees
  typeveg: vegetation
  typewetla: wetland

Maybe we should consider to add the machenism back to calc_land.py to make it compatible with CMIP6 convention.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions