# Re: storm density

Date: Thu Oct 03 2013 - 11:44:59 MDT

Hi Alex,
In short, using the current method involving coordinate subscripting,
no. The original coding defines a rectlinear grid. What you are
currently asking about is a type of curvilinear grid; a grid that would
be defined by 2D latitudes and longitudes (ex: the EASE grids). I cannot
offer any advice on how to count up storm tracks on a curvilinear grid.

On 10/03/2013 11:34 AM, Alexander Semenov wrote:
>
> Thank you for your suggestions. The image definitely looks better this time.
> One thing I would still like to improve is to have less longitudes
> over the north pole, say everywhere where latitudes are greater than
> 85N.
>
> I was thinking of making the where statement but I cannot get it to
> work because I have a fixed number of longitudes specified in the
> array:
>
> arr = new((/14,90/),integer,-999)
>
> arr&lon=where(lat.ge.85, fspan(0,358.9,90),fspan(0,358.9,30)
>
> Is there any way to tackle this problem?
>
> Thanks,
> Alex
>
>
>
> On Thu, Oct 3, 2013 at 7:49 AM, Adam Phillips <asphilli@ucar.edu> wrote:
>> Hi Alexander,
>> I didn't see any replies on this, so I thought I would add the following:
>> 1 - I believe my coding is working as intended, but due to the fact that the
>> grid points get smaller in area the closer you get to the poles, this
>> results in less counts per grid box the closer you get to the poles due to
>> the diminished area. Thus, if you were to combine the near-pole grid boxes
>> into one box similar in size to the lower latitude grid boxes I think you
>> would find comparable numbers.
>> 2 - Again due to very small grid boxes near the poles, your screen and/or
>> NCL is possibly not resolving the tiny grid boxes near the pole. This may
>> result in white areas as you see. I am not 100% sure on this point though.
>>
>> A possible solution to all of this is to manually set your arr&lat array to
>> get more course closer to the poles. Note though that there's not much that
>> you can do about the convergence of the longitudes.. An example:
>> arr = new((/14,90/),integer,-999)
>> <snip>
>> arr&lat = (/54,56,58,60,62,64,66,68,70,74,78,82,86,90/)
>> <snip>
>> arr&lon = ispan(0,356,4)
>>
>> If that does not produce desirable results, then counting things up on a
>> grid where the grid box size is the same (such as the EASE grid) would be my
>> next recommendation. I do not have any experience doing this and thus
>> someone else would need to provide guidance on how to pursue this approach.
>> Hope that helps,
>>
>> On 09/28/2013 11:13 AM, Alexander Semenov wrote:
>>
>> Hi ncl-talk,
>>
>> I am trying to calculate and subsequently plot the number of cyclones
>> per grid cell in
>> the Arctic Ocean domain based on the data from the ascii file
>> (all_sum_ens1.asc). A while ago, Adam Phillips suggested the approach
>> to calculate the number of storms and although the code compiled, I
>> believe that the pattern of cyclone density was wrong, particularly
>> over the Central Arctic. In the attached plot, you can see that the
>> cyclone density over the Central Arctic is close to 0 which is too
>> low. I was hoping you could suggest another approach to calculate the
>> number of storms (density)
>> passing each grid cell?
>>
>> Adam Phillips suggested to calculate density by setting "arr" array:
>>
>> arr = new((/100,110/),integer,-999)
>> arr!0 = "lat"
>> arr&lat = fspan(53.82,90,100)
>> arr&lat@units = "degrees_north"
>> arr!1 = "lon"
>> arr&lon = fspan(0,358.9,110)
>> arr&lon@units = "degrees_east"
>>
>> printVarSummary(arr)
>>
>> arr = 0 ; set array to all 0's
>> do gg = 0,dimsizes(slp)-1
>> if (.not.ismissing(lat(gg)).and..not.ismissing(lon(gg))) then ;
>> check to make sure lat/lons are present
>> arr({lat(gg)},{lon(gg)}) = (/ arr({lat(gg)},{lon(gg)})+1 /)
>> end if
>>
>>
>> Attached you will find the code and plot.
>>
>> The data file (ascii) is on your ftp server under name all_sum_ens3.asc.
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>> --
>> ______________________________________________________________
>> NCAR/Climate and Global Dynamics Division (303) 497-1726
>> P.O. Box 3000
>> Boulder, CO 80307-3000 http://www.cgd.ucar.edu/cas/asphilli

```--
______________________________________________________________