Project

General

Profile

Help me with the sea ice.

Added by juan jimenez over 5 years ago

I have a time series of sea ice concentration from 1979 to 2018 in netcdf format. I want to calculate the extent of sea ice from the concentration of sea ice. First I define what is ice extent; It is the area of the ice coverage that has more than 15% of ice concentration. The first thing I have done has been to select a range of 15% to 100%. The problem is the calculation of the area of all the cells that have ice, to get a monthly ice extension value in my time series. I've tried cdo commands like gridcell, but I'm not really understanding what it means.

I would like to know what command can have me the total area of the pixels with ice.

Thank you so much.

Juan Jimémez.


Replies (5)

RE: Help me with the sea ice. - Added by Ralf Mueller over 5 years ago

hi Juan!
AFAIK the extent is the product of ice concentration and cell area. If you want use a lower threshold of 15%, I would set the range of 0%-15% to 0%, multiply these concentrations with the cell area and sum them up with fldsum. The open question is the cell area. this strongly depends on you grid. CDO can compute this with the gridarea operator, But for getting this perfectly clear, you might upload your input file.

cheers
ralf

RE: Help me with the sea ice. - Added by juan jimenez over 5 years ago

hi Ralf

Thank you very much for your answer, but when I multiply the concentrations by my gridarea output file it gives me the following error:

cdo mul: Filling up stream2 >gridarea.nc< by copying the first timestep.
cdo mul (Warning): Some data values (min=-2.14748e+09 max=-2.14748e+09) are outside the
valid range (-32768 - 32767) of the used output precision!
Use the CDO option -b 32 or -b 64 to increase the output precision.
cdf_put_vara_double : ncid = 196608 varid = 4 val0 = 1078907571187.760010
cdf_put_vara_double : varname = icec

Error (cdf_put_vara_double) : NetCDF: Numeric conversion not representable

I dont know what to do. I leave here my data file attached.

RE: Help me with the sea ice. - Added by Ralf Mueller over 5 years ago

I use cdo-1.9.5 without any errors like this

cdo -infov -fldsum -mul -divc,100 -setvrange,15,101 `lf` -gridarea `lf` 

`lf` is a placeholder for your input file. this command write to stdout instead of creating an output file. Skip the infov operator and append a filename to write the values to disk.

Please note, that your concentration values are normalized to 100 instead of 1 - that's why I had to do the devision by 100.

hth
ralf

RE: Help me with the sea ice. - Added by juan jimenez over 5 years ago

Thank you so much, I wrote the option -b 64 before the operator, to increase the output precision.

Juan.

    (1-5/5)