[ncl-talk] grid_area_avg

Barry Lynn barry.h.lynn at gmail.com
Wed Oct 25 00:55:46 MDT 2017


Kunal:

The error message says that you have used three subscripts on a variables
with only two dimensions.

You need to fix this error for your script to proceed to the next step.

Barry

On Wed, Oct 25, 2017 at 8:59 AM, Kunal Bali <kunal.bali9 at gmail.com> wrote:

> It also shows an error if I replaced := with = in 38 line of the given
> script (attached earlier), even though variable is in 2D array.
>
> fatal:["Execute.c":7950]:Number of subscripts on right-hand-side do not
> match
>             number of dimensions of variable: (2), Subscripts used: (3)
>
> fatal:["Execute.c":8640]:Execute: Error occurred at or near line 38 in
> file extract1.ncl
>
>
>
> Kunal Bali
>
>
>
>
>
>
>
> On Tue, Oct 24, 2017 at 4:46 PM, Helen Macintyre <
> Helen.Macintyre at phe.gov.uk> wrote:
>
>> You are trying to delete a variable that has not been assigned.
>>
>>
>>
>> Using “:=” tries to delete aot_subset when it doesn’t exist yet.
>>
>>
>>
>> More info here:
>>
>> http://www.ncl.ucar.edu/Document/Language/varb_assign.shtml
>>
>>
>>
>>
>>
>>
>>
>> *From:* ncl-talk [mailto:ncl-talk-bounces at ucar.edu] *On Behalf Of *Kunal
>> Bali
>> *Sent:* 24 October 2017 06:28
>> *To:* ncl-talk at ucar.edu
>> *Subject:* Re: [ncl-talk] grid_area_avg
>>
>>
>>
>> I am not able to sort out the query regarding
>>
>> fatal:Variable (aot_subset) is undefined
>> fatal:["Execute.c":8640]:Execute: Error occurred at or near line 38 in
>> file extract1.ncl
>>
>> I have attached my script. please let me know how to solve it (the file
>> regarding this script is attached in the previous mail).
>>
>>
>>
>> sorry for the inconvenience*. *
>>
>>
>>
>>
>>
>> regards
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Sat, Oct 21, 2017 at 1:53 PM, Kunal Bali <kunal.bali9 at gmail.com>
>> wrote:
>>
>> thanks for providing this information. I am positive that the given
>> variable in the data is a 2D array and the error is coming on 38 line as I
>> mentioned earlier.
>>
>> I am trying to debug this problem accordingly as you mentioned.
>>
>> However, I have attached the data (size =30mb, tried via ftp but facing
>> some error while uploading) and the full script for extracting the grid box
>> mean value.
>>
>>
>>
>> Thank You for all the support.
>>
>>>>
>> * maiactaot.h00v02.20010040635-20011550640.nc.bz2
>> <https://drive.google.com/file/d/0B6MS-JLMHECwaVh3QVVHUU1Wazg/view?usp=drive_web>*
>>
>>>>
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Fri, Oct 20, 2017 at 9:14 PM, Mary Haley <haley at ucar.edu> wrote:
>>
>> Kunal,
>>
>>
>>
>> Multiple people have tried to help you, but you continue to post error
>> messages without trying to debug them yourself. If you don't make an
>> effort, people are likely to stop trying to help. You are including code
>> snippets, but this is not always enough for us to help you debug the
>> problem. You need to include full scripts, output from
>> print/printVarSummary commands, AND all error messages.
>>
>>
>>
>> For example, you originally included this code:
>>
>>
>>
>>   latv = (/ 18, 24/)     ; for extracting grid box data
>>
>>   lonv = (/ 74, 78 /)
>>
>>   nm   = getind_latlon2d (lat2d, lon2d, latv, lonv)
>>
>>   ilt1 = nm(0,0)  ; start lat index
>>
>>   ilt2 = nm(1,0)  ; start lon index
>>
>>   iln1 = nm(0,1)  ; end lat index
>>
>>   iln2 = nm(1,1)  ; end lon index
>>
>>   lat_subset  := lat2d(ilt1:ilt2,iln1:iln2)
>>
>>   lon_subset := lon2d(ilt1:ilt2,iln1:iln2)
>>
>>   aot_subset := data
>>
>>   aot_subset(ilt1:ilt2,iln1:iln2) := data(ilt1:ilt2, iln1:iln2)
>>
>>
>>
>>   ;printVarSummary(aot_subset)
>>
>>   aot_avg = avg(data)
>>
>>   aot_subset_avg = avg(aot_subset)
>>
>>
>>
>> and then said that you were getting an error about aot_subset being
>> undefined. From the perspective of somebody who is just looking at the code
>> snippet above and doesn't have access to your full script, we are going to
>> wonder about this line:
>>
>>
>>
>>   aot_subset := data
>>
>>
>>
>> Since this appears to be the first time aot_subset is set, our next
>> question is going to be "is data defined"? In the code snippet you
>> included, we don't see where "data" is defined, so we have no way to help.
>> This is where a "printVarSummary(data)" line would have helped.
>>
>>
>>
>> In your last email, in which you did include some information about
>> "data", things are still not making any sense. You said you were subsetting
>> data as a 2D array with:
>>
>>
>>
>> aot_subset(ilt1:ilt2,iln1:iln2) = data(ilt1:ilt2,iln1:iln2)
>>
>>
>>
>> which you said was causing this error:
>>
>>
>>
>> fatal:["Execute.c":7950]:Number of subscripts on right-hand-side do not
>> match
>>
>>             number of dimensions of variable: (2), Subscripts used: (3)
>>
>>
>>
>> This error doesn't seem possible, because it's saying that you are using
>> 3 subscripts, but the line only has 2 subscripts being used in both arrays.
>> Are you positive that this error is coming from this line?
>>
>>
>>
>> I have to ask you again to please include your *full script* next time
>> and *all error messages* and *all printed output*, so people can see
>> exactly what line numbers in your script the errors correspond with and
>> what your data looks like. But don't do this until you have shown that you
>> tried to debug the problem yourself. Use "print" and "printVarSummary"
>> *before* the locations where the error messages are occurring, so you can
>> see what might be causing the error.
>>
>>
>>
>> For example, if the error says
>>
>>
>>
>>  number of dimensions of variable: (2), Subscripts used: (3)
>>
>>
>>
>> then this means you are subscripting a variable as if it were a 2D array,
>> when it is actually a 3D array. Add *printVarSummary* statements on ALL
>> subscripted variables that occur in that line, so you can be sure you are
>> doing things correctly.  For example, if the error occurs on this line:
>>
>>
>>
>>   aot_subset(ilt1:ilt2,iln1:iln2) := data(ilt1:ilt2, iln1:iln2)
>>
>>
>>
>> then do this:
>>
>>
>>   printVarSummary(data)
>>
>>   printVarSummary(aot_subset)
>>
>>   aot_subset(ilt1:ilt2,iln1:iln2) := data(ilt1:ilt2, iln1:iln2)
>>
>>
>>
>> It may also help to print the il* variables:
>>
>>
>>
>>   printVarSummary(data)
>>
>>   printVarSummary(aot_subset)
>>
>>   print("ilt1 = " + ilt1)
>>
>>   print("ilt2 = " + ilt2)
>>
>>   print("iln1 = " + iln1)
>>
>>   print("iln2 = " + iln2)
>>
>>   aot_subset(ilt1:ilt2,iln1:iln2) := data(ilt1:ilt2, iln1:iln2)
>>
>>
>>
>>
>>
>> Moving forward, you *must* show that you are making some effort to debug
>> your problem.
>>
>>
>>
>> Thank you for your consideration.
>>
>>
>>
>> --Mary
>>
>>
>>
>>
>>
>>
>>
>> On Wed, Oct 18, 2017 at 12:23 AM, Kunal Bali <kunal.bali9 at gmail.com>
>> wrote:
>>
>> printVarSummary(aot_subset), shows that aot_subset is undefined, which I
>> am unable to fix this problem yet.
>>
>> If I used aot_subset(ilt1:ilt2,iln1:iln2) *=* data(ilt1:ilt2,iln1:iln2) *instead
>> of *aot_subset(ilt1:ilt2,iln1:iln2) *:=* data(ilt1:ilt2,iln1:iln2)
>>
>>
>> then the error appeared as
>>
>>
>> *fatal:["Execute.c":7950]:Number of subscripts on right-hand-side do not
>> match             number of dimensions of variable: (2), Subscripts used:
>> (3)*
>>
>> basically, the data summary is
>>
>> Variable: fnames
>> Type: string
>> Total Size: 8 bytes
>>             1 values
>> Number of Dimensions: 1
>> Dimensions and sizes:    [1]
>> Coordinates:
>> (0)    ./maiactaotE.h00v03.20000550525-20003660700.nc
>>
>> Variable: data
>> Type: float
>> Total Size: 2545920000 <(254)%20592-0000> bytes
>>             636480000 values
>> Number of Dimensions: 3
>> Dimensions and sizes:    *[time | 442] x [YDim_grid1km | 1200] x
>> [XDim_grid1km | 1200]*
>> Coordinates:
>>             time: [1301.416666666686..8767]
>> Number Of Attributes: 8
>>   coordinates :    GridLat_grid1km, GridLon_grid1km
>>   hdfeos_name :    Optical_Depth_055
>>   projection :    Albers Conical Equal_Area
>>   unit :    None
>>   long_name :    AOT at 0.55 micron
>>   _FillValue_original :    -28672
>>   _FillValue :    -28672
>>   valid_range :    ( -0.1,  5 )
>> (0)    latitude (degrees_north) : min=11.2940312768897
>> max=24.54921980985786
>> (0)    longitude (degrees_east) : min=68.08003670367275
>> max=81.63171349927691
>>
>> *fatal:["Execute.c":7776]:aot_subset is undefined, can not subscript an
>> undefined variable fatal:["Execute.c":8640]:Execute: Error occurred at or
>> near line 38 in file test_extract.ncl*
>>
>> *38 line is *
>> *aot_subset(ilt1:ilt2,iln1:iln2) = data(ilt1:ilt2,iln1:iln2)*
>>
>> *fatal:Variable (aot_subset) is undefined*
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> regards
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Tue, Oct 17, 2017 at 3:05 PM, Guido Cioni <guidocioni at gmail.com>
>> wrote:
>>
>> Why did you comment this line ?
>>
>>
>>
>>   ;printVarSummary(aot_subset)
>>
>>
>>
>> That would have helped you in debugging the error on your own.
>>
>>
>>
>> You are using the re-assignment operator ":=". This means that every time
>> you make an assignment the variable is created again. Thus, you cannot make
>> this assignment
>>
>>
>>
>>  * aot_subset(ilt1:ilt2,iln1:iln2) := data(ilt1:ilt2, iln1:iln2)*
>>
>>
>>
>> as NCL has no way to know the shape of aot_subset beforehand.
>>
>>
>>
>> The following should be used instead (notice the assignment with "=" in
>> the second line).
>>
>>
>>
>>   aot_subset := data
>>
>>   aot_subset = aot_subset at _FillValue
>>   aot_subset(ilt1:ilt2,iln1:iln2) *=* data(ilt1:ilt2, iln1:iln2)
>>
>>
>>
>> Notice that this will (1) create an array which is shaped like data (2)
>> fill it with fill values as you only want to compute the average over the
>> subset (3) populate the array only in the lat-lon box provided. However I
>> don't see why you would want to use such a complicated syntax when the
>> following code would produce the same result
>>
>>
>>
>> aot_subset_avg=avg(data(ilt1:ilt2, iln1:iln2))
>>
>>
>>
>> If you have the right coordinate attributes you can even jump the first 7
>> lines and do
>>
>>
>>
>> aot_subset_avg=avg(data({18:24},{74:78})
>>
>>
>>
>> but I don't know your data.
>>
>>
>>
>> As it was already suggested by Mary and others, PLEASE take time to debug
>> the errors on your own.
>>
>>
>>
>> Regards,
>>
>>
>>
>> On 17. Oct 2017, at 11:25, Kunal Bali <kunal.bali9 at gmail.com> wrote:
>>
>>
>>
>>
>>
>> I did the following changes but still getting an error of * aot_subset*
>> which is undefined.
>>
>> please let me know that how to fix or defined the *aot_subset *this
>> problem.
>>
>>
>>
>>
>>   latv = (/ 18, 24/)     ; for extracting grid box data
>>   lonv = (/ 74, 78 /)
>>   nm   = getind_latlon2d (lat2d, lon2d, latv, lonv)
>>   ilt1 = nm(0,0)  ; start lat index
>>   ilt2 = nm(1,0)  ; start lon index
>>   iln1 = nm(0,1)  ; end lat index
>>   iln2 = nm(1,1)  ; end lon index
>>   lat_subset  := lat2d(ilt1:ilt2,iln1:iln2)
>>   lon_subset := lon2d(ilt1:ilt2,iln1:iln2)
>>   aot_subset := data
>>  * aot_subset(ilt1:ilt2,iln1:iln2) := data(ilt1:ilt2, iln1:iln2)*
>>
>>   ;printVarSummary(aot_subset)
>>   aot_avg = avg(data)
>>   aot_subset_avg = avg(*aot_subset*)
>>
>>   ;print(nm)
>>   print("-----")
>>
>>   do k=0,dimsizes(latv)-1
>>      n = nm(k,0)
>>      m = nm(k,1)
>>      print(lat2d(n,m)+"   "+lon2d(n,m))
>>      print("     "+data(:,n,m))                   ; nearest grid point
>> at all time steps
>>      print("-----")
>>   end do
>>
>>
>>
>>
>> regards
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Tue, Oct 17, 2017 at 12:41 PM, Kunal Bali <kunal.bali9 at gmail.com>
>> wrote:
>>
>> I have sent the ncl script and data to the incoming dir with the given
>> names as
>>
>> data = maiactaotE.h00v03.20003660525-20003660700.nc.bz2
>>
>> ncl_script = extract_iiserb.ncl
>>
>>
>>
>> I am not able to define the var_subset in the given script.
>>
>> please let me know if you have received the data and script?
>>
>>
>>
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Mon, Oct 16, 2017 at 11:07 PM, Mary Haley <haley at ucar.edu> wrote:
>>
>> Kunal,
>>
>>
>>
>> You must make an effort to debug some of these problems on your own. The
>> error is telling you that something is wrong around line 34 and it is
>> telling you exactly what the problem is. Please try to fix this error.
>>
>>
>>
>> If you continue to have problems after fixing this error, then I need to
>> ask you to provide the full script and data via ftp:
>>
>>
>>
>> http://www.ncl.ucar.edu/ftp_files.shtml
>>
>>
>>
>> However, make sure you debug any other new problems that come up, instead
>> of just emailing them to ncl-talk.  We have a page to help you understand
>> some of NCL's errors, and what causes them:
>>
>>
>>
>> http://www.ncl.ucar.edu/Document/Language/error_messages.shtml
>>
>>
>>
>> The particular error you're seeing can be found here:
>>
>>
>>
>> http://www.ncl.ucar.edu/Document/Language/error_messages.shtml#NumSubRHS
>>
>>
>>
>> As a side note, you are running a 3-year old version of NCL. I suggest
>> that you upgrade to NCL V6.4.0.
>>
>>
>>
>> --Mary
>>
>>
>>
>>
>>
>>
>>
>> On Mon, Oct 16, 2017 at 12:52 AM, Kunal Bali <kunal.bali9 at gmail.com>
>> wrote:
>>
>> I simply include the code (which you mentioned) were I was taking the avg
>> of the data as given below (please correct me if I did wrong)
>>
>>
>> ;----------------------------------------------------------------------
>> ; Main code
>> ;----------------------------------------------------------------------
>>   dir    = "./"
>>   fnames = systemfunc("ls " + dir + "maiactaot*.nc")
>> print(fnames)
>>   a      = addfile(fnames,"r")
>>   data   = short2flt(a->Optical_Depth_055_grid1km)
>> printVarSummary (data)
>> printMinMax (data, 0)
>> print("-----")
>>   nFill  = num(ismissing(data))
>> print("nFill="+nFill)
>> print("-----")
>>
>>   lat2d  = a->GridLat_grid1km
>>   lon2d  = a->GridLon_grid1km
>> printMinMax (lat2d, 0)
>> printMinMax (lon2d, 0)
>> print("-----")
>>
>> ;---grid points of interest
>> ;---http://www.ncl.ucar.edu/Document/Functions/Contributed/
>> getind_latlon2d.shtml
>>  ; latv = (/22, 24.0, 24.0, 22.0, 22.0/)
>>  ; lonv = (/76, 76.0, 78.0, 78.0, 76.0/)
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> *latv = (/ 22, 24/)   lonv = (/ 76, 78 /)   nm   = getind_latlon2d
>> (lat2d, lon2d, latv, lonv)   ilt1 = nm(0,0)  ; start lat index   ilt2 =
>> nm(1,0)  ; start lon index   iln1 = nm(0,1)  ; end lat index   iln2 =
>> nm(1,1)  ; end lon index   var_subset = var(ilt1:ilt2,iln1:iln2)
>> var_subset_avg = avg(var_subset)*
>>
>>   print(nm)
>>   print("-----")
>>
>>   do k=0,dimsizes(latv)-1
>>      n = nm(k,0)
>>      m = nm(k,1)
>>      print(lat2d(n,m)+"   "+lon2d(n,m))
>>      print("     "+data(:,n,m))                   ; nearest grid point
>> at all time steps
>>      print("-----")
>>   end do
>>
>>
>>
>>
>> *But still not getting the desired output as a single square box mean
>> value . It is showing the errors as*
>>
>> kunal at kunal-Vostro-1015:/media/Local Disk_/IIT_DELHI/2001/MAIACTAOT_TIME$
>> ncl extract1.ncl
>>  Copyright (C) 1995-2014 - All Rights Reserved
>>  University Corporation for Atmospheric Research
>>  NCAR Command Language Version 6.2.1
>>  The use of this software is governed by a License Agreement.
>>  See http://www.ncl.ucar.edu/ for more details.
>>
>>
>> Variable: fnames
>> Type: string
>> Total Size: 4 bytes
>>             1 values
>> Number of Dimensions: 1
>> Dimensions and sizes:    [1]
>> Coordinates:
>> (0)    ./maiactaot.h00v02.20010040635-20011550640.nc
>>
>> Variable: data
>> Type: float
>> Total Size: 40320000 bytes
>>             10080000 values
>> Number of Dimensions: 3
>> Dimensions and sizes:    [time | 7] x [YDim_grid1km | 1200] x
>> [XDim_grid1km | 1200]
>> Coordinates:
>>             time: [8862.583333333314..12486.66666666669]
>> Number Of Attributes: 8
>>   coordinates :    GridLat_grid1km, GridLon_grid1km
>>   hdfeos_name :    Optical_Depth_055
>>   projection :    Albers Conical Equal_Area
>>   unit :    None
>>   long_name :    AOT at 0.55 micron
>>   _FillValue_original :    -28672
>>   _FillValue :    -28672
>>   valid_range :    ( -0.1,  5 )
>> (0)    AOT at 0.55 micron: min=0   max=3.924
>> (0)    -----
>> (0)    nFill=6285271
>> (0)    -----
>> (0)    latitude: min=21.86737357453027   max=34.99855492029426
>> (0)    longitude: min=64.23634233372005   max=79.4747290253718
>> (0)    -----
>> fatal:["Execute.c":7863]:Number of subscripts on right-hand-side do not
>> match
>>             number of dimensions of variable: (2), Subscripts used: (3)
>>
>> fatal:["Execute.c":8578]:Execute: Error occurred at or near line 34 in
>> file extract1.ncl
>>
>> fatal:Variable (var_subset) is undefined
>> fatal:["Execute.c":8578]:Execute: Error occurred at or near line 35 in
>> file extract1.ncl
>>
>>
>>
>>
>> Variable: nm
>> Type: integer
>> Total Size: 16 bytes
>>             4 values
>> Number of Dimensions: 2
>> Dimensions and sizes:    [2] x [2]
>> Coordinates:
>> Number Of Attributes: 1
>>   long_name :    indices closest to specified LAT/LON coordinate pairs
>> (0,0)    1199
>> (0,1)    792
>> (1,0)    1199
>> (1,1)    1041
>> (0)    -----
>> (0)    23.76603307545667   75.53995171540016
>> (0)         0.179
>> (1)         0.142
>> (2)         -28672
>> (3)         0.169
>> (4)         -28672
>> (5)         -28672
>> (6)         -28672
>> (0)    -----
>> (0)    24.26559325846936   77.93996773594735
>> (0)         -28672
>> (1)         0.393
>> (2)         -28672
>> (3)         0.156
>> (4)         0.313
>> (5)         -28672
>> (6)         -28672
>> (0)    -----
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Sat, Oct 14, 2017 at 12:24 AM, Mary Haley <haley at ucar.edu> wrote:
>>
>> Kunal,
>>
>>
>>
>> Please include the code where you are actually taking the average of your
>> data using the information returned from getind_latlon2d.
>>
>>
>>
>> It's important to note that getind_latlon2d simply returns the individual
>> index values that are closest to each of the lat/lon pairs that you gave
>> it. It doesn't work in such a way that you give it a lat/lon box and it
>> returns all the values in that box.
>>
>>
>>
>> That's what I was trying to illustrate with the wrf_gsn_10.ncl I
>> created.  I gave the function two corners of the box, and then using the
>> two pairs of index values I got back, I was able to get all the values
>> inside the box area of interest:
>>
>>
>>
>>   lats = (/ min_lat, max_lat /)
>>
>>   lons = (/ min_lon, max_lon /)
>>
>>   nm   = getind_latlon2d (lat2d, lon2d, lats, lons)
>>
>>   ilt1 = nm(0,0)  ; start lat index
>>
>>   ilt2 = nm(1,0)  ; start lon index
>>
>>   iln1 = nm(0,1)  ; end lat index
>>
>>   iln2 = nm(1,1)  ; end lon index
>>   var_subset = var(ilt1:ilt2,iln1:iln2)
>>
>>   var_subset_avg = avg(var_subset)
>>
>>
>>
>> --Mary
>>
>>
>>
>>
>>
>> On Thu, Oct 12, 2017 at 1:19 PM, Kunal Bali <kunal.bali9 at gmail.com>
>> wrote:
>>
>> Dear Haley Ma'am,
>>
>>
>>
>> Thanks for providing the information and example.
>>
>> But if I follow the getind_latlon2d function as I did, then it seems
>> like I followed the same procedure as given in the example
>> http://www.ncl.ucar.edu/Document/Functions/Contributed/
>> getind_latlon2d.shtml
>>
>>
>>
>> But still I am not getting the mean of the grid box on every time step or
>> am I reading incorrectly the result ?
>>
>>
>>
>>
>>
>> regards
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Fri, Oct 13, 2017 at 12:11 AM, Mary Haley <haley at ucar.edu> wrote:
>>
>> Kunal,
>>
>>
>>
>> I created an example for you, showing three ways you can subset a WRF
>> grid (since I already had a similar example).  It shows how to use the
>> getind_latlon2d function.
>>
>>
>>
>> You have to be careful with subsetting curvilinear data, because
>> specifying a lat/lon box to take an average over can mean two different
>> things. You will be able to see the difference when you look at the graphic.
>>
>>
>>
>> See example wrf_gsn_10.ncl at:
>>
>>
>>
>> http://www.ncl.ucar.edu/Applications/wrfgsn.shtml#ex10
>>
>>
>>
>> --Mary
>>
>>
>>
>>
>>
>>
>>
>> On Wed, Oct 11, 2017 at 12:03 PM, Kunal Bali <kunal.bali9 at gmail.com>
>> wrote:
>>
>> Dear NCL users,
>>
>>
>> Single point coordinates values of 23.0 N and 77.0 E is extracted or
>> print by using the script below
>>
>> ----------------------------------------------------------------------
>> ; Main code
>> ;----------------------------------------------------------------------
>>   dir    = "./"
>>   fnames = systemfunc("ls " + dir + "maiactaot*.nc")
>> print(fnames)
>>   a      = addfile(fnames,"r")
>>   data   = short2flt(a->Optical_Depth_055_grid1km)
>>   nFill  = num(ismissing(data))
>>   lat2d  = a->GridLat_grid1km
>>   lon2d  = a->GridLon_grid1km
>>
>> ;---grid points of interest
>>   latv = (/23.0/)
>>   lonv = (/77.0 /)
>>
>>   nm = getind_latlon2d (lat2d,lon2d, latv, lonv)
>>
>>   do k=0,dimsizes(latv)-1
>>      n = nm(k,0)
>>      m = nm(k,1)
>>      print(lat2d(n,m)+"   "+lon2d(n,m))   ; grid point location
>>      print("     "+data(:,n,m))                   ; nearest grid point
>> at all time steps
>>      print("-----")
>>   end do
>>
>>
>> NOW, I want to extract the square grid box of 100 km around the
>> coordinates (23N,77E) such as
>>    latv = (/22, 24.0, 24.0, 22.0, 22.0/)
>>    lonv = (/76, 76.0, 78.0, 78.0, 76.0 /)
>>
>>
>> after that I want to do the area mean of the grid box. So that I can get
>> one single point value of that grid box.
>>
>> So when I replacing
>>   latv = (/23.0/)
>>   lonv = (/77.0/)
>>
>>
>>
>> with
>>
>>    latv = (/22, 24.0, 24.0, 22.0, 22.0/)
>>    lonv = (/76, 76.0, 78.0, 78.0, 76.0 /)
>>
>> then It's not giving mean of the square grid box.
>>
>> It shows the something like that (given below), which is incorrect. So
>> please let me know how can I get the square grid box mean and then extract
>> as asciiwrite or print?
>>
>> (0)    23.76603307545667   75.53995171540016
>> (0)         0.179
>> (1)         0.142
>> (2)         -28672
>> (3)         0.169
>> (4)         -28672
>> (5)         -28672
>> (6)         -28672
>> (0)    -----
>> (0)    24.00322458681621   75.99551564353467
>> (0)         0.171
>> (1)         0.16
>> (2)         -28672
>> (3)         0.17
>> (4)         -28672
>> (5)         -28672
>> (6)         -28672
>>
>> etc..etc..
>>
>>
>>
>> regards
>>
>> Kunal Bali
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>>
>>
>> Guido Cioni
>>
>> http://guidocioni.altervista.org
>>
>>
>>
>>
>>
>>
>> _______________________________________________
>> ncl-talk mailing list
>> ncl-talk at ucar.edu
>> List instructions, subscriber options, unsubscribe:
>> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>>
>>
>>
>>
>>
>> ************************************************************
>> **************
>> The information contained in the EMail and any attachments is
>> confidential and intended solely and for the attention and use of the named
>> addressee(s). It may not be disclosed to any other person without the
>> express authority of Public Health England, or the intended recipient, or
>> both. If you are not the intended recipient, you must not disclose, copy,
>> distribute or retain this message or any part of it. This footnote also
>> confirms that this EMail has been swept for computer viruses by
>> Symantec.Cloud, but please re-sweep any attachments before opening or
>> saving. http://www.gov.uk/PHE
>> ************************************************************
>> **************
>>
>
>
> _______________________________________________
> ncl-talk mailing list
> ncl-talk at ucar.edu
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk
>
>


-- 
Barry H. Lynn, Ph.D
Senior Lecturer,
The Institute of the Earth Science,
The Hebrew University of Jerusalem,
Givat Ram, Jerusalem 91904, Israel
Tel: 972 547 231 170
Fax: (972)-25662581

C.E.O, Weather It Is, LTD
Weather and Climate Focus
http://weather-it-is.com
Jerusalem, Israel
Local: 02 930 9525
Cell: 054 7 231 170
Int-IS: x972 2 930 9525
US 914 432 3108
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20171025/2aa529a8/attachment.html>


More information about the ncl-talk mailing list