WCRP-CMIP / CMIP6_CVs

Controlled Vocabularies (CVs) for use in CMIP6
Creative Commons Attribution 4.0 International
155 stars 79 forks source link

source_id registration of E3SM-2-0-NARRM #1190

Closed mccoy20 closed 1 year ago

mccoy20 commented 1 year ago

label = E3SM 2.0 NARRM label_extended = E3SM 2.0 NARRM (Energy Exascale Earth System Model version 2.0 North American Regionally Refined Model) source_id = E3SM-2-0-NARRM institution_id = E3SM-Project release_year = 2022 activity_participation = [CMIP]

aerosol: description = MAM4 w/ new resuspension, marine organics, secondary organics, and dust (atmos physics grid) nominal_resolution = 100 km

atmos: description =EAM (v2.0, Dynamics: cubed sphere spectral-element grid, 130,088 columns; Physics: 2x2 finite volume cells within each spectral element, 57,816 columns. 25 km → 100 km resolution. 72 vertical layers w/ top at 60 km).

nominal_resolution = 112 km

atmosChem: description = Troposphere specified oxidants (except passive ozone with the lower boundary sink) for aerosols. Stratosphere linearized interactive ozone (LINOZ v2) (atmos physics grid) nominal_resolution = 100 km

land: description = ELM (v1.0, atmos physics grid, satellite phenology mode), MOSART (v1.0, 0.125 deg lat/lon grid) nominal_resolution = 100 km

landIce: description = none nominal_resolution = none

ocean: description = MPAS-Ocean (E3SMv2.0, WC14to60E2r5 unstructured SVTs mesh with 407420 cells and 1240672 edges, variable resolution 60 km to 14 km; 60 levels; top grid cell 0-10 m) nominal_resolution = none

ocnBgchem: description = none nominal_resolution = none

seaIce: description = MPAS-Seaice (E3SMv2.0, MPAS-Ocean grid; 5 ice categories, 7 ice layers, 5 snow layers) nominal_resolution = none

taylor13 commented 1 year ago

If E3SM-2-0-NARRM has a refined resolution mesh over N. America, then I think that should be mentioned in the description under "atmos" (and any other model component with refined resolution). The description is meant to be of the native grid as defined for the simulations contributed to CMIP. The grids on which model output are reported (e.g., a regular 1x1 latxlon grid) are irrelevant to the descriptions appearing in the CV, which apply to the model itself. You can compute the nominal_resolution for any horizontal grid using the code found here.

Note also that the global attribute named "nominal_resolution", which appears in all archived CMIP files can be different from the nominal resolution recorded in the CV because that value should reflect the resolution of the output grid, not the native resolution of the model.

chengzhuzhang commented 1 year ago

@taylor13 Thanks for the input. I was not aware there are two definition of "nominal_resolution" for different purpose. My question is for the "nominal_resolution" to describe native grids. Does the nominal_resolution provide one value? If In this case, I 'm not sure if the value would be relevant to the NARRM config, and can be confusing.

taylor13 commented 1 year ago

Yes, I think only 1 value can be assigned to the native grid nominal_resolution. When defining "nominal_resolution", we thought it would be at least of some value for grids with varying resolution over the globe (e.g., latxlon grids), but for refined mesh grids like yours, you really would more naturally describe the resolution with two values-- one for within N. Amer. and one outside that region. For CMIP6, we should probably go with the number that is relevant over the larger region (outside N. Amer.) Maybe that's what you've already done. In the model description you can make it clear what the typical resolution is over N. Amer. and elsewhere.

chengzhuzhang commented 1 year ago

Thanks for the clarification! Yes, I agree we should make clear the typical resolution over N.Amer. Below bold texts are the change we can make. Hope this would be helpful..

atmos: description =EAM (v2.0, Dynamics: cubed sphere spectral-element grid, 130,088 columns; Physics: 2x2 finite volume cells within each spectral element, 57,816 columns. Variable resolution: North American (NA) Regionally Refined Model (RRM) features finer horizontal resolution grids centered over NA, consisting of 25→100 km atmosphere . 72 vertical layers w/ top at 60 km).

ocean: description = MPAS-Ocean (E3SMv2.0, WC14to60E2r5 unstructured SVTs mesh with 407420 cells and 1240672 edges, Variable resolution: NARRM features finer horizontal resolution grids centered over NA, consisting of 14→60 km ocean; 60 levels; top grid cell 0-10 m) nominal_resolution = none

taylor13 commented 1 year ago

this looks fine to me. maybe @durack1 can also check.

To be sure, I'm surprised that the ocean model has refined resolution over N.A., which is of course land. Is it the ocean near NA? If so, maybe the description should read "... over the ocean surrounding North America, consisting ...". I understand the ocean grid might also be defined with high resolution over N.A., but I guess those cells are just to create a simpler logical structure for arrays (kinda wasteful as far as storage, however).

