# Re: storm density

From: Alexander Semenov <asemenov_at_nyahnyahspammersnyahnyah>
Date: Thu Oct 03 2013 - 11:34:35 MDT

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
>
>
> --
> ______________________________________________________________