-
Notifications
You must be signed in to change notification settings - Fork 15
/
nest.tex
575 lines (521 loc) · 28.1 KB
/
nest.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
\chapter{Nesting}
\label{nesting_chap}
ARW provides the capability to focus the area of a simulation
via nesting options.
ARW supports horizontal nesting that allows resolution to be
enhanced over a region of interest by introducing an additional grid (or
grids) into the simulation. This subdomain with increased horizontal resolution is completely
contained within the parent domain (this is also commonly referred to as the
coarse domain and abbreviated CG).
The subdomain is commonly referred to as the child domain or the fine grid (FG).
Vertical refinement options are
available, where a child domain may have a different vertical structure than
the parent domain. Parent and child domains always extend from the lower model surface,
through to the upper model lid. In this way, the vertical capability is more accurately referred
to as a refinement, as opposed to nesting. In practice, both of these terms will be used
interchangeably when referring to a child domain that has enhanced vertical resolution,
compared to the parent domain.
As with all domains within ARW, the horizontally or vertically nested grids (child domains,
fine-grid domains) are rectangular
and are aligned with the parent (coarser) grid within which they are
nested.
The horizontal nested grids allow any integer spatial
($\Delta x_{coarse}/\Delta x_{fine}$)
and temporal refinements of the
parent grid (the spatial and temporal refinements are usually,
but not necessarily the same).
The vertical refinement capability offers two options: either an integer factor of the
number of levels in the parent to define the child domain's vertical structure (for example,
a doubling or tripling of the vertical resolution), or a completely independent set of
vertical levels prescribed for the parent and the child domain.
The horizontal nesting capability is, in many ways, similar to
implementations provided in other mesoscale and cloud-scale models (e.g. MM5,
ARPS, COAMPS). Vertical refinement options are described in
\citet{mahalovmoustaoui09} and \citet{daniels16}.
In this chapter we
describe the various horizontal and vertical nesting options available in ARW and the
exchange of data between the grids.
\section {Horizontal Nesting Options}
%
% 1-way vs 2-way
%
\begin{figure}
\centering
\includegraphics *[width=4.5in]{figures/12way_v4.pdf}
\caption{\label{figure:12way} 1-way (parent provides boundary data to child) and
2-way (parent provides boundary data to child, then child feeds information back to
the parent) nesting options in ARW.}
\end{figure}
\subsubsection{1-Way and 2-Way Grid Nesting}
Nested grid simulations can be produced using either 1-way
nesting or 2-way nesting as outlined in Fig. \ref{figure:12way}. The
1-way and 2-way nesting options refer to the way in which a coarse grid and
fine grid interact. In both 1-way and 2-way simulation modes, the
fine-grid boundary conditions (i.e., the lateral boundaries) are interpolated
from the coarse-grid forecast domain. In a 1-way nest, the only
information exchange is from the coarse grid to the fine grid;
hence, the name {\em 1-way nesting}. In 2-way nest integration, the
fine-grid solution replaces the coarse-grid solution for coarse
grid points that lie inside the fine grid. This information exchange
between the grids is now in both directions (coarse-to-fine for the
fine-grid lateral boundary computation, and
fine-to-coarse during the feedback at each coarse-grid time step);
hence, the name {\em 2-way nesting}.
The 1-way nest set-up may be run in one of two different methods. One
option is to produce the nested simulation as two separate ARW simulations,
as described in the leftmost box in Fig. \ref{figure:12way}. In this mode,
the coarse grid is integrated first and once the coarse-grid time step is completed,
output from the coarse-grid
integration is processed to provide boundary conditions for
the nested run (usually at a much lower temporal frequency than the
coarse-grid time step). This is followed by the complete time
integration of the fine (nested) grid. Hence, this 1-way option is equivalent
to running two separate simulations with a processing step in between. Also, with
separate grid simulations, an intermediate re-analysis (such as
via WRFDA, see Section \ref{var_chap}) may be included.
The second 1-way option (lockstep, with no feedback), depicted in the
middle box in Fig. \ref{figure:12way}, is run as a traditional
simulation with two (or more) grids integrating concurrently, except with
the feedback runtime option turned off. This option provides lateral boundary
conditions to the fine grid at each coarse-grid time step, which
is an advantage of the concurrent 1-way method (no feedback).
\subsubsection{Fine Grid Initialization Options}
ARW supports several strategies to horizontally refine a coarse-grid
simulation with the introduction of a nested grid. When using concurrent 1-way and
2-way nesting, several options for initializing the fine grid
are provided.
\begin{itemize}\setlength{\parskip}{-4pt}
\item All fine-grid variables (both meteorological and
terrestrial) are interpolated from the coarse grid, which is useful
when a fine grid starts later in the coarse-grid forecast.
\item All fine-grid variables are input from an external file
that has high-resolution information for both the meteorological
and terrestrial fields. This is a standard set-up when the fine-grid
terrestrial fields are expected to impact the forecast.
\item The fine grid may have some of the variables initialized with a
high-resolution external data set, while other variables are
interpolated from the coarse grid (for example, this would permit
the improved analysis from the WRFDA initialization of the
coarse grid's meteorological fields to remain consistent with the fine grid).
This option allows the fine grid to start later in the coarse grid's
forecast, but with the advantage of higher-resolution static fields.
\item For a moving nest, external orography and landuse files may be used
to update the fine-grid domain as it moves over land.
\end{itemize}
\noindent These fine-grid initialization settings are user-specified at
run-time, and ARW allows nested grids to instantiate and cease during any
time that the fine grid's parent is still integrating. While cost savings are
evident when starting the fine-grid domain at a later time, that advantage
must be weighed against the impact of relatively coarse and inconsistent
fields for both masked and meteorological variables on the fine grid.
%
% nest grids, some OK, some illegal
%
\begin{figure}
\centering
\includegraphics *[width=6.0in]{figures/nest_domains.pdf}
\caption{\label{figure:nest_domains}Various nest configurations for multiple grids. (a)
Telescoping nests. (b) Nests at the same level with respect to a parent grid.
(c) Overlapping grids: not allowed with feedback activated.
(d) Inner-most grid has more than one parent grid: not allowed}
\end{figure}
\subsubsection{Possible Grid Configurations}
A simulation involves one outer grid and may contain multiple
inner nested grids. In ARW, each nested region is entirely
contained within
a single coarser grid, referred to as the {\em parent}
grid. The finer nested grids are referred to as {\em child} grids.
Using this terminology, child domains may also be parent domains when multiple levels
of nesting are used. The fine grids may be telescoped to any depth (i.e.,
a
parent grid may contain one or more child grids, each of which in turn
may successively contain one or more child grids; Fig.
\ref{figure:nest_domains}a), and several fine grids may share the
same parent at the same level of nesting (Fig.
\ref{figure:nest_domains}b). Currently, the software limit for subdomains is
ten levels of nesting, but the practical limit is much smaller.
Any valid fine grid may either be a static domain or a moving nest
(with either prescribed incremental shifts or with automatic moves
via a vortex-following algorithm, such as tracking the minimum of the 500 hPa height).
ARW does not permit overlapping
grids, where a coarse grid point is contained within more than a
single child grid (i.e., both of which are at the same nest level with respect
to the parent; Fig. \ref{figure:nest_domains}c). In addition, no grid can have
more than a single parent (Fig. \ref{figure:nest_domains}d). For global domains, a
fine grid domain cannot cross the periodic lateral boundary of the parent domain
(for example, a global domain may not have a nested tropical channel at the
equator that uses periodic east-west boundaries in the nest.)
For both 1-way and 2-way nested grid simulations, the ratio of the
parent horizontal grid distance to the child horizontal grid distance
(the spatial refinement ratio) must be an integer. For 2-way and concurrent 1-way
nesting, this is also true for
the time steps (the temporal refinement ratio), though the model does allow
the time step refinement ratio to differ from the spatial refinement
ratio. Also, nested grids on the same level (i.e., children who have the
same parent) may have different spatial and temporal refinement ratios. For example,
in Fig. \ref{figure:nest_domains}b, the horizontal grid resolution for
domain 1 may be 90 km, while
domain 2 may be 45 km, and domain 3 may be 30 km.
\subsubsection{Moving Nests}
The moving nest capabilities in ARW are simply extensions to the
suite of nesting options. All descriptions covering the
specifics for fine-grid
domains (initialization, feedback, configurations, staggering,
lateral boundaries, etc.) also apply to moving nests. In
general, all nests
in an ARW forecast are eligible to be moving nests. ARW
provides two methods to allow nests to move during model
integration: specified and automatic.
For both types of moving nests,
multiple levels of domains may move.
For a specified move, the timing of a nest move and the extent
of each lateral move is defined entirely by the user through
the namelist. This manual process is tedious and cumbersome, and is
rarely used in practice. This capability was required to eventually
develop a fully functioning moving nest capability that automatically
tracks a cyclone.
For the
automatically moving nest, the fine grid is initialized to cover
a well-defined vortex, and the nest moves to maintain this vortex
in the center of the fine grid. The fine grid follows a height
minimum, and is constrained so as to not too closely approach
the parent boundary. This option provides a substantial cost savings
when the area of horizontal refinement is reduced in
size to cover only the physical extent of a cyclone, and not the
much larger domain necessary to contain a moving system.
The typical instance for utilizing a moving nest is during tropical
cyclone tracking via the automatic vortex-following technique.
With this automated cyclone tracking, the inner-most domain
is responsible for steering the movement of the coarser, moving grids.
After a nested domain has moved a parent grid-cell distance,
the majority of the fine-grid data in the domain is still valid. Data
that are not along the outer row or column of the nested
domain is shifted to the new location in that domain; not interpolated
from the parent domain.
Once a domain moves, data in the outer
row or column fall into one of two categories: discarded data on the
trailing edge, or horizontally interpolated data on the
leading edge in the direction of the nest move.
Only elevation of the topography and landuse categories are eligible
to be used as input from high-resolution files, instead of being interpolated
from the parent domain.
\section{Staggering and Feedback}
ARW uses an Arakawa-C grid staggering. As shown in Fig.
\ref{figure:cg_fg}, the $u$ and $v$ components
of horizontal velocity are normal to the respective faces of the
grid cell, and the mass/thermodynamic/scalar/chemistry variables are located
in the center of the cell.
%
% Figure colorful single-grid u,v,t stagger
%
\begin{figure}
\centering
\includegraphics[width=4in]{figures/cg_fg.pdf}
\caption{\label{figure:cg_fg}
Arakawa-C grid staggering for a portion of a parent domain,
with an imbedded nest domain using a 3:1 grid size ratio. Solid lines
denote coarse grid cell boundaries, and dashed lines are the
boundaries for each fine grid cell. The horizontal components of
velocity (``U'' and ``V'') are defined along the normal cell face, and
the thermodynamic variables (``$\theta$'') are defined at the center of
the grid cell (each square). The bold typeface variables along the
interface, between the coarse and the fine grid, define the locations
where the specified lateral boundaries for the nest are in
effect. } \end{figure}
The variable staggering has an additional column
of $u$ in the x-direction and an additional row of $v$ in the y-direction
because the normal velocity points define the grid boundaries.
The horizontal momentum components reflect an average across each
cell-face, while each mass/thermodynamic/scalar/chemistry variable
is the representative mean value throughout the cell.
Feedback is handled to preserve these mean values: the mass/thermodynamic/scalar/chemistry
fields are fed back with an average from within the entire
coarse grid point (Fig. \ref{figure:cg_fg}), and the horizontal momentum variables are
averaged along their respective normal coarse grid cell faces.
Horizontal interpolation from the coarse grid at each time step produces the lateral boundary
conditions for the fine-grid domain, and horizontal interpolation may entirely
instantiate several fields on the fine-grid domain.
Not all horizontal interpolation techniques used within the model necesssarily conserve mass.
The horizontal interpolation (to instantiate a grid and to provide
time-dependent lateral boundaries) does not conserve mass. The
feedback mechanism, for most of the unmasked fields, uses cell
averages (for mass/thermodynamic/scalar/chemistry quantities) and cell-face
averages for the horizontal momentum fields.
Staggering defines the way that the fine grid is situated
on top of the coarse grid. For all odd grid-distance ratios
(for example, a 3:1 ratio could have a parent with a 90 km grid distance
and a child with a 30 km grid distance)
there is a coincident
point for each variable: a location that has the coarse grid
and the fine grid at the same physical point. The location of
this point depends on the variable,
whether the variable is located at the cell center (mass variable) or
along the cell face (momentum variable).
In each of the
coarse-grid cells with an odd ratio, the middle fine-grid cell
is the coincident point with the coarse grid point for all of the
mass-staggered fields (Fig. \ref{figure:cg_fg}).
For horizontal momentum variables,
the normal velocity has coincident points along the grid boundaries for odd ratios.
Using the 3:1 grid-distance ratio
from the example shown in Fig. \ref{figure:cg_fg},
during feedback, the mean of the nine mass/thermodynamic/scalar/chemistry fine-grid
points is fed back to the coarse grid.
These fields include most 3-dimensional and 2-dimensional arrays.
For the horizontal momentum fields averaged back to the coarse grid in the
feedback, the mean of three (for example, due to the 3:1 grid-distance ratio
in the example shown in Fig. \ref{figure:cg_fg}) fine grid
points is fed back to the coarse grid from along the coincident cell face.
When using odd ratios, fields that are masked due
to the land/sea category are fed back directly from the coincident points.
Masked fields include soil temperature and sea ice. It is not reasonable
to average neighboring locations of soil temperature on the fine grid
if the coarse grid point to which values are being fed back is a water value. Similarly, averaging
several sea ice values on the fine grid does not make sense if some of the neighboring
points included in the mean are fine grid land points.
Only masked fields use the feedback method in which a single
point (such as for land use category) or a mean of valid points
(such as for soil temperature) from the fine grid is assigned to the coarse grid.
One difference between odd and even grid-distance ratios
is in the feedback from the fine grid to the coarse grid. No
coincident points exist for the single point feedback mechanisms
for even grid distance ratios
(such as is used for the land/sea masked 2D fields).
For a 2:1 even grid distance ratio, Figure
\ref{figure:cg_fg_x2} shows that each coarse
grid point has four fine grid cells that are equally close,
and therefore four equally-eligible grid points for use as the
single fine-grid point that feeds back to the coarse grid. The
single-point feedback is arbitrarily chosen as the south-west
corner of the four neighboring points.
This arbitrary assignment to masked fields implies that even
grid distance ratios are better suited for idealized simulations
where masked fields are less important.
%
% Figure colorful 2 grid, even ratio
%
\begin{figure}
\centering
\includegraphics[width=4in]{figures/cg_fg_x2.pdf}
\caption{\label{figure:cg_fg_x2}
Similar to Fig. \ref{figure:cg_fg}, but with a 2:1 grid-distance ratio.
}
\end{figure}
\section{Nested Lateral Boundary Conditions}
\label{nest-lbc}
For the fine grid with 2-way nesting or 1-way nesting
(using a concurrent ARW simulation, see
Fig. \ref{figure:12way}),
boundary conditions are specified by the parent grid
at every coarse-grid time step. The nest lateral boundary condition behaves similarly to the
specified boundary condition for real-data cases (see Section \ref{lbc_spec}), but
the relaxation zone is not active. Prognostic variables are entirely specified in the outer row and column
of the fine grid through spatial and temporal interpolation from the coarse grid (the coarse grid is
stepped forward in time, prior to advancement of any child grid of that parent).
\section{Steps to Generate a Nest Grid}
Only the concurrent 1-way nest option or the 2-way nest
option is considered in this section. The 1-way nest option (using two
consecutive ARW simulations, see Fig. \ref{figure:12way})
is functionally similar to two separate,
single-grid simulations and does not fit the description in this section.
For a multiple-grid simulation within a single model run, there are some
additional infrastructure steps that are required (briefly described in
Fig. \ref{nest_domain_integration_figure}). While the following text
details a simulation with a single coarse grid and a single fine grid,
this implies no lack of generality when handling multiple grid levels or
multiple grids on the same level.
\noindent
\begin{figure}[h!] %[nest]
\setlength{\fboxrule}{.75pt}
\framebox[\columnwidth]{
\parbox{6.5truein}{
\vskip 5truept
\noindent
{\bf Integrate parent grid one time step} \medskip \hfill \break
%
\hphantom{Begin} {\bf If nest grid start time} \smallskip \hfill \break
\hphantom{BeginBegin}
(1) Horizontally interpolate parent to child grid \hfill \break
\hphantom{BeginBegin}
(2) Optionally input high-resolution child data \hfill \break
\hphantom{BeginBegin}
(3) Compute child reference state \hfill \break
\hphantom{BeginBegin}
(4) Feedback Child Initial Data to Parent Grid \hfill \break
\hphantom{BeginBegin}
(5) Recompute parent reference state \hfill \break
\hphantom{Begin} {\bf End If nest grid start time} \medskip \hfill \break
%
\hphantom{Begin} {\bf Solve time step for parent grid (see Fig. \ref{time_integration_figure})} \medskip \hfill \break
%
\hphantom{Begin} {\bf If nest grid move time and FG away from CG boundary} \smallskip \hfill \break
\hphantom{BeginBegin}
(1) Move nest grid (vortex following or prescribed)\hfill \break
\hphantom{BeginBegin}
(2) Horizontally translate data due to grid shift \hfill \break
\hphantom{BeginBegin}
(3) Horizontally interpolate parent to child grid (along new boundary) \hfill \break
\hphantom{BeginBegin}
(4) Optionally input high-resolution child topo-landuse data \hfill \break
\hphantom{BeginBegin}
(5) Compute child reference state \hfill \break
\hphantom{BeginBegin}
(6) Feedback child initial data to parent grid \hfill \break
\hphantom{BeginBegin}
(7) Recompute parent reference state \hfill \break
\hphantom{Begin} {\bf End If nest grid move time} \medskip \hfill \break
%
\hphantom{Begin} {\bf While existing nest grids to integrate} \smallskip \hfill \break
\hphantom{BeginBegin}
(1) Lateral forcing from parent grid to child \hfill \break
\hphantom{BeginBegin}
(2) Integrate child grid to current time of parent grid\hfill \break
\hphantom{BeginBegin}
(3) Feedback child grid information to parent grid \hfill \break
\hphantom{Begin} {\bf End While existing nest grids to integrate} \medskip \hfill \break
%
{\bf End Grid Integrate}
\vskip 5truept
}
}
\caption{Nest grid integration sequence.}
\label{nest_domain_integration_figure}
\end{figure}
\subsubsection{Nest Instantiation}
The fine grid is instantiated as a child
of a parent grid at the requested start time.
This initialization is within the integration step for the parent
grid, meaning that no child grid integration can begin if the parent is not active.
To fill in the correct meteorological
fields, a default initialization routine is called to horizontally interpolate
coarse-grid data to the fine-grid locations using a monotone
interpolation scheme \citep[described in][]{smolargrell92} for most fields
(i.e., the same scheme employed for generating the fine grid lateral
boundary conditions)
and a simple linear interpolation, or averaging scheme, for masked or
categorical fields.
For fields that are masked with the land/sea background, such
as land-only fields (e.g., snow), or water-only fields (e.g., sea ice), the
interpolator needs to know what field defines the template for masking
(such as for the land use category). Part of the automatic code generation handles
calling each field with its associated interpolator.
\subsubsection{Fine Grid Input}
After horizontal interpolation is completed, a few orographic-based variables
are saved so that they may be used to blend the lateral boundaries
along the coarse-grid/fine-grid interface.
The terrain elevation
$\overline {\mu}_d$
and reference geopotential $\overline{\phi}$ are stored for later use.
The fields selected as input from the fine grid input file (for
concurrent 1-way and 2-way forecast methods shown in Fig. \ref{figure:12way}) are ingested, and
they overwrite the arrays that were horizontally interpolated from the
coarse grid. No quality control for data consistency is performed
for the fine grid input. All such masked checks are
completed by the ARW real-data pre-processor {\it real}.
\subsubsection{Interface Blended Orography}
To reduce lateral boundary noise entering the fine grid, the fine-grid topography has two
zones of smoothing, as seen in Fig. \ref{figure:12way}.
The first zone is along the outer edge of the fine domain and
extends into the nest, with a defined width identical to the number of coarse grid points
in the width of the lateral boundary file. In this first zone, the topography is horizontally
interpolated from the coarse grid. The second zone extends inward from the first zone, with a
user-defined width. Topography is linearly weighted between the interpolated coarse-grid
topography and the fine-grid topography, and it ramps from 100\% coarse-grid
topography (at the interface between the
first and second zones) to 100\%
fine-grid topography interior to the second zone.
\noindent
Assuming a width of 5 fine-grid cells, the weighting scheme in the second zone is given as:
\begin{itemize}\setlength{\parskip}{-4pt}
\item row/column 1: 100\% interpolated coarse grid, 0\% fine grid,
\item row/column 2: 75\% interpolated coarse grid, 25\% fine grid,
\item row/column 3: 50\% interpolated coarse grid, 50\% fine grid,
\item row/column 4: 25\% interpolated coarse grid, 75\% fine grid, and
\item row/column 5: 0\% interpolated coarse grid, 100\% fine grid,
\end{itemize}
\noindent
where row=1 is the first row in the second zone, and the row or column
nearest the outer edge takes precedence in ambiguous corner zones.
The reference variables computed from the topography,
$\overline{\mu}_d$ and $\overline{\phi}$, are similarly-treated.
Blended arrays are required to compute the reference state for the
fine grid. The blending along the inner rows and columns ramps the
coarse-grid reference state to the
fine-grid reference state for a smooth transition between grids.
%
% zones of topo smoothing
%
\begin{figure}
\centering
\includegraphics[width=4.5in]{figures/zone12.pdf}
\caption{\label{figure:zone12}
Zones of topographic blending
for a fine grid. In the fine grid, the first zone is
entirely interpolated from the coarse-grid topography. In
the second zone, the topography is linearly weighted between
the coarse grid and the fine grid.}
\end{figure}
\subsubsection{Feedback}
So that the coarse grid and fine grid are consistent at coincident points, the
fine grid values are fed back to the coarse grid.
There are two available
options for feedback: either the mean of all fine-grid cells contained
within each coarse-grid cell (or cell faces in the case of the
horizontal momentum fields) is fed back, or a single-point feedback
is selected for masked or categorical fields.
Subsequent to the feedback step, the coarse grid may be optionally smoothed in the area
of the fine grid. Two smoothers are available: a 5-point 1-2-1 smoother, and a smoother-desmoother
with a similar stencil size.
Both the feedback and the smoothers are run one row and column in from the
interface row and column of the coarse grid (the coarse grid provides
the lateral boundary conditions to the fine grid, so the outer-most row
cannot be modified).
\subsubsection{Reference State}
When the nest is instantiated, the initial feedback ensures
that the coarse grid is consistent with the fine grid, particularly
with regards to topography and the reference state fields inside the blended region, and for such
terrestrial features as coasts, lakes, and islands. The adjustment
of elevation in the coarse grid forces a base state recalculation.
The fine grid needs an initial base state calculation, and after
the terrain feedback, the coarse grid is also in need of a base state
recalculation. Note that with horizontal interpolation of the coarse grid
to the fine grid, and feedback of the fine grid to the coarse
grid, the coarse-grid base state is recomputed
even without a separate fine-grid initial data file,
since the coarse-grid topography is adjusted.
With completed base state computations, which follow similarly to
that described for the real-data initialization in section
\ref{initialization_real_base_section},
routines return
back to the integration step for the coarse and fine grids.
The fine-grid data are now properly initialized for integration and
can be advanced forward one time step.
\subsubsection{Integration}
The integration by grid is recursive. At the end of each grid's time step, a check
is made to determine if a child grid exists for that parent and if the
current time is bracketed by the child's start/end time.
This is shown in Fig. \ref{nest_domain_integration_figure}. The integration process for the nest (step 2 under the
while loop) recursively calls the top step in the overall sequence as a parent grid itself.
This is a ``depth first''
traversal of the tree of grids.
If a child grid does exist, that child grid is integrated up through the current time of
the parent grid.
\subsubsection{Interpolation Options}
Fields from the parent domain (coarse grid, CG) are interpolated to the child domain
(fine grid, FG) prior to the CG data being used by the FG. There are several
occurrences of this interpolation.
\begin{itemize}\setlength{\parskip}{-4pt}
\item At initialization, or upon a domain move, horizontally interpolate all
non-masked fields from CG to FG.
\item At initialization or upon a domain move, topography (and
fields derived from topography) within the FG domain are blended
with data from the CG, as shown in Fig. \ref{figure:zone12}.
\item At the completion of each CG timestep, CG fields are interpolated
for use by the FG. This is primarily for the construction of lateral boundary
conditions for the FG domain; however, optional interpolations are available for the fields that are
only computed on the coarsest grid (examples include stochastic forcing and
simple ocean models that are only defined on the outer-most domain).
\end{itemize}
\noindent
ARW supports a number of horizontal interpolation options, available via
the user-defined namelist.