[ncl-talk] ESMF_regrid_gen_weights error
Vollaro, David
dvollaro at albany.edu
Tue Oct 6 12:45:56 MDT 2020
Hi guys,
Can you tell me what the max allowable size for the ESMF Regridding routines are? When I tried to run this on the entire gridded file(3500x7000) I got an error message.
19) NetCDF Error: .//htest2_2020-08-11_060832_wgt.nc : NetCDF: One or more variable sizes violate format constraints
(20) ERROR: Problem on processor 0 . Please see the PET*.RegridWeightGen.Log files for a traceback.
The PET0 Output is as follows:
20201006 181411.043 INFO PET0 Running with ESMF Version 7.0.2
20201006 181411.207 INFO PET0 Running with ESMF Version 7.0.2
20201006 181411.382 INFO PET0 Running with ESMF Version 7.0.2
20201006 184010.642 ERROR PET0 ESMF_IOScrip.F90:1357 ESMF_OutputScripWeightF
ile netCDF Status Return Error
20201006 184010.642 ERROR PET0 ESMF_RegridWeightGen.F90:1580 ESMF_RegridWeig
htGenFile Failure - Internal subroutine call returned Error
Thanks
Dave
________________________________
From: Dennis Shea <shea at ucar.edu>
Sent: Tuesday, October 6, 2020 9:39 AM
To: Rashed Mahmood <rashidcomsis at gmail.com>
Cc: Vollaro, David <dvollaro at albany.edu>; ncl-talk at ucar.edu <ncl-talk at ucar.edu>
Subject: Re: [ncl-talk] ESMF_regrid_gen_weights error
THX.
I have the files and will look today or tomorrow.
Stay Healthy
On Tue, Oct 6, 2020 at 2:04 AM Rashed Mahmood via ncl-talk <ncl-talk at mailman.ucar.edu<mailto:ncl-talk at mailman.ucar.edu>> wrote:
Hi David,
I guess no one answered this question, if so, I would suggest to upgrade to NCL to 6.6.2. I think this type of issue may have been fixed in the latest NCL, just a guess though!
Below is some quick search on web but I do not know if these issues are same or relevant: https://github.com/uturuncoglu/RegESM/issues/15
Cheers,
Rashed
On Sun, Oct 4, 2020 at 6:47 PM Vollaro, David via ncl-talk <ncl-talk at mailman.ucar.edu<mailto:ncl-talk at mailman.ucar.edu>> wrote:
Hi,
I am trying to read in a grib2 datafile and convert it to a KML file. I am following the rastertimeseries2kml
script from the NCL_GETools API page (https://www.ncl.ucar.edu/Document/Manuals/GETools/NCL_GETools.html)
Here is the Logfile PET0.RegridWeightGen.Log contents:
20201004 163128.461 INFO PET0 Running with ESMF Version 7.0.2
20201004 163128.505 INFO PET0 Running with ESMF Version 7.0.2
20201004 163128.559 INFO PET0 Running with ESMF Version 7.0.2
20201004 163130.167 ERROR PET0 /d1/haley/src/esmf-7.0.2/src/Infrastructure/IO/interface/ESMC
_IOScrip2ESMF.C:48 handle_error Internal error: Bad condition - line 240: NetCDF error: No such file o
r directory
20201004 163130.167 ERROR PET0 ESMF_IOScrip.F90:764 ESMF_OutputScripWeightFile Invalid objec
t - Internal subroutine call returned Error
20201004 163130.167 ERROR PET0 ESMF_RegridWeightGen.F90:1580 ESMF_RegridWeightGenFile Invali
d object - Internal subroutine call returned Error
It generates tmpDstGrid.nc, and tmpSrcGrid.nc. I believe the errors arise when trying to generate a weight file.
Here is a snippet of my code. The data is on a 3500x7000 grid at 0.1deg.
La1 : 54.995
Lo1 : 230.005
La2 : 20.005
Lo2 : 299.995
Di : 0.009999999
Dj : 0.01
Lat is in degrees_north Lon in degrees_east. I am running NCL 6.5.0
Below is a snippet of my code. Thanks
Dave
============================
load "$NCARG_ROOT/lib/ncarg/nclscripts/contrib/NCL_GETools.ncl"
begin
;***********************************************
; get variable names from grib file
;***********************************************
ifile = "/jm13/djv/howie/MRMS_MESH_Max_1440min_00.50_20200811-060832"
ifile_subs = str_split(ifile,"_")
nch=strlen(ifile)
hhmmss = str_get_cols(ifile,nch-6,nch)
time = str_get_cols(hhmmss,0,1)+":"+str_get_cols(hhmmss,2,3)+":"+str_get_cols(hhmmss,4,5)
date = str_get_cols(ifile,nch-15,nch-12)+"-"+str_get_cols(ifile,nch-11,nch-10)+"-"+str_get_cols(ifile,nch-9,nch-8)
TimeTag=date+"T"+time
kml_out = "/jm13/djv/Hailmax_MRMS_"+date+"_"+hhmmss
grib_in = addfile(ifile+".grib2","r")
names = getfilevarnames(grib_in); extract all variable names
print(names+" "+TimeTag)
;***********************************************
; loop through variables
;***********************************************
do i = 0,dimsizes(names)-1
print(i+" vv "+names(i))
if (names(i).eq."lat_0") then
Lat = grib_in->$names(i)$
print(names(i)+" "+dimsizes(Lat))
else if (names(i).eq."lon_0") then
Lon = grib_in->$names(i)$
print(names(i)+" "+dimsizes(Lon))
else
tmp = grib_in->$names(i)$
print(names(i)+" "+dimsizes(tmp))
dims=dimsizes(tmp)
print("LL "+dims(0)+" "+dims(1))
end if
end if
end do
; Create 3D grid transposing from LAT/LON to Lon/Lat
HailSize=new((/1,dims(1),dims(0)/),"float")
HailSize=0.
HailSize(0,:,:) = transpose(tmp)
; Create 5 patches of datavalues
iloc=new((/5/),"integer")
jloc=new((/5/),"integer")
ii=0
do i = 45,25,5
iloc(ii)=ind_nearest_coord(i,Lat,0)
print(i+" "+iloc(ii)+" "+Lat(iloc(ii)))
ii=ii+1
end do
ii=0
do i = 240,280,10
jloc(ii)=ind_nearest_coord(i,Lon,0)
print(i+" "+jloc(ii)+" "+Lon(jloc(ii)))
ii=ii+1
end do
do i=0,2
print(iloc(i)+" "+jloc(i))
HailSize(0,jloc(i)-5:jloc(i)+5,iloc(i)-5:iloc(i)+5)=3.5
HailSize(0,jloc(i)-15:jloc(i)+15,iloc(i)-15:iloc(i)+15)=2.5
HailSize(0,jloc(i)-25:jloc(i)+25,iloc(i)-25:iloc(i)+25)=1.0
end do
do i=3,4
HailSize(0,jloc(i)-15:jloc(i)+15,iloc(i)-15:iloc(i)+15)=1.5
HailSize(0,jloc(i)-25:jloc(i)+25,iloc(i)-25:iloc(i)+25)=0.5
end do
print(Lat(iloc))
print(Lon(jloc))
; Generate 2D latlon grids from 1D
Lat2D = new((/dims(1),dims(0)/),"float")
Lon2D = new((/dims(1),dims(0)/),"float")
do i=0,dims(0)-1
Lat2D(:,i)=Lat(i)
end do
do j=0,dims(1)-1
Lon2D(j,:)=Lon(j)
end do
;Generate contour increments
cint=fspan(0,5,11)
print(cint)
; rastertimeseries2kml template
parm=True
parm at Verbose=True
parm at ColorMap="WhiteBlueGreenYellowRed"
parm at DataSetTitle="MMRS Hail Product"
parm at MinData=0.0
parm at MaxData=5.0
parm at MinDataOpacity=0
parm at MaxDataOpacity=60
parm at IncludeGrid=True
parm at LineWidth=3
parm at Name="MMRS HailSize Algorithm for "+TimeTag
; The following command will create a KML file, called olr12.kml,
; in the current directory, since the first argument, i.e.
; the PATH, is set to "."
; File is very large extract out subset for debugging
i1=1400
i2=1600
j1=2900
j2=3100
HailSize1=new((/1,j2-j1+1,i2-i1+1/),"float")
Lat2D1 = new((/j2-j1+1,i2-i1+1/),"float")
Lon2D1 = new((/j2-j1+1,i2-i1+1/),"float")
HailSize1=0.
HailSize1(0,:,:)=HailSize(0,j1:j2,i1:i2)
Lat2D1 = Lat2D(j1:j2,i1:i2)
Lon2D1 = Lon2D(j1:j2,i1:i2)
;HailSize1 at lat2d = Lat2D1
RasterTimeSeries2KML(kml_out,HailSize1,Lon2D1,Lat2D1,TimeTag,parm)
end
=================================================================
_______________________________________________
ncl-talk mailing list
ncl-talk at mailman.ucar.edu<mailto:ncl-talk at mailman.ucar.edu>
List instructions, subscriber options, unsubscribe:
https://mailman.ucar.edu/mailman/listinfo/ncl-talk
_______________________________________________
ncl-talk mailing list
ncl-talk at mailman.ucar.edu<mailto:ncl-talk at mailman.ucar.edu>
List instructions, subscriber options, unsubscribe:
https://mailman.ucar.edu/mailman/listinfo/ncl-talk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.ucar.edu/pipermail/ncl-talk/attachments/20201006/a232dd27/attachment.html>
More information about the ncl-talk
mailing list