Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inconsistencies with CMIP6 #66

Open
sol1105 opened this issue Feb 13, 2024 · 6 comments
Open

Inconsistencies with CMIP6 #66

sol1105 opened this issue Feb 13, 2024 · 6 comments
Assignees

Comments

@sol1105
Copy link

sol1105 commented Feb 13, 2024

Hi @larsbuntemeyer

I just want to list a few inconsistencies I noticed between CORDEX-CMIP6 and CMIP6 CMOR tables. Some are or may be relevant for a successful application of the CMOR library:

  • The cell_methods area: mean time:mean in CORDEX-CMIP6 are specified as area: time: mean in CMIP6 CMOR tables.
  • The positive attribute for fluxes like hfls, hfss, rlds, rlus, etc. is not defined in the CORDEX-CMIP6 CMOR tables. Even though the standard_name includes the correct orientation, the attribute is important for the CMOR application. CMOR does not write the positive attribute to the file, but uses it to check and potentially switch the orientation.
  • In the recent PR update coordinates #63, you updated the order of dimensions in the CMOR tables. However, in CMIP6, singleton vertical dimensions (single vertical levels such as p220 or height2m) are always listed last, eg. longitude latitude time height2m. Only "normal" vertical dimensions (like alevel, plev19 etc.) are listed before the time dimension. I am not sure if this has relevance for the CMOR application.
  • The comment attribute is mostly empty, one could use the comments defined in CMIP6.
  • The modeling_realm is set to atmos in all cases, even for variables such as mrso with comment The mass of water in all phases per unit area, summed over all soil layers.. Beside the modeling_realm, also the cell_methods for this kind of variables are different in CMIP6: "area: mean where land time: mean" instead of area: mean time: mean.

Lastly, I noticed a small typo for od550aer:
both the label and the out_name for od550aer are followed by a space:

