[gradsusr] Climo Datasets

James Spinks jspin881 at hotmail.com
Tue Sep 1 10:26:15 EDT 2015


Chris,

I think this would be a job for CDO (https://code.zmaw.de/projects/cdo). I haven't done this in a while, but I do remember using CDO to separate my data as I pleased. For example, you can use CDO to separate all the months for your given time period.  If you have 6 hourly data, you can use CDO to combine ALL the times into one file. Then you can use CDO again to separate the combined filed in to months by years. Separating by months, CDO automatically handles the leap years. From there you can use CDO again to average your months for you or you can use grads to iterate through each month and average [ d ave(tmp2m,t=1,t=last) ]. The month naming format CDO uses to produce monthly data is "01-12", so creating a looping script shouldn't be too complicated. 

In my opinion, using CDO to do what you are trying to do is better in this case. You can use grads to do the averaging or CDO. In the end, you can use grads to display the data. CDO works with grib, grib2, netcdf3 and 4 as well as other formats. 

Hope this helps,
James

From: chris.gilroy at gmail.com
Date: Tue, 1 Sep 2015 09:00:16 -0400
To: gradsusr at gradsusr.org
Subject: [gradsusr] Climo Datasets

Ok, so we currently use the 1982-2010 data from:
http://cfs.ncep.noaa.gov/pub/raid0/cfsv2/climo_cfsr_time/mean/

I'd like to use the data from UCAR since they have CFSR 1981-2010 (which seems to be what ever major organization uses?) in the
093.0 dataset but the one HUGE difference is that the mean data from the in
that NOAA CFSR link is formatted from 1982-2010 all (pre-averaged?) into
one year, 1984 whereas the UCAR data I'm getting is all based on
1/1/1981/00z-12/31/2010/18z with each date it's own tdef.

So the current .ctl file is tdef 1464 (to account for leapyears) and the
UCAR data .ctl is tdef 43829 (also accounting for leapyears) and while
leapyears are currently an issue I'm first and foremost curious if we can
take the UCAR data and make it into a single year file like the CFSR data
we currently use?

I have no problem having 43829 tdefs but my concern is then how would you
average them to see an anomaly for the current model run vs an average for
that same date and time?

What we're doing is, say, 2m temp anomaly. So I figure the climo averaging
would look like:

'd ave(tmp2m,time=0z31jul1981,time=0z31jul2010,1464)-273.15' - I can't even
begin to comprehend how we could go about not using time= and using t=
instead since the whole 1460 (non-ly) vs 1464 (ly) aspect to the data.

The only reason I'm doing the time-stepping of 1464 is because there is
leapyear data. Really I'd just absolutely love for it to have (beginning
time) time1=0z31jul1981 and have (ending time) time2=0z31jul2010 and have
it include every 0z31julYYYY in between regardless of whether it has
leapyear data or not. I'm surprised there's no a way to literally have it
ave the zddmmmyyyy to zdddmmmyyyy range without needing to know
incrementing values. :(

It makes trying to work with leapyear data a pain, let alone I don't even
know if my above function would really be doing exactly (it does validate
somewhat identical to other 2m temp anomaly models out there) what I need
since there's really only 7 leapyears worth of data.


_______________________________________________
gradsusr mailing list
gradsusr at gradsusr.org
http://gradsusr.org/mailman/listinfo/gradsusr 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://gradsusr.org/pipermail/gradsusr/attachments/20150901/d729febd/attachment.html 


More information about the gradsusr mailing list