[ncl-talk] Assign lat lon cordinates to polar stereographic coordinate
Guido Cioni
guidocioni at gmail.com
Tue Sep 13 02:15:11 MDT 2016
Assuming from your filedump you do have coordinate variables associated, so the following should easily work.
temp_avg=dim_avg_n_Wrap(temp(:,:,{40:50},{-30:-10}),(/2,3/))
Otherwise you would have to convert the latitude/longitude variables from 2D to 1D, use the ind function to find all the indices that map into your box, convert again into 2D indices with ind_resolve, subset temp with these indices, do the average.
Guido Cioni
http://guidocioni.altervista <http://guidocioni.altervista/>.org
> On 13 Sep 2016, at 09:10, Sourav Chatterjee <srvsxc at outlook.com> wrote:
>
> Thanks alot Mary for the explanation.
>
> Actually I need to do some area averaging for which I have the lat lon information e.g say, surface temperature averaged over 40-50N and -30:-10E. How to perform this spatial averaging with this temperature(time,depth,y,x) variable?
>
> Thanks
> Sourav
> From: Mary Haley <mailto:haley at ucar.edu>
> Sent: 12-09-2016 23:38
> To: Sourav Chatterjee <mailto:srvsxc at outlook.com>
> Cc: ncl-talk at ucar.edu <mailto:ncl-talk at ucar.edu>
> Subject: Re: [ncl-talk] Assign lat lon cordinates to polar stereographic coordinate
>
> Sourav,
>
> I'm not sure what you mean by "converting my variable".
>
> Since your latitude and longitude arrays are two-dimensional, you cannot associate them with "temperature" in the same way that "y" and "x" are currently associated with "temperature" as coordinate variables. This is a NetCDF limitation that requires that coordinate variables be one-dimensional and the same length as the dimension they represent.
>
> You already have a "coordinates" *attribute* associated with "temperature", that indicates which variables represent the lat/lon arrays for your data:
>
> temperature:coordinates = "longitude latitude" ;
>
> This is how we would normally suggest that you "associate" 2D lat/lon arrays with a variable on a NetCDF file, so really, your "temperature" variable looks pretty good as it is.
>
> --Mary
>
>
> On Fri, Sep 9, 2016 at 4:19 AM, Sourav Chatterjee <srvsxc at outlook.com <mailto:srvsxc at outlook.com>> wrote:
> Hi all
>
>
> I want convert my variable (temperature) to temperature (time,depth,lat,lon) from temperature(time,depth,x,y)
>
>
> here is how it looks like now.
>
>
> Any help!
>
>
> Thanks
>
>
> dimensions:
> depth = 12 ;
> time = UNLIMITED ; // (288 currently)
> x = 428 ;
> y = 403 ;
> variables:
> int stereographic ;
> stereographic:grid_mapping_name = "polar_stereographic" ;
> stereographic:latitude_of_projection_origin = 90. ;
> stereographic:longitude_of_projection_origin = -45. ;
> stereographic:scale_factor_at_projection_origin = 1. ;
> stereographic:straight_vertical_longitude_from_pole = -45. ;
> stereographic:false_easting = 0. ;
> stereographic:false_northing = 0. ;
> float x(x) ;
> x:axis = "X" ;
> x:standard_name = "projection_x_coordinate" ;
> x:units = "100 km" ;
> float y(y) ;
> y:standard_name = "projection_y_coordinate" ;
> y:axis = "Y" ;
> y:units = "100 km" ;
> float depth(depth) ;
> depth:long_name = "depth" ;
> depth:units = "m" ;
> depth:standard_name = "depth" ;
> depth:positive = "down" ;
> depth:axis = "Z" ;
> double time(time) ;
> time:units = "hour since 1950-1-1T00:00:00Z" ;
> time:long_name = "forecast time" ;
> float longitude(y, x) ;
> longitude:standard_name = "longitude" ;
> longitude:units = "degrees_east" ;
> float latitude(y, x) ;
> latitude:standard_name = "latitude" ;
> latitude:units = "degrees_north" ;
> short temperature(time, depth, y, x) ;
> temperature:_FillValue = -32767s ;
> temperature:missing_value = -32767s ;
> temperature:add_offset = 23.5 ;
> temperature:scale_factor = 0.000808839239385893 ;
> temperature:units = "Celsius" ;
> temperature:standard_name = "sea_water_potential_temperature" ;
> temperature:grid_mapping = "stereographic" ;
> temperature:coordinates = "longitude latitude" ;
> temperature:cell_methods = "area: mean" ;
>
> // global attributes:
> :title = "Arctic Ocean Physics Reanalysis (1991-2014), 12.5km monthly mean (dataset-ran-arc-myoceanv2-be)" ;
> :institution = "NERSC, Thormoehlens gate 47, N-5006 Bergen, Norway" ;
> :history = "20160112:Created by program hyc2proj, version V0.3" ;
> :source = "NERSC-HYCOM model fields" ;
> :references = "http://topaz.nersc.no <http://topaz.nersc.no/>" ;
> :field_type = "Files based on file type nersc_weekly" ;
> :Conventions = "CF-1.4" ;
> :field_date = "2014-11-15" ;
> :bulletin_date = "2014-11-15" ;
> }
>
>
>
> _______________________________________________
> ncl-talk mailing list
> ncl-talk at ucar.edu <mailto:ncl-talk at ucar.edu>
> List instructions, subscriber options, unsubscribe:
> http://mailman.ucar.edu/mailman/listinfo/ncl-talk <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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20160913/66a65904/attachment.html
More information about the ncl-talk
mailing list