[ncl-talk] How to define date for WRF-chem to get average daily of a variable ?

Dennis Shea shea at ucar.edu
Fri Oct 7 10:13:58 MDT 2022


The file is about 5GB.

ncl-talk does not need the entire file.

DO you have the netCDF operators available?

%> ncks -v Times,TAUAER2,TAUAER3,XLAT,XLONG
wrfout_d01_2011-07-01_00:00:12  setareh_chem.nc

Further, compress  'setareh_chem.nc'  using gzip

%>  gzip setareh_chem.nc


This [setareh_chem.nc.gz] will be substantially smaller.


On Fri, Oct 7, 2022 at 9:28 AM Setareh Rahimi <setareh.rahimi at gmail.com>
wrote:

> Dear Dennis,
> I sent you the file via transfer.pcloud.com. I could not send it here due
> to the large size of the file.
> Please check the script with the file and let me know your idea.
> Many thanks for your help.
> Best wishes,
>
> On Fri, Oct 7, 2022 at 3:18 PM Dennis Shea <shea at ucar.edu> wrote:
>
>> I do not understand 'x' either
>>
>> "I wonder about variable x; I did not define such a variable."
>>
>> ncl 0> f = addfile(".....","r")  ; I do not have your file
>> ncl 1> print(f)                                             ; like ncdump
>> -h
>> ncl 2> Times = f->Times                            ; Times(Time,
>> DateStrLen)    (type character)
>> ncl 4> Time = wrf_times_c( Times, 0 )      ; "hours since" initial time
>> on file   (double); units recognized by cd_calendar
>> ncl 5> print(Time)
>>
>> ncl 7> T = f->T
>> ncl 8> printVarSummary(T)
>>
>> ncl 9> T&Time = Time                              ; associate time
>> coordinate
>> ncl 10> printVarSummary(T)
>>
>> Variable: T
>> Type: float
>> Total Size: 19683000 bytes
>>             4920750 values
>> Number of Dimensions: 4
>> Dimensions and sizes: [Time | ??] x [bottom_top | 27] x [south_north |
>> 81] x [west_east | 90]
>> Coordinates:
>>             Time: [   0..  ?]
>> Number Of Attributes: 5
>>   FieldType : 104
>>   MemoryOrder : XYZ
>>   description : perturbation potential temperature (theta-t0)
>>   units : K
>>   stagger :
>> ncl 11> Tavg = calculate_daily_values (T, "avg", 0, True)
>> ncl 12> printVarSummary(Tavg)
>>
>> Variable: Tavg
>> Type: float
>> Total Size: 1574640 bytes
>>             393660 values
>> Number of Dimensions: 4
>> Dimensions and sizes: [Time | ...] x [bottom_top | 27] x [south_north |
>> 81] x [west_east | 90]
>> Coordinates:
>>             Time: [   0..  12]
>> Number Of Attributes: 8
>>   _FillValue : 9.96921e+36
>>   FieldType : 104
>>   MemoryOrder : XYZ
>>   description : perturbation potential temperature (theta-t0)
>>   units : K
>>   stagger :
>>   Time :   0
>>   NCL_tag : calculate_daily_values
>>
>> On Fri, Oct 7, 2022 at 5:16 AM Setareh Rahimi <setareh.rahimi at gmail.com>
>> wrote:
>>
>>> Dear Dennis,
>>> So many thanks for your advice. I made corrections to my script as you
>>> suggested, and attempted to calculate and plot the average AOD for
>>> 2011-06-28 but I still get errors. I attached the script and the errors.
>>>
>>> As you can see from the error message, NCL says :fatal: No coordinate
>>> variable exists for dimension (Time) in variable (x)
>>> I wonder about variable x; I did not define such a variable.
>>>
>>> Please advise me on how to sort this issue out.
>>> Many thanks in advance,
>>> Best wishes,
>>>
>>> On Fri, Oct 7, 2022 at 6:02 AM Dennis Shea <shea at ucar.edu> wrote:
>>>
>>>> As noted in the documentation, *calculate_daily_values*
>>>> <https://www.ncl.ucar.edu/Document/Functions/Contributed/calculate_daily_values.shtml>
>>>> requires that the variable have a **time coordinate** that is recognized by
>>>> cd_calendar.
>>>>
>>>>   Times = f->Times                    ; Times(Time, DateStrLen)    (type character)
>>>>   Time = *wrf_times_c*( Times, 0 )      ; "hours since" initial time on file   (double); units recognized by cd_calendar
>>>>
>>>>      a2           = f->TAUAER   ; (Time, south_north, west_east)
>>>>      a2&Time = Time   ; associate the 'Time' coordinate with the
>>>> variable using  standard NCL & syntax
>>>>      printVarSummary(a2)
>>>>      print("------------------------------------")
>>>>
>>>>    a2Day = calculate_daily_values (a2, "avg", 0, opt)
>>>>    printVarSummary(a2Day)
>>>>    printMinMax (a2Day,1)
>>>>
>>>>
>>>>
>>>> On Wed, Oct 5, 2022 at 9:30 AM Setareh Rahimi via ncl-talk <
>>>> ncl-talk at mailman.ucar.edu> wrote:
>>>>
>>>>> Dear NCL users,
>>>>>
>>>>> I am trying to plot the daily average of AOD (aerosol optical depth)
>>>>> from WRF-chem outputs. However, I can not define the time so that NCL plots
>>>>> the daily average of AOD.(the script has been attached, and the model
>>>>> output is too large and I just used ncdump to show the header of some
>>>>> varibles ).
>>>>> I tried the following commands:
>>>>>
>>>>>
>>>>> times = wrf_user_getvar(f,"times",-1)
>>>>> printVarSummary(times)
>>>>> print(times)
>>>>> ymdh = cd_calendar(a2&times, -2)
>>>>>   print(ymdh)
>>>>>
>>>>> but faced an error.
>>>>> Would you please kindly advise me on how can I calculate the daily
>>>>> average of AOD from the hourly output of WRF-chem?
>>>>> Many thanks in advance,
>>>>> Best wishes,
>>>>> --
>>>>> S.Rahimi
>>>>>
>>>>> _______________________________________________
>>>>> ncl-talk mailing list
>>>>> ncl-talk at mailman.ucar.edu
>>>>> List instructions, subscriber options, unsubscribe:
>>>>> https://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>>>>
>>>>
>>>
>>> --
>>> S.Rahimi
>>>
>>>
>
> --
> S.Rahimi
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.ucar.edu/pipermail/ncl-talk/attachments/20221007/c4184248/attachment.htm>


More information about the ncl-talk mailing list