Dear all,

I have a problem with the units of daily total precipitation estimated from hourly data. I do not understand what conversion factor should I use to bring the accumulated daily precipitation to mm / day. Is the output in m / s? Why is the output variable in the following  Toolbox code named "tprate" and what are its units? 

I will greatly appreciate your help,

Best regards,

Miguel

Here is the sample Toolbox code:

import cdstoolbox as ct

@ct.application(title='Download data')
@ct.output.download()
def download_application():
total_prec = ct.catalogue.retrieve(
'reanalysis-era5-land',
{
'variable': 'total_precipitation',
'year': '1981',
'month': '01',
'day': [
'01', '02', '03',
'04', '05', '06',
'07', '08', '09',
'10', '11', '12',
'13', '14', '15',
'16', '17', '18',
'19', '20', '21',
'22', '23', '24',
'25', '26', '27',
'28', '29', '30',
'31',
],
'time': [
'00:00', '01:00', '02:00',
'03:00', '04:00', '05:00',
'06:00', '07:00', '08:00',
'09:00', '10:00', '11:00',
'12:00', '13:00', '14:00',
'15:00', '16:00', '17:00',
'18:00', '19:00', '20:00',
'21:00', '22:00', '23:00',
],
'area': [
-10, -70, -40,
-40,
],
}
)

# compute daily accumulation of precipitation
prec_daily_acc = ct.cube.resample(total_prec, freq='D', how='sum', closed='right')


return prec_daily_acc

10 Comments

  1. Hi Michela, 

    Thank you very much.

    I saw that total precipitation from ERA5-land exceed observations considerably (by up unit thousand). In contrast, in ERA5 this does not happen. Have you detected any problem with precipitation in ERA5-land? My area of work is southern South America.

    Thanks in advance,

    Best regards,

    Miguel

    1. Hi Miguel,

      did you consider the different accumulation time?

      Please, note that the convention for accumulations used in ERA5-Land differs with that for ERA5The accumulations in the short forecasts of ERA5-Land (with hourly steps from 01 to 24) are treated the same as those in ERA-Interim or ERA-Interim/Land, i.e., they are accumulated from the beginning of the forecast to the end of the forecast step. For example, runoff at day=D, step=12 will provide runoff accumulated from day=D, time=0 to day=D, time=12. The maximum accumulation is over 24 hours, i.e., from day=D, time=0 to day=D+1,time=0 (step=24).


      Thanks

      Michela

  2. Hi Michela, 

    Thank you very much.

    If I understood correctly, then D + 1 (step 24) is the daily precipitation? Does this step include the accumulated precipitation in the previous 24 hours?

    Best regards,

    Miguel

    1. Hi Miguel,

      yes, the time step d+1 is the daily precipitation and it contains the accumulated total precipitation over the previous 24 hours.


      Best regards,

      Michela

      1. Hi Michela, 

        When I use the following code, how='mean'(total_precipitation-snowfall)the daily precipitation curve is basically correct, but the  precipitation is half of the actual value

        tp_hourly = ct.geo.extract_point(data[0], lon=lon, lat=lat)
        tp_hourly_column = tp_hourly * 3600 * 1000
        tp_hourly_column = ct.cdm.update_attributes(tp_hourly_column, {'units': 'mm'})
        tp_daily_sums = ct.cube.resample(tp_hourly_column, freq='day', dim='time', how='mean',closed='right')
        sf_hourly = ct.geo.extract_point(data[1], lon=lon, lat=lat)
        sf_hourly_column = sf_hourly * 3600 * 1000
        sf_hourly_column = ct.cdm.update_attributes(sf_hourly_column, {'units': 'mm'})
        sf_daily_sums = ct.cube.resample(sf_hourly_column, freq='day', dim='time',how='mean', closed='right')
        precp = (tp_daily_sums-sf_daily_sums)*2


        Regards,

        Xiangyi Wang

      2. Hi,Miguel,

        In datasets 'ERA5-Land hourly data from 1950 to present', for example, if i want the total precipitation in 1st, January, I can download the total precipitation in 0:00, 2nd, January, because that represents the previous 24 hours, am i right?

  3. Hi Miguel 

    I am experiencing the same issue in retrieving daily total precipitation from hourly data.

    Did you solve it?


  4. Hi Giovanni,

    I finally switched to ERA5. But I was able to check that the daily accumulated of ERA5-land is per hour and differs from that of ERA5. Please take a look at Michela's previous comment. If you do the comparison in a grid point of both databases, you will see it and you may find the solution to the accumulation factor. Successes with that.

    Best regards,

    Miguel

  5. Hi,

    I would like to know if my time zone is UTC+8, and the data is UTC0, then how to transfer the time to the correct regional time by cdo?

    Best,