[ncl-talk] ESMF regrid for large array data

Anil Kumar - NOAA Affiliate anil.kumar at noaa.gov
Wed Apr 6 11:14:41 MDT 2022


Dennis,
I am still not able to mask out the WRF selected region from a large
covered region on unstructured data.
any advice or suggestion to try. Thanks Anil

*********************************
 src_file = "../fort.63.nc"
 sfile = addfile(src_file,"r")

;printVarSummary(sfile)
 lat1D = sfile->y
 lon1D = sfile->x
 var = sfile->zeta(89,:)
dst_file = "../geo_em.d01.nc"  //WRF grid
 dfile    = addfile(dst_file,"r")


    dst_lat              = dfile->XLAT_M(0,:,:)    ; Be sure to use
appropriate names
    dst_lon              = dfile->XLONG_M(0,:,:)   ; here.

   Opt at SrcGridLat       = lat1D
    Opt at SrcGridLon       = lon1D
    Opt at SrcRegional      = True            ;;--Change (maybe)
    Opt at SrcInputFileName = src_file          ; optional, but good idea

    Opt at SrcGridCornerLat = (/ min(dst_lat),  max(dst_lat)/)
;sfile->lat_vertices    ; corners are necessary
    Opt at SrcGridCornerLon =  (/ min(dst_lon),  max(dst_lon)/)
 ;sfile->lon_vertices    ; for "conserve" method




On Fri, Apr 1, 2022 at 11:04 AM Anil Kumar - NOAA Affiliate <
anil.kumar at noaa.gov> wrote:

