Difference between revisions of "FlexGrid"

From Geos-chem
Jump to: navigation, search
(FlexGrid for different types of users)
(FlexGrid for different types of users)
Line 62: Line 62:
 
|
 
|
 
* Be able to explicitly control each met variable in HEMCO_Config.rc (like Extdata.rc for GCHP). You can freeze certain variables, apply scaling factors, or read user-generated met data.
 
* Be able to explicitly control each met variable in HEMCO_Config.rc (like Extdata.rc for GCHP). You can freeze certain variables, apply scaling factors, or read user-generated met data.
* Set up nested simulations over any sub-domains of the metfield you have. For example, you can set up an east-US simulation in no time if you have the nested North American metfield data.
+
* Be able to set up nested simulations over any sub-domains of the metfield you have. For example, you can set up an east-US simulation in no time if you have the nested North American metfield data.
 
* If a new nested domain is needed, you can skip the source code modification and just prepare the metfield input.
 
* If a new nested domain is needed, you can skip the source code modification and just prepare the metfield input.
  

Revision as of 01:10, 30 June 2017

NOTE: This page is being actively edited right now and the information might be incomplete.

FlexGrid documentation by Jiawei Zhuang (jiaweizhuang@g.harvard.edu)

Overview

FlexGrid is a new functionality in GEOS-Chem v11-02 to unify all metfield I/O routines by HEMCO.

HEMCO's I/O interface and regridding&cropping capability allow users to

  • Set up a nested simulation over any custom domains without changing model's source code.
  • Explicitly control each meteorological variable in run-time configuration files to perform metfield experiments (an interface resembling GCHP).

The idea of FlexGrid

In theory, setting up a new nested domain simply requires

  • New metfields over that domain
  • New regional emission data sets if necessary
  • Tunning several domain-dependent or resolution-dependent parameters.

There's no reason that one has to touch the model source code. However, in previous versions, all nested domains were hard-coded so users need to do a lot of tedious coding in order to set up a new domain. The major trouble was metfield I/O, as we assumed that the model grid should exactly match the metfield grid. The solution is HEMCO, which has already been used for regridding emission data sets at multiple grids to the same model grid. Here we just do the reverse -- regrid the same metfield data set to different user-specified domains.

FlexGrid implementation plan

The table below shows the implementation plan for FlexGrid:

Stage Detail Status
Stage 1: Read metfields by HEMCO Enable the compile option "MET=flexgrid" to read any NetCDF-format metfields through HEMCO. This unifies "MET=geosfp" and "MET=merra2"
  • Will be included in v11-02
Stage 2: Implement custom nested simulations Enable the compile option "NEST=cu" (custom) to allow custom nested simulations.
  • Will be included in v11-02
Stage 3: Grid-independent GEOS-Chem classic Unify compile options "GRID=xxx" by moving all grid size parameters and resolution-dependent parameters to run-time configuration files. No specific plan right now. Need to be traded off against the nested-GCHP development.

FlexGrid for different types of users

According to the availability of meteorological data, users can get different benefits from FlexGrid:

User type benefits
Only have standard metfields

(e.g. global 4x5, 0.25x0.3125 nested NA)

  • Be able to explicitly control each met variable in HEMCO_Config.rc (like Extdata.rc for GCHP). You can freeze certain variables, apply scaling factors, or read user-generated met data.
  • Be able to set up nested simulations over any sub-domains of the metfield you have. For example, you can set up an east-US simulation in no time if you have the nested North American metfield data.
  • If a new nested domain is needed, you can skip the source code modification and just prepare the metfield input.
Have global native metfields

(For example, GCHP users might store them for global high-resolution runs. We can reuse them for nested simulations.)

  • Be able to run nested simulations over any domains in the world.

FlexGrid Stage 1 User's Guide

Compile

Set up run directory

Use FlexGrid functionalities

FlexGrid Stage 2 User's Guide

Issues to discuss

FlexGrid implementation details

Source code availability

Utilities for compile flags