Implementation of Grid Nesting: a first look with grid mosaics John Warner, USGS Hernan Arango, Rutgers
Feb 04, 2016
Implementation of Grid Nesting: a first look with grid mosaics
John Warner, USGSHernan Arango, Rutgers
Motivation slide
Existing modeling application of Hudson River.
Need to extend southern boundary into region of strong variations.
Warner, J. C., W. R. Geyer, and J. A. Lerczak (2005), Numerical modeling of an estuary: A comprehensive skill assessment, J. Geophys. Res., 110,
C05001, doi:10.1029/2004JC002691.
• Existing methods of grid manipulation• Grid nesting types• Other procedures of nesting• Development of our proposed nesting approach• Simple Application (dogbone)• Grid generation tool• Realistic Application (Hudson)
Outline
Existing methods of grid manipulation
For rectilinear grids, use manipulation techniques of:
- curvature- masking- stretching
to allow increased resolution in regions of interest.
Land/Sea masking
Grid curvature
Grid stretching
Some drawbacks of these techniques
Grid curvature in different directions
Stretching extends along entire grid
a lot of masked regions
Rectilinear grid is not ‘ideal’ to provide strong resolution along coastlines or in regions of strongly varying topography. Need methods to allow:- increased resolution in localized regions of interest- limited masking- localized curvature
Some drawbacks of these techniques
Grid curvature in different directions
Stretching extends along entire grid
a lot of masked regions
Rectilinear grid is not ‘ideal’ to provide strong resolution along coastlines or in regions of strongly varying topography. Need methods to allow:- increased resolution in localized regions of interest- limited masking- localized curvature
Need better methods: Grid Nesting (3 Types)
1) Mosaic (East-West Contact)
Grid 1 Grid 2M
1 L1
M
1
L1
1 L
M
M
1 L1
1
Grid 2Grid 1
2) Composed
1 L
M
M
1 L1
1
3) Refinement
Grid 2
Grid 1
grids aligned along one side
1 grid overlaps more than 1 boundary
localized region of increased resolution
Some issues to consider for nesting:
Need to exchange information between grids that are connected.
- Model fields are at different grid locations (Arakawa C Grid).- What needs to be exchanged ?- When do we exchange it ?- Numerical stencil of advection and mixing formulations require spatial footprint. At the grid boundaries, there are not enough points to fulfill that footprint.
Grid 1 Grid 2
What happens at the boundaries?
0 1 1 2 2 3 3
Istr = 1
Istr = 1, I_RANGE = 1 ..
FX(1,j)
FX(0,j)=FX(1,j)
Advection schemes require data fields beyond edge of the grid.
0 1 1 2 2 3 3 -2 -2 -1 -1
Periodic
Non-Periodic
For Periodic we add additional ghost points.
Nesting strategies by others
Some models exchange fluxes at boundaries
+ Use only local information.- Fluxes may be different from each grid, so need to average
them.- This will lead to different results depending on where the grids
are connected.
How do we propose to do nesting?
- For now focus on mosaic and composite grids.- For now, use coincident points (have formulation for spatial interpolation).- 2 way nested system (dynamical interaction).- Time step adjacent grids using information of the data fields from the other mesh (Ookochi, 1972).- This is similar to Periodic formulation already in ROMS- May require a dynamical interface when 2 grids are of different resolution
M
1 L1
M
1
L1
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v
uu u u u u u u u u u u
uu u u u u u u u u u u
uu u u u u u u u u u u
uu u u u u u u u u u u
uu u u u u u u u u u u
uu u u u u u u u u u u
uu u u u u u u u u u u
uu u u u u u u u u u u
L+1 L+2
Mosaic Grids: East-West Contact
Grid 1
v v v v v v v v v v v v v
uu u u u u u u u u u u
v v v v v v v v v v v v
L-1
M
1L
1
M
1
L10-1-2
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
uu u u u u u u u u u u u
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v v
v v v v v v v v v v v v
Mosaic Grids: East-West Contact
Grid 2
v v v v v v v v v v v v
v
v
v
v
v
v
v
v
Composite grid - ROMS time stepping
main3d time loop steps for each grid sequentially, then exchange
information.
time step loop
synchronization point
Nesting.Fcall allocate_nesting
call interp_nesting
uses pointers so there is no copy of data
Pros Cons of our approachPros+ For concurrent grid spacing: results will be identical no matter how it is tiled (even with large
stencil advection schemes)+ Allows natural extension of advection schemes.+ No need to avg fluxes+ Want to only acquire primary variables from other grid. For nesting halo region currently acquire : ubar, vbar, u, v, zeta, rzeta,
Zt_avg1, DU_avg1, DV_avg1,bu/vstr, tke, gls, Akv, Akt, Huon Hvom (step3d_uv)
+ To ensure mass conservation, want to compute all secondary variables on each local grid. For nesting halo region currently compute : omega, rhoA, rhoS, rho, bvf,
Hz, z_r, z_w, Huon Hvom (set_massflux), metrics+ Greatly reduces the masked areas.
Cons- Grid is larger (depends on how you develop the grids)- Grid Preprocessing- BC's a little trickier - need to move them out of cppdefs.h
Idealized Test Case : Dogbone
Case 1: whole grid
Case 2: two separate grids
Grid 1 Grid 2
close up of connection region
-3 -2 -2 -1 -1 0 0 1 1 2 2 3 3
Lm-3 Lm-2 Lm-1 Lm L L+1 L+2
Dogbone results
Case 1: whole grid
Case 2: two separate grids
animation of free surface
Gridgen:needed for more complicated setups
1) user provides bounding polygon with identifiers for L/R turns.2) then either - nx, ny or - node coordinates3) final grids are cut out
Composite Hudson grid
Example: Hudson River Estuary + NY Harbor
free surface bottom salinity
Summary
• Developing a method for nesting the includes capabilities for mosaic grids, composite grids, and grid refinement.
• Time integration of grid points near the mesh interface is performed using data from fields of adjacent mesh.
• Simple test case (dogbone) demonstrates that the method reproduces identical results from a mosaic grid as compared to a continuous grid.
• Successful application of composite grid to a realistic estuarine setting.
• Method can be used to connect unlimited grid segments to enhance grid resolution of ROMS in regions of strongly varying coastlines.