chengzhuzhang commented 1 year ago

Hi @taylor13 thank you! Changing the ocean description to what you suggested is better I think:

atmos: description =EAM (v2.0, Dynamics: cubed sphere spectral-element grid, 130,088 columns; Physics: 2x2 finite volume cells within each spectral element, 57,816 columns. Variable resolution: North American (NA) Regionally Refined Model (RRM) features finer horizontal resolution grids centered over NA, consisting of 25→100 km atmosphere . 72 vertical layers w/ top at 60 km).

ocean: description = MPAS-Ocean (E3SMv2.0, WC14to60E2r5 unstructured SVTs mesh with 407420 cells and 1240672 edges, Variable resolution: NARRM features finer horizontal resolution grids centered over the ocean surrounding North America, consisting of 14→60 km ocean; 60 levels; top grid cell 0-10 m)

I'm tagging @tangq and @vanroekel in case they would like any changes.

durack1 commented 1 year ago

Thanks @chengzhuzhang we're going to have to cut this down, as we're limited to 1023 chars for the combined entry, as noted in #1127 and #1129 - we might have the debug this before it is finalized.

@mauzey1 ping

chengzhuzhang commented 1 year ago

@durack1 I almost forgot the chars limits. Would you please help cut down the texts to fit in the limit? We don't have the tools for this test..I'm happy to have a review after texts being shortened...

chengzhuzhang commented 1 year ago

Some update, @vanroekel suggested some updates on the ocean description, as follows.

ocean: description = MPAS-Ocean (E3SMv2.0, WC14to60E2r5 unstructured SCVTs mesh with 407420 cells and 1240672 edges, The NARRM features finer horizontal resolution (14km) for the ocean surrounding North America, the north Atlantic, and Arctic Oceans, outside of this region the resolution varies from 30→60 km; 60 levels; top grid cell 0-10 m)

durack1 commented 1 year ago

@chengzhuzhang no problem. The best path forward would be to highlight the E3SM-2-0 example we hit issues with last time. You'll see that the registered information per module, contained in the model_component block is then collapsed into a single source string in the CMIP6_CV.json. The same will occur with this registration. It is a concatenation of the label with each of the aerosol, atmos, atmosChem, land, landIce, ocean, ocnBgchem, and seaIce sections occurs. For E3SM-2-0, this totals 991 chars, so the limit is ~125 chars per 8 modules

chengzhuzhang commented 1 year ago

@durack1 Thanks for providing the reference case. I think following should fit into the limit:

EAM (v2.0, Dynamics: cubed sphere spectral-element grid, 130,088 columns; Physics: 2x2 finite volume cells within each spectral element, 57,816 columns. N. American (NA): 25→100 km atmosphere; outside ~100 km. 72 vertical layers w/ top at 60 km)

MPAS-Ocean (E3SMv2.0, WC14to60E2r5 unstructured SCVTs mesh with 407420 cells and 1240672 edges, NA: ~14km ocean; outside: 30→60 km; 60 levels; top grid cell 0-10 m)

Let me know if this works..

durack1 commented 1 year ago

@chengzhuzhang you're at 952 chars, so heaps more room to move. The current draft is below, feel free to augment it if you like:

aerosol: description = MAM4 w/ new resuspension, marine organics secondary organics, and dust (atmos grid) nominal_resolution = 100 km

atmos: description = EAM (v2.0, Dynamics: cubed sphere spectral-element grid, 130,088 columns; Physics: 2x2 finite volume cells within each spectral element, 57,816 columns. N. American (NA): 25 to 100 km; outside ~100 km. 72 vertical layers w/ top at 60 km) nominal_resolution = 100 km

atmosChem: description = Troposphere specified oxidants (except passive ozone with the lower boundary sink) for aerosols. Stratosphere linearized interactive ozone (LINOZ v2) (atmos grid) nominal_resolution = 100 km

land: description = ELM (v1.0, satellite phenology mode, atmos grid), MOSART (v1.0, 0.125 degree latitude/longitude) nominal_resolution = 10 km

landIce: description = none nominal_resolution = none

ocean: description = MPAS-Ocean (E3SMv2.0, WC14to60E2r5 unstructured SCVTs mesh with 407420 cells, 1240672 edges, NA: ~14 km; outside: 30 to 60 km; 60 levels; top grid cell 0-10 m) nominal_resolution = 50 km

ocnBgchem: description = none nominal_resolution = none

seaIce: description = MPAS-Seaice (E3SMv2.0, ocean grid, variable resolution 30 to 60 km; 5 ice categories; 7 ice, 5 snow layers) nominal_resolution = 50 km

chengzhuzhang commented 1 year ago

@durack1 Thank you! I think the preference for nominal_resolution is none instead of 50 km for ocean and seaIce. Other than that I think this version is great.

