[ncl-talk] Adding multiple WRF output files to a script
Muhammad Omer Mughal
m.mughal1 at postgrad.curtin.edu.au
Wed Aug 31 03:33:02 MDT 2016
Hi Mary
It seems like there is a memory problem when I try to use either of the following lines
lat1 = f[0]->XLAT(0,ny,mx)
lon1 = f[0]->XLONG(0,ny,mx)
I get the following error
fatal:["NclFile.c":2099]:Subscript out of range, error in subscript #1fatal:Memory allocation failure:[errno=12]fatal:["Execute.c":8575]:Execute: Error occurred at or near line 22 in file wrf_script-r2
While using the line
lat1 = wrf_user_getvar(f,"lat",0)
lon1 = wrf_user_getvar(f,"lon",0)
I get the following error
fatal:Subscript out of range, error in subscript #1
fatal:An error occurred reading u
fatal:["Execute.c":8575]:Execute: Error occurred at or near line 26 in file wrf_script-r2
Muhammad Omer Mughal
MSc BSc Mechanical Engineering
PhD Research Scholar
Remote Sensing and Satellite Research Group
Department of Imaging and Applied Physics
Curtin University
Curtin University
Tel | +61 8 9266 7962
Fax | +61 8 9266 2377
Mobile | 0470 237 525
Email | m.mughal1 at postgrad.curtin.edu.au<mailto:m.lynch at curtin.edu.au>
Web | http://curtin.edu.au<http://curtin.edu.au/>
Curtin University is a trademark of Curtin University of Technology.
CRICOS Provider Code 00301J (WA), 02637B (NSW)
________________________________
From: Mary Haley <haley at ucar.edu>
Sent: Wednesday, 31 August 2016 5:39:29 AM
To: Muhammad Omer Mughal
Cc: ncl-talk at ucar.edu
Subject: Re: [ncl-talk] Adding multiple WRF output files to a script
You have to be careful when you use "addfile" and "addfiles" interchangeably, because "addfiles" returns a list object, while "addfile" returns a file pointer.
In your script, you are using "addfiles" to open a series of files, but then trying to use "f" as if it were a file pointer.
It's telling you where the problem is:
lat1 = f->XLAT(0,ny,mx) ; the is the nearest grid point
You can't use "f->" syntax with something opened with addfiles.
One of these should work:
lat1 = f[0]->XLAT(0,ny,mx)
or
lat1 = wrf_user_getvar(f,"lat",0)
You will need to fix "lon1" too.
--Mary
On Tue, Aug 30, 2016 at 7:28 AM, Muhammad Omer Mughal <m.mughal1 at postgrad.curtin.edu.au<mailto:m.mughal1 at postgrad.curtin.edu.au>> wrote:
Hi Mary
I tried to use addfiles for just the fourth domain as the wrf output is for the fourth domain is split up into multiple files. I put all the variables in a single file as it would exceed the limit of my computer.
When I used the script you had sent earlier over just the fourth domain I get the following error.
fatal:(f) not reference to a valid file
fatal:["Execute.c":8575]:Execute: Error occurred at or near line 22 in file wrf_script-r2
The script is attached again for convenience.
Muhammad Omer Mughal
MSc BSc Mechanical Engineering
PhD Research Scholar
Remote Sensing and Satellite Research Group
Department of Imaging and Applied Physics
Curtin University
Curtin University
Tel | +61 8 9266 7962
Fax | +61 8 9266 2377
Mobile | 0470 237 525
Email | m.mughal1 at postgrad.curtin.edu.au<mailto:m.lynch at curtin.edu.au>
Web | http://curtin.edu.au<http://curtin.edu.au/>
Curtin University is a trademark of Curtin University of Technology.
CRICOS Provider Code 00301J (WA), 02637B (NSW)
________________________________
From: Mary Haley <haley at ucar.edu<mailto:haley at ucar.edu>>
Sent: Tuesday, 30 August 2016 4:21:58 AM
To: Muhammad Omer Mughal
Cc: ncl-talk at ucar.edu<mailto:ncl-talk at ucar.edu>
Subject: Re: [ncl-talk] Adding multiple WRF output files to a script
It appears that you are using "addfiles" to open a bunch of WRF files that are from different domains. I assume these different domain files are of different spatial sizes, and hence addfiles shouldn't be used to open all of them together.
Addfiles is really mean to be used on similar files, for example, files with the same spatial dimensions, but across different times or ensembles.
It's not clear to me what you are trying to accomplish with your original script, because you have a couple of calculations, but nothing is really done with them.
In any case, I suggest that since you are calling different types of files, you will need to call "addfile" inside the loop for each file, and do the necessary calculation:
FILES = systemfunc (" ls -1 " + DATADir + "wrfout* ")
nfiles = dimsizes(FILES)
do nf = 0,nfiles-1 ; # of files loop
f = addfile(FILES(nf))+".nc","r")
times = wrf_user_list_times(f)
ntimes = dimsizes(ntimes)
u = wrf_user_getvar(f,"ua",-1) ; u averaged to mass points
v = wrf_user_getvar(f,"va",-1) ; v averaged to mass points
. . .
On Mon, Aug 29, 2016 at 6:35 AM, Muhammad Omer Mughal <m.mughal1 at postgrad.curtin.edu.au<mailto:m.mughal1 at postgrad.curtin.edu.au>> wrote:
Hi Mary
Thanks for the reply. Kindly note intially ntimes was not defined due to error in the line
ntimes = dimsizes(ntimes)
so I changed it to
ntimes = dimsizes(times)
After that I get the error the detail of which is listed in the attached file.
Muhammad Omer Mughal
MSc BSc Mechanical Engineering
PhD Research Scholar
Remote Sensing and Satellite Research Group
Department of Imaging and Applied Physics
Curtin University
Curtin University
Tel | +61 8 9266 7962
Fax | +61 8 9266 2377
Mobile | 0470 237 525
Email | m.mughal1 at postgrad.curtin.edu.au<mailto:m.lynch at curtin.edu.au>
Web | http://curtin.edu.au<http://curtin.edu.au/>
Curtin University is a trademark of Curtin University of Technology.
CRICOS Provider Code 00301J (WA), 02637B (NSW)
________________________________
From: Mary Haley <haley at ucar.edu<mailto:haley at ucar.edu>>
Sent: Saturday, 27 August 2016 3:22:53 AM
To: Muhammad Omer Mughal
Cc: ncl-talk at ucar.edu<mailto:ncl-talk at ucar.edu>
Subject: Re: [ncl-talk] Adding multiple WRF output files to a script
Dear Muhammad,
The script you provided wouldn't run as-is, because you are referencing "times", but never setting it.
Also, you are calling "addfiles" inside a do loop across the file names, but addfiles is meant to be used on an array of files.
In the future, it would help if you provide the exact error message, and the full script, so we can see what line number the script is failing on.
See the attached wrf_script_mod which is a modification of your file. It's likely not going to run, but hopefully it will help you get started in using addfiles correctly.
--Mary
On Fri, Aug 26, 2016 at 4:08 AM, Muhammad Omer Mughal <m.mughal1 at postgrad.curtin.edu.au<mailto:m.mughal1 at postgrad.curtin.edu.au>> wrote:
Hi
I am trying to add multiple wrfoutput files in the attached script but I get an error of mismatch dimensions. Can some one help please
Muhammad Omer Mughal
MSc BSc Mechanical Engineering
PhD Research Scholar
Remote Sensing and Satellite Research Group
Department of Imaging and Applied Physics
Curtin University
Curtin University
Tel | +61 8 9266 7962
Fax | +61 8 9266 2377
Mobile | 0470 237 525
Email | m.mughal1 at postgrad.curtin.edu.au<mailto:m.lynch at curtin.edu.au>
Web | http://curtin.edu.au<http://curtin.edu.au/>
Curtin University is a trademark of Curtin University of Technology.
CRICOS Provider Code 00301J (WA), 02637B (NSW)
_______________________________________________
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.ucar.edu/pipermail/ncl-talk/attachments/20160831/c567cd17/attachment.html
More information about the ncl-talk
mailing list