> Hi Dennis,
> Thanks for getting back to me.
> Opt at SrcGridCornerLat and Opt at SrcGridCornerLon points provided through WRF
> max and min coordinates.
> I don't know Is this way we can do it.
> Src grid (Unstructured) is covering the Gulf and Atlantic and I want to
> mask out the region where my wrf grid is located. For example WRF grid is
> set up over the Houston Coastal region.
> Is this correct?
> Thanks
>
>  dst_file = "../geo_em.d01.nc"  //WRF grid
>  dfile    = addfile(dst_file,"r")
>
>
>     dst_lat              = dfile->XLAT_M(0,:,:)    ; Be sure to use
> appropriate names
>     dst_lon              = dfile->XLONG_M(0,:,:)   ; here.
>
>    Opt at SrcGridLat       = lat1D
>     Opt at SrcGridLon       = lon1D
>     Opt at SrcRegional      = True            ;;--Change (maybe)
>     Opt at SrcInputFileName = src_file          ; optional, but good idea
>
>     Opt at SrcGridCornerLat = (/ min(dst_lat),  max(dst_lat)/)
> ;sfile->lat_vertices    ; corners are necessary
>     Opt at SrcGridCornerLon =  (/ min(dst_lon),  max(dst_lon)/)
>  ;sfile->lon_vertices    ; for "conserve" method
>
>
> On Mon, Mar 28, 2022 at 9:22 PM Dennis Shea <shea at ucar.edu> wrote:
>
>> Given no responses, I speculate no user knows how to generate the edge
>> vertices.
>>
>> *https://www.ncl.ucar.edu/Applications/ESMF.shtml*
>> <https://www.ncl.ucar.edu/Applications/ESMF.shtml>
>>
>> Example 6 reads the vertices from a file.
>>
>> ESMF_regrid_6.ncl:    Opt at SrcGridCornerLat = sfile->lat_vertices    ;
>> corners are necessary
>> ESMF_regrid_6.ncl:    Opt at SrcGridCornerLon = sfile->lon_vertices    ;
>> for "conserve" method
>>
>> ===
>> The text above the examples contains:
>>
>> " You can (and are highly recommended to) provide your own grid corners
>> via the special Src/Dst/GridCornerLat/Lon resources. They must be provided
>> as an *N* x 4 array, where *N* represents the dimensionality of the
>> center lat/lon grid. For example, if the center lat/lon grid is dimensioned
>> 256 x 220, then the corner arrays must be 256 x 220 x 4. Sometimes the
>> corner grids are provided on the file along with the center grids, with
>> names like "lat_vertices"/"lon_vertices" or "lat_bounds"/"lon_bounds"."
>>
>> Good Luck
>>
>> On Wed, Mar 23, 2022 at 7:17 AM Anil Kumar - NOAA Affiliate via ncl-talk <
>> ncl-talk at mailman.ucar.edu> wrote:
>>
>>> Hi All,
>>> I am using ncl script for esmf regrid and converting unstructured onto
>>> WRF grid.
>>> There is nothing wrong with the script, it was working fine with the
>>> previous unstructured grid nodes ( node = 1813443).
>>> Now I am facing issues running these scripts for new unstructured data
>>> nodes ( node = 6057307). It is taking a long time and CPU time terminates
>>> the script and even job_script takes more than 8 hours and time limitation
>>> issues with job_scripts.
>>> Any suggestions to resolve this issue? Below is my script
>>>
>>> However, when I run script, it says
>>>  This can be VERY slow if you have a large array.
>>> (0)                           To speed up code, provide your own edge
>>> vertices via the
>>> (0)                           'ElementVertices' option.
>>> How to use ElementVertices?
>>>
>>> *******************************************************
>>>  src_file = "../fort.63.nc"
>>>  sfile = addfile(src_file,"r")
>>>  lat1D = sfile->y
>>>  lon1D = sfile->x
>>>  var = sfile->zeta(89,:)
>>>
>>>  dst_file = "../geo_em.d01.nc"
>>>  dfile    = addfile(dst_file,"r")
>>>   Opt                = True
>>>
>>> ;---"bilinear" is the default. "patch" and "conserve" are other options.
>>>     Opt at InterpMethod     = "neareststod"        ;;---Change (maybe)
>>>     Opt at WgtFileName      = "unstruct_to_rect_2906_D1.nc"
>>>     Opt at SrcGridLat       = lat1D
>>>    Opt at SrcGridLon       = lon1D
>>>     Opt at SrcRegional      = False            ;;--Change (maybe)
>>>     Opt at SrcInputFileName = src_file          ; optional, but good idea
>>>
>>>     Opt at SrcMask2D        = where(.not.ismissing(var),1,0) ; Necessary
>>> if has
>>>                                                           ; missing
>>> values.
>>>
>>>     dst_lat              = dfile->XLAT_M(0,:,:)    ; Be sure to use
>>> appropriate names
>>>     dst_lon              = dfile->XLONG_M(0,:,:)   ; here.
>>>     Opt at DstGridLon       = dst_lon
>>>     Opt at DstGridLat       = dst_lat
>>>     Opt at DstRegional      = True            ;;--Change (maybe)
>>>     Opt at ForceOverwrite   = True
>>>     Opt at Debug            = True
>>>     Opt at PrintTimings     = True
>>>     var_regrid = ESMF_regrid(var,Opt)     ; Do the regridding
>>>     printVarSummary(var_regrid)
>>>
>>> --
>>> Dr. Anil Kumar
>>> Environmental Modeling Center/NCEP/NWS/NOAA
>>> College Park, MD, USA
>>>
>>>
>>> _______________________________________________
>>> ncl-talk mailing list
>>> ncl-talk at mailman.ucar.edu
>>> List instructions, subscriber options, unsubscribe:
>>> https://mailman.ucar.edu/mailman/listinfo/ncl-talk
>>
>>
>
> --
> Dr. Anil Kumar
> Environmental Modeling Center/NCEP/NWS/NOAA
> College Park, MD, USA
>
>
>

-- 
Dr. Anil Kumar
Environmental Modeling Center/NCEP/NWS/NOAA
College Park, MD, USA
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.ucar.edu/pipermail/ncl-talk/attachments/20220406/c3b525a2/attachment.html>


More information about the ncl-talk mailing list