[ncl-talk] error message associated with month_to_annual_weighted function
Dennis Shea
shea at ucar.edu
Tue Mar 10 14:41:57 MDT 2015
Not sure of the issue. I have attached month_to_annual_weighted.ncl.
Make sure you are using this one.
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
load "./month_to_annual_weighted.ncl"
begin
diri = "/Users/nmb1441/research/papers/china/monsoons/cru_data/pet/"
srcFileName = "cru_ts3.21.1951.1960.pet.dat.nc"
refile= addfile(diri + srcFileName,"r")
pet = refile->pet
printVarSummary(pet)
yearfrac = cd_calendar(pet&time, 4) ; same as time = f->timeNot
sure of the issue
yyyymm = cd_calendar(pet&time, -1)
print(yyyymm+" "+yearfrac)
pet_annual_total1= month_to_annual_weighted(yyyymm,pet,0)
printVarSummary(pet_annual_total1)
end
Seems to work fine.
Variable: pet_annual_total1
Type: double
Total Size: 20736000 bytes
2592000 values
Number of Dimensions: 3
Dimensions and sizes: [year | 10] x [lat | 360] x [lon | 720]
Coordinates:
year: [1951..1960]
lat: [-89.75..89.75]
lon: [-179.75..179.75]
Number Of Attributes: 3
_FillValue : 9.969209968386869e+36
long_name : potential evapotranspiration
units : mm/day
On Tue, Mar 10, 2015 at 2:08 PM, Lei Meng <dream916 at gmail.com> wrote:
> Hi,
>
> I am still unable to get the function month_to_annual_weighted.ncl to
> work. I used the function code that you sent. Here is my script:
>
> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
> load "./month_to_annual_weighted.ncl"
> begin
>
> diri = "/Users/nmb1441/research/papers/china/monsoons/cru_data/pet/"
> srcFileName = "cru_ts3.21.1951.1960.pet.dat.nc"
> refile= addfile(diri + srcFileName,"r")
>
> pet = refile->pet
> lat = refile->lat
> lon = refile->lon
> time = refile->time
>
> time at calendar = "gregorian"
> yearfrac = cd_calendar(time, 4)
>
> yyyymm = cd_calendar(time, -1)
>
> dym = cd_calendar(time, -1)
>
> print(dym)
>
> printVarSummary(pet)
> printVarSummary(dym)
> pet_annual_total1= month_to_annual_weighted(yyyymm,pet,0)
>
> end
>
> The error message I got is :
>
> fatal:Variable (yrFrac) is undefined, can not assign attribute (calendar)
>
> fatal:["Execute.c":8578]:Execute: Error occurred at or near line 52 in
> file ./month_to_annual_weighted.ncl
>
>
> fatal:["Execute.c":8578]:Execute: Error occurred at or near line 28 in
> file test-temp1.ncl
>
>
> I am using ncl 6.2.1.
>
> Thanks!
>
> Lei
>
>
>
> On Wed, Jan 28, 2015 at 1:33 PM, Dennis Shea <shea at ucar.edu> wrote:
>
>> [1] Please indicate which version of NCL you are using.
>>
>> [2] I speculate the following will work
>>
>> yyyymm = cd_calendar(time, -1) ; <===
>> pet_annual_total1= month_to_annual_weighted(yyyymm,pet,0)
>>
>> [3] Since, I am not sure what version of NCL you have, please load the
>> attached
>>
>> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
>> load "./month_to_annual_weighted.ncl"
>>
>> ... your script ...
>>
>> [4] Note: from 6.2.0 onward, users do not need to explicitly load the
>> gsn_code/gsn_csm/contributed libraries
>>
>> Goos Luck
>>
>> On Wed, Jan 28, 2015 at 9:54 AM, Lei Meng <dream916 at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> I tried to convert monthly values to annual valued weighted by the
>>> number of days. Here is my code:
>>>
>>> ----
>>> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_code.ncl"
>>> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/gsn_csm.ncl"
>>> load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl"
>>> load "$NCARG_ROOT/lib/ncarg/nclscripts/esmf/ESMF_regridding.ncl"
>>> begin
>>>
>>> diri = "/Users/nmb1441/research/papers/china/monsoons/cru_data/pet/"
>>> srcFileName = "cru_ts3.21.1951.1960.pet.dat.nc"
>>> refile= addfile(diri + srcFileName,"r")
>>>
>>> pet = refile->pet
>>> lat = refile->lat
>>> lon = refile->lon
>>> time = refile->time
>>>
>>> time at calendar = "gregorian"
>>> yearfrac = cd_calendar(time, 4)
>>>
>>> yyyymm1 = cd_calendar(time, 1)
>>>
>>> dym = cd_calendar(time, 1)
>>>
>>> print(dym)
>>>
>>> printVarSummary(pet)
>>> printVarSummary(dym)
>>> pet_annual_total1= month_to_annual_weighted(dym,pet,0)
>>>
>>> end
>>> --
>>> The summaries of variables pet and dym are as follows:
>>>
>>> Variable: pet
>>>
>>> Type: double
>>>
>>> Total Size: 248832000 bytes
>>>
>>> 31104000 values
>>>
>>> Number of Dimensions: 3
>>>
>>> Dimensions and sizes: [time | 120] x [lat | 360] x [lon | 720]
>>>
>>> Coordinates:
>>>
>>> time: [18642..22264]
>>>
>>> lat: [-89.75..89.75]
>>>
>>> lon: [-179.75..179.75]
>>>
>>> Number Of Attributes: 5
>>>
>>> long_name : potential evapotranspiration
>>>
>>> units : mm/day
>>>
>>> correlation_decay_distance : -999
>>>
>>> _FillValue : 9.969209968386869e+36
>>>
>>> missing_value : 9.969209968386869e+36
>>>
>>> Variable: dym
>>>
>>> Type: double
>>>
>>> Total Size: 960 bytes
>>>
>>> 120 values
>>>
>>> Number of Dimensions: 1
>>>
>>> Dimensions and sizes: [120]
>>>
>>> Coordinates:
>>>
>>> Number Of Attributes: 1
>>>
>>> calendar : gregorian
>>>
>>> (0) month_to_annual_weighted: mm must be 1-to-12 inclusive
>>>
>>> The error message is " mm must be 1-to-12 inclusive".
>>>
>>> dym values are from 195101 to 196012.
>>>
>>> This is a very simple code. I couldn't figure out what was wrong with my
>>> code.
>>>
>>> The data is too big and I will send it if necessary. Thanks for any
>>> suggestions.
>>>
>>> Lei
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> 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/20150310/1fcf1a5c/attachment.html
-------------- next part --------------
A non-text attachment was scrubbed...
Name: month_to_annual_weighted.ncl
Type: application/octet-stream
Size: 8508 bytes
Desc: not available
Url : http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20150310/1fcf1a5c/attachment.obj
More information about the ncl-talk
mailing list