[ncl-talk] Monthly average at each selected time
Dennis Shea
shea at ucar.edu
Mon Aug 12 08:23:42 MDT 2019
*NCL: calculate_monthly_values
<http://www.ncl.ucar.edu/Document/Functions/Contributed/calculate_monthly_values.shtml>*
----
*T*he CDO has a *monmean *operator but I am not sure how to extract 6-hrly
subsets.
*CDO:* https://code.mpimet.mpg.de/projects/cdo
----
NCL:
f = addfile("...nc", "r")
x = f>X
printVarSummary(x) ; [time | ...] x [lat | ...] x
[lon | ...]
; [time | ...] x
[lev |...] x [lat | ...] x [lon | ...]
time = x&time ; "seconds/minutes/days
since ..."
TIME = *cd_calendar*(time, 0) ; type float
year = toint( TIME(:,0) ) ; toint strips meta data
month = toint( TIME(:,1) )
day = toint( TIME(:,2) ) ; day of month
hour = toint( TIME(:,3) ) ; hour of day
; x(time,lat,lon)
do hh=0,18,6
ihr := ind(hour.eq.hh) ; indices
if (hh.eq.0) then
x00 = *calculate_monthly_values*(x(ihr,:,:), "avg", 0, False)
x00 at long_name = "00Z: Monthly Mean: "+x00 at long_name
printVarSummary(x00)
elseif (hh.eq. 6) then
x06 = calculate_monthly_values(x(ihr,:,:), "avg", 0, False)
x06 at long_name = "06Z: Monthly Mean: "+x06 at long_name
printVarSummary(x06)
elseif (hh.eq.12) then
x12 = calculate_monthly_values(x(ihr,:,:), "avg", 0, False)
x12 at long_name = "12Z: Monthly Mean: "+x12 at long_name
printVarSummary(x12)
elseif (hh.eq.18) then
x18 = calculate_monthly_values(x(ihr,:,:), "avg", 0, False)
x18 at long_name = "18Z: Monthly Mean: "+x18 at long_name
printVarSummary(x18)
end if
print("------------------------------------------------")
end do
Make appropriate changes for X being other dimension ranks
X(time) => x(ihr)
X(time,pts) => x(ihr,:)
X(time,lat,lon) => x(ihr,:,:)
X(time,lev,lat,lon) => x(ihr,:,:,:)
Good luck
On Sun, Aug 11, 2019 at 1:52 PM Setareh Rahimi via ncl-talk <
ncl-talk at ucar.edu> wrote:
> Dear all,
>
> I have a nc file for my study area, containing hourly values for 6 months
> at 00, 06, 12, 18. What I am looking for is to have an average for each
> month over each mentioned time, like :
> April average at 00, 06, 12, 18.
>
> How can I do this? Is there any function doing this, please?
> Thanks for your advice in advance,
> Best wishes,
>
> --
> S.Rahimi
>
> _______________________________________________
> 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/20190812/6b996eb5/attachment.html>
More information about the ncl-talk
mailing list