"od550aer_": {
            [...]
            "out_name": "od550aer_",
            [...]
@larsbuntemeyer
Copy link
Contributor

Thanks again @sol1105 very much appreciated! I'll split up your issues and work on that on our data request table. Just some few comments here:

  • I really wasn't aware of the difference between "normal" vertical dimensions and singleton vertical dimensions, thanks for that! @gnikulin Could you confirm that the soil variables in CORDEX-CMIP6 (tsl, mrsfl and mrsol) are supposed to be "real" 3D variables (as it is mentioned in the comments here). They weren't part of the CMOR in tables in CMIP5 so i am not sure.

  • We discussed the modeling_realm issue in modeling_realm not defined in CORDEX data request data-request-table#4. @gnikulin I think our last decision on that was to simply remove it from the variable attributes?

I will add a test case with a vertical coordinate to the examples to make sure the CMOR tool works with it. The examples are created using the python API without the _cmip6_option (PCMDI/cmor#679 (comment))) in the input dataset table.

@larsbuntemeyer
Copy link
Contributor

larsbuntemeyer commented Feb 13, 2024

@gnikulin should we include the original CMIP6 variable attribute "comment"? I would vote for that (although that might depend on the table_id if i remember correctly). Right now, we use the "Comments" column from the original CMIP6 data request.

@larsbuntemeyer
Copy link
Contributor

larsbuntemeyer commented Feb 15, 2024

By comparing cell_methods of current CORDEX data request with CMIP6 data request, i find the following inconsistencies (more details here: WCRP-CORDEX/data-request-table#19)

out_name frequency cordex cmip6 cmip6_realm cmip6_table
evspsbl day area: time: mean area: mean where land time: mean land Eday
tsl mon area: time: mean area: mean where land time: mean land Lmon
tsl day area: time: mean area: mean where land time: mean land Eday
tsl 6hrPt area: mean time: point area: mean where land time: point land 6hrPlevPt
mrros mon area: time: mean area: mean where land time: mean land Lmon
mrros day area: time: mean area: mean where land time: mean land Eday
mrro mon area: time: mean area: mean where land time: mean land Lmon
mrro day area: time: mean area: mean where land time: mean land day
snm day area: time: mean area: mean where land time: mean landIce land Eday
mrfso mon area: time: mean area: mean where land time: mean land landIce Lmon
mrsfl mon area: time: mean area: mean where land time: mean land Emon
mrsfl day area: time: mean area: mean where land time: mean land Eday
mrso mon area: time: mean area: mean where land time: mean land Lmon
mrso day area: time: mean area: mean where land time: mean land day
mrsos mon area: time: mean area: mean where land time: mean land Lmon
mrsos day area: time: mean area: mean where land time: mean land day
mrsol mon area: time: mean area: mean where land time: mean land Emon
mrsol day area: time: mean area: mean where land time: mean land Eday
snw mon area: time: mean area: mean where land time: mean landIce land LImon
snw day area: time: mean area: mean where land time: mean landIce land day
snw 6hrPt area: mean time: point area: mean where land time: point landIce land 6hrPlevPt
snd mon area: time: mean area: mean where land time: mean landIce land LImon
snd day area: time: mean area: mean where land time: mean landIce land Eday
evspsblpot mon area: time: mean area: mean where land time: mean land Emon
evspsblpot day area: time: mean area: mean where land time: mean land Eday
mrsofc fx area: mean area: mean where land land fx

@gnikulin Should we stick with CMIP6 standard here? Note, that we don't have a modeling_realm in CORDEX for now...

@gnikulin
Copy link

* I really wasn't aware of the difference between "normal" vertical dimensions and singleton vertical dimensions, thanks for  that! @gnikulin Could you confirm that the soil variables in CORDEX-CMIP6 (`tsl`, `mrsfl` and `mrsol`) are supposed to be  "real" 3D variables (as it is mentioned in the comments [here](https://docs.google.com/spreadsheets/d/1qUauozwXkq7r1g-L4ALMIkCNINIhhCPx/#gid=1672965248)). They weren't part of the CMOR in tables in CMIP5 so i am not sure.

Yes, all 3 variables (tsl, mrsfl and mrsol) are "real" 3D (each soil layer).

@gnikulin
Copy link

@gnikulin should we include the original CMIP6 variable attribute "comment"? I would vote for that (although that might depend on the table_id if i remember correctly). Right now, we use the "Comments" column from the original CMIP6 data request.

Yes, I would also use "Comments" from CMIP6 when possible. We need to make minor adjustments because there are several inconsistencies in the CMIP6 comments attribute for some "similar" variables.

@gnikulin
Copy link

By comparing cell_methods of current CORDEX data request with CMIP6 data request, i find the following inconsistencies (more details here: WCRP-CORDEX/data-request-table#19)
out_name frequency cordex cmip6 cmip6_realm cmip6_table
evspsbl day area: time: mean area: mean where land time: mean land Eday
tsl mon area: time: mean area: mean where land time: mean land Lmon
tsl day area: time: mean area: mean where land time: mean land Eday
tsl 6hrPt area: mean time: point area: mean where land time: point land 6hrPlevPt
mrros mon area: time: mean area: mean where land time: mean land Lmon
mrros day area: time: mean area: mean where land time: mean land Eday
mrro mon area: time: mean area: mean where land time: mean land Lmon
mrro day area: time: mean area: mean where land time: mean land day
snm day area: time: mean area: mean where land time: mean landIce land Eday
mrfso mon area: time: mean area: mean where land time: mean land landIce Lmon
mrsfl mon area: time: mean area: mean where land time: mean land Emon
mrsfl day area: time: mean area: mean where land time: mean land Eday
mrso mon area: time: mean area: mean where land time: mean land Lmon
mrso day area: time: mean area: mean where land time: mean land day
mrsos mon area: time: mean area: mean where land time: mean land Lmon
mrsos day area: time: mean area: mean where land time: mean land day
mrsol mon area: time: mean area: mean where land time: mean land Emon
mrsol day area: time: mean area: mean where land time: mean land Eday
snw mon area: time: mean area: mean where land time: mean landIce land LImon
snw day area: time: mean area: mean where land time: mean landIce land day
snw 6hrPt area: mean time: point area: mean where land time: point landIce land 6hrPlevPt
snd mon area: time: mean area: mean where land time: mean landIce land LImon
snd day area: time: mean area: mean where land time: mean landIce land Eday
evspsblpot mon area: time: mean area: mean where land time: mean land Emon
evspsblpot day area: time: mean area: mean where land time: mean land Eday
mrsofc fx area: mean area: mean where land land fx

@gnikulin Should we stick with CMIP6 standard here? Note, that we don't have a modeling_realm in CORDEX for now...

We need to check in detail. For all "soil" variables we indeed should use area: mean where land. However, for example evspsbl in the CMIP5 Amon table has "cell_methods": "area: time: mean" and is provided over both land and water.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: In Progress
Development

No branches or pull requests

3 participants