[ncl-talk] error in dimension
Dennis Shea
shea at ucar.edu
Thu Dec 7 18:49:48 MST 2017
If you are having 'file problems', *always *include (attach) the output
from 'ncdump -h' or, equivalently, 'ncl_filedump'
----
I think you have a 'typo':
"3B-DAY-*L.MS <http://L.MS>*.MRG.3IMERG.201704*.nc"
'*L.MS <http://L.MS>*' should be '*LMS*"
This should be:
"3B-DAY-*LMS*.MRG.3IMERG.201704*.nc"
====
If there is no *time* dimension (ie: *record* dimension)
Then, I think you should read the documentation for
https://www.ncl.ucar.edu/Document/Functions/Built-in/addfiles.shtml
(In particulare, the Examples)
and
https://www.ncl.ucar.edu/Document/Functions/Built-in/ListSetType.shtml
====
I suggest *not* reordering when importing the data. This is very
inefficient.,
diri = "path/" ; input directory
files = *systemfunc*("cd "+diri+"; ls 3B-DAY-LMS.MRG.3IMERG.201704*.nc")
; file paths
f = *addfiles*(diri+files,"r")
* ListSetType* (f, "join")
prc = f[:]->precipitationCal
*printVarSummary*(prc)
Likely, you will have something like:
[*ncl_join* | ?] x [lon | 3480] x [lat | 61]
Now reorder, use the *:=* 'overwrite' syntax
prc *:=* prc(ncl_join|:, lat|:, lon|:)
printVarSummary(prc)
If there is no 'time' within the file, then you will have to parse the
'files' variable to extract the yyyymm... information
str_get_cols or str_get_field
Good luck
On Thu, Dec 7, 2017 at 5:56 PM, Ehsan Taghizadeh <ehsantaghizadeh at yahoo.com>
wrote:
> Dear Karin
> I think so, all files have the same dimensions and names.
> I examined one by one files and all shows same output for following lines
> prc2 = f->precipitationCal(lat | :, lon | :)
> printVarSummary(prc2)
>
> Output is:
>
> Type: float
> Total Size: 28304 bytes
> 7076 values
> Number of Dimensions: 2
> Dimensions and sizes: [lat | 61] x [lon | 116]
> Coordinates:
> lat: [34.25..40.25]
> lon: [40.05..51.55]
>
>
>
> However if it helps I could attach these files.
>
> Sincerely
> Ehsan
> On Thursday, December 7, 2017, 2:22:35 PM GMT, Karin Meier-Fleischer <
> meier-fleischer at dkrz.de> wrote:
>
>
> Hi Ehsan,
>
> the syntax for multiple files is correct
>
> prc = f[:]->precipitationCal(lat|:,lon|:)
>
> Are you sure that all files have the same dimensions and names?
>
> -Karin
>
>
> Am 07.12.17 um 14:53 schrieb Ehsan Taghizadeh:
>
> Dear Karin
> Thank you so much for your nice reply. However for
> prc = f[:]->precipitationCal
> printVarSummary(prc)
>
> I got:
> Copyright (C) 1995-2017 - All Rights Reserved
> University Corporation for Atmospheric Research
> NCAR Command Language Version 6.4.0
> The use of this software is governed by a License Agreement.
> See http://www.ncl.ucar.edu/ for more details.
> warning:Aggregated dimension coordinate values are non-monotonic; check
> aggregated file ordering
>
> Variable: prc
> Type: float
> Total Size: 849120 bytes
> 212280 values
> Number of Dimensions: 2
> Dimensions and sizes: [lon | 3480] x [lat | 61]
> Coordinates:
> lon: [40.05..51.55]
> lat: [34.25..40.25]
> Number Of Attributes: 6
> units : mm
> long_name : Daily accumulated precipitation (combined microwave-IR)
> estimate
> coordinates : lat lon
> _FillValue : -9999.9
> origname : precipitationCal
> fullnamepath : /precipitationCal
>
> In fact for one file, I don't have any problem and following lines work
> correctly:
> f = addfile(filess,"r")
> prc = f->precipitationCal(lat | :, lon | :)
>
> however for multiple files I counter problem. I attached 3 files which I
> want to open.
> As Karin mentioned the problem is related to "Dimenstions and sizes". So
> how could I point to a variable and simultaneous reorder (lat, lon)
> dimension in case of multiple files?
> I mean what is the form of
> f = addfile(filess,"r")
> prc = f->precipitationCal(lat | :, lon | :)
> for multiple files?
>
> Again I'll be thankful for any help.
>
> Sincerely
> Ehsan
>
> On Thursday, December 7, 2017, 4:51:40 PM GMT+3:30, Karin Meier-Fleischer
> <meier-fleischer at dkrz.de> <meier-fleischer at dkrz.de> wrote:
>
>
> Hi Ehsan,
>
> please, have a look at your data first. Do
>
> prc = f[:]->precipitationCal
> printVarSummary(prc)
>
> to see what dimension names precipitationCal has.
>
> -Karin
>
> Am 07.12.17 um 12:18 schrieb Ehsan Taghizadeh:
>
> Hi, I want to open multiple netcdf files. Also I had to change dimesion of
> variable (precipitationCal(lat | :, lon | :)), but I got an error
> (fatal:(lat) is not a dimension name in variable (lon), could not determine
> dimension number). What should I do?
> Following lines are simple code.
>
> diri = "path/" ; input directory
> files = systemfunc("ls "+diri+"3B-DAY-L.MS.MRG.3IMERG.201704*.nc") ;
> file paths
> f = addfiles(files,"r")
> prc = f[:]->precipitationCal(lat | :, lon | :) ; read
> precipitation from all files
>
>
> Sincerely
> Ehsan
>
>
> _______________________________________________
> ncl-talk mailing listncl-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 listncl-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
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20171207/52b7f539/attachment.html>
More information about the ncl-talk
mailing list