ESMValGroup / ESMValCore

ESMValCore: A community tool for pre-processing data from Earth system models in CMIP and running analysis scripts.
https://www.esmvaltool.org
Apache License 2.0
42 stars 38 forks source link

Sea ice area derivation #1752

Open malininae opened 2 years ago

malininae commented 2 years ago

Hello dear ESMValTool friends,

I am slowly starting to think of merging my IPCC diagnostics into the main. It's a long process, but I was wondering if community would be interested in a sea ice area derivation in the preprocessor? I'd have to think how to do it properly (now it's done quite amateurly within diagnostic), but if it's a desirable feature, I could try to make it work for the next release.

Cheers

dhohn commented 2 years ago

Hi @malininae ,

Its definitely desirable. So much so that @sloosvel also brought it up a few weeks ago and has a draft PR :)

Cheers, David

malininae commented 2 years ago

Hi @malininae ,

Its definitely desirable. So much so that @sloosvel also brought it up a few weeks ago and has a draft PR :)

Cheers, David

Hi @dhohn,

Thanks, I've seen the PR for the sea ice extent, that was exactly that brought me to the thought :-) Sea ice area is slightly different. To obtain extent, one takes into account the cells that have siconc > 15% and one calculates the area of the whole cell, once 15% threshold is passed. For the sea ice area though, one multiplies siconc by the area of the cell. Some papers suggest that sea ice area is more robust. As said, I've done that for the IPCC diagnostics, and now I'm working on more sea ice area stuff, so I could definitely try to create a derivation function maybe learning something from @sloosvel experience.

sloosvel commented 2 years ago

Hi @malininae ,

If it's just weighting siconc by the area, isn't that what area_statistics already does? In any case, I am not familiar with this variable but if it's useful to you, I finished #1695 so you can have a look at what is needed in order to add derived variables.

malininae commented 2 years ago

Hi @sloosvel, thanks for letting me know! I will try to look at it some time soon. If I understand correctly, area_statistics let's say with mean operator, will provide the area weighted mean of siconc, but in the units of siconc. So, if we had three cells with 95%, 99%, 97% values, the resulting value will be around 96-97% depending on the cell's area. Sea ice area in contrary needs to be calculated as siconc* fx variable, so the resulting value should be something like 0.1x106 km2, again depending on the cell's area. As said, I'm not sure area_statistics can handle that.

sloosvel commented 2 years ago

Oh ok, I have never worked with that variable. Then I guess you would need a derive script that requires both siconc and areacello? Or, if multiplying by area is something that is done for other variables as well, maybe we could just have a new preproc to do that.

malininae commented 2 years ago

Oh ok, I have never worked with that variable. Then I guess you would need a derive script that requires both siconc and areacello? Or, if multiplying by area is something that is done for other variables as well, maybe we could just have a new preproc to do that.

@sloosvel correct, for now, I've done it in the diagnostic. However, my thought was, since there is sea ice extent derivation in the preprocessor, there might as well be sea ice area. I'm ok writing the preprocessor function, but I wanted to know if people are interested at all, not that I will write a function for myself. I think it might be useful, in particular for AR7, because for our chapter for AR6 we received reviewers' comments, who argued that sea ice area is more robust.