durack1 commented 1 year ago

@chengzhuzhang ideally, we want to keep this info to allow folks to pull down data at relevant resolutions. With the 30 to 60 to 100 km ocean grid, the 50 selected is the best fit, with the closest options 25, 50, or 100 km. In comparison, E3SM-2-0 has 100 km, so the higher resolution is noted in the updated registration

chengzhuzhang commented 1 year ago

hi Paul, in our case, we plan to report data remapped to 1 degree, so, for data users to pull the data, should nominal_resolution to be 100 km? I'm still confused of the two different use of nominal_resolution, and what to best to put here. In this case, we will follow your advice.

durack1 commented 1 year ago

Interesting and good question. The nominal_resolution is meant to define the "grid used to report model output fields", so if 1 deg/100 km is more accurate, then I will amend these details and get your model registered

taylor13 commented 1 year ago

Recall that in the source CV you should be recording the nominal resolution for the native grid (as noted in https://github.com/WCRP-CMIP/CMIP6_CVs/issues/1190#issuecomment-1474229584https://github.com/WCRP).

This resolution can be different from the resolution that you archive. As specified in Appendix 2 of the global attributes document (see paragraph 4), in each of your files, the nominal_resolution global attribute should, for this special standardized 1x1 degree grid be set "1x1 degree", although if you set it to "100 km", no one will object.

taylor13 commented 1 year ago

Note that the resolution column of https://wcrp-cmip.github.io/CMIP6_CVs/docs/CMIP6_source_id.html is labeled "NatNomRes", so the CV should contain the native resolution, not the resolution of output. In the CV it says "native_nominal_resolution", which can be different from the global attribute "nominal_resolution".

durack1 commented 1 year ago

Thanks for keeping us honest @taylor13 - exactly right.

Interesting and good question. The nominal_resolution is meant to define the "grid used to report model output fields", so if 1 deg/100 km is more accurate, then I will amend these details and get your model registered

I was getting a little distracted with this. The CVs contain information relevant to the native configuration/resolution of the model components (captured in the native_nominal_resolution field for each component), with the ESGF attribute associated with the output fields (potentially regridded) and extracted from the global attribute contained in the (regridded) model output fields. So my initial "50 km" native nominal resolution suggestion is accurate as it records the 30 to 60 km variable resolution grid, with "100 km" for the atmos components and "10 km" for the land (0.125 degrees). @chengzhuzhang if you're happy with this, I'll keep these details as noted in https://github.com/WCRP-CMIP/CMIP6_CVs/issues/1190#issuecomment-1477070635

durack1 commented 1 year ago

@chengzhuzhang that registration is now complete. Please take a peek at CMIP6_source_id.html, and let me know of any tweaks required.

I will leave this issue open until you have data published on ESGF, so I can grab the ESGF version number (e.g. v20230321) and finalize the license info associated with the first data published for this configuration

chengzhuzhang commented 1 year ago

Hi @durack1 , I'm out of office and things are a bit slow at my side. Yes what you proposed at below sounds good to me! I think we can move forward with registration.

I was getting a little distracted with this. The CVs contain information relevant to the native configuration/resolution of the model components (captured in the native_nominal_resolution field for each component), with the ESGF attribute associated with the output fields (potentially regridded) and extracted from the global attribute contained in the (regridded) model output fields. So my initial "50 km" native nominal resolution suggestion is accurate as it records the 30 to 60 km variable resolution grid, with "100 km" for the atmos components and "10 km" for the land (0.125 degrees). @chengzhuzhang if you're happy with this, I'll keep these details as noted in #1190 (comment)

durack1 commented 1 year ago

Hi @durack1 , I'm out of office and things are a bit slow at my side. Yes what you proposed at below sounds good to me! I think we can move forward with registration.

No problem, this was completed yesterday, and has already found it's way into the cmip6-cmor-tables, so if you guys update your tables, you should be good to write your data with CMOR

chengzhuzhang commented 1 year ago

Awesome news. Thank you very much!

durack1 commented 1 year ago

Just checking on publication status, which appears unavailable currently (see E3SM-2-0-NARRM)

chengzhuzhang commented 1 year ago

yes, thank you for checking. we are still waiting for metadata finalization which is pending on a paper review.

durack1 commented 1 year ago

https://esgf-node.llnl.gov/search/cmip6/?source_id=E3SM-2-0-NARRM&experiment_id=1pctCO2&member_id=r1i1p1f1&variable_id=pfull - 20230426

durack1 commented 1 year ago

@chengzhuzhang just caught this data publication, so the license cleanup is complete - see CMIP6_source_id_licenses.html for info

chengzhuzhang commented 1 year ago

Thank you for confirming!

tangq commented 1 year ago

Thank you both, @durack1 and @chengzhuzhang , for pushing this data out.