# [ncl-talk] Calculate Annual cycle from daily data

Dennis Shea shea at ucar.edu
Tue Jun 13 08:15:21 MDT 2017

```Please look at NCL functions:

*http://www.ncl.ucar.edu/Document/Functions/Contributed/calculate_monthly_values.shtml
<http://www.ncl.ucar.edu/Document/Functions/Contributed/calculate_monthly_values.shtml>*

Also, read the Description section. The CDO (Climate Data Operators) have a
command line tool for doing thios.

Good Luck

On Tue, Jun 13, 2017 at 7:35 AM, Sri Nandini <snandini at marum.de> wrote:

> Hello
>
> Im using daily data (for evaporation) and would like to convert/calculate
> monthly values to plot my annual cycle.
> The evaporation data is from 1979-2010 in daily format.
> My script is:
>
> ; ==============================================================
> ; Open the file: Read only the user specified period first observations
> then model
> ; ==============================================================
> f = addfile("ERAIL_SF_SRO_SSRO_TP_E_1979_2010.nc", "r") ;
> ;***********************************************************
> ; Read time and create required yyyyddd
> ;***********************************************************
>    time    = f->time                          ; time:units = "hours since
> 1-1-1 00:00:0.0"
>    TIME    = cd_calendar(time, 0)          ; type float
>    year    = toint( TIME(:,0) )
>    month   = toint( TIME(:,1) )
>    day     = toint( TIME(:,2) )
>    ddd     = day_of_year(year, month, day)
>    yyyyddd = year*1000 + ddd                                  ; needed
> for input
> ;***********************************************************
> ;***********************************************************
>    e0     =  short2flt( f->e(:,:,:) )    ; convert to float
>    printVarSummary( e0 )
> ;***********************************************************
> ; Compute daily climatology: raw and then 'smoothed'
> ;***********************************************************
>    EClmDay    = clmDayTLL(e0, yyyyddd)     ; daily climatology at each
> grid point
>    printVarSummary(EClmDay)
>
>          printVarSummary(EClmDay)                                ; (time,
> lat,lon)
>
>
> and the output is:
>
> Variable: e0
> Type: float
> Total Size: 233385984 bytes
>             58346496 values
> Number of Dimensions: 3
> Dimensions and sizes:    [time | 11688] x [latitude | 64] x [longitude |
> 78]
> Coordinates:
>             time: [692520..973008]
>             latitude: [64..32.5]
>             longitude: [30..68.5]
> Number Of Attributes: 7
>   units :    m of water equivalent
>   long_name :    Evaporation
>   standard_name :    lwe_thickness_of_water_evaporation_amount
>   _FillValue_original :    -32767
>   _FillValue :    -32767
>   missing_value_original :    -32767
>   missing_value :    -32767
>
> Variable: EClmDay
> Type: float
> Total Size: 7308288 bytes
>             1827072 values
> Number of Dimensions: 3
> Dimensions and sizes:    [year_day | 366] x [latitude | 64] x [longitude |
> 78]
> Coordinates:
>             year_day: [1..366]
>             latitude: [64..32.5]
>             longitude: [30..68.5]
> Number Of Attributes: 4
>   long_name :    Daily Climatology: Evaporation
>   units :    m of water equivalent
>   information :    Raw daily averages across all years
>   smoothing :    None
>
> Would really appreciate any advice
>
> _______________________________________________
> ncl-talk mailing list
> ncl-talk at ucar.edu
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20170613/f6c59867/attachment.html
```