Multi-Resolution Visualization
Techniques for Nested Weather Models
Lloyd A. Treinish
IBM Thomas J. Watson Research
Center
Yorktown Heights, NY 10598
Introduction
In many applications
of simulation, underlying computational grids are defined to capture greater
detail in regions of interest. Such grids may focus on different
components of complex geometry (e.g., portions of an airframe for a computational
fluid dynamics problem) or spatial subdomains for which additional information
is to be computed. Independently, they may be fixed or adaptive.
The visualization of data defined on such grids is growing in importance
as these computational techniques are more widely employed. In addition,
visualization of fluid flow continues to be an active research area.
Both scalar and vector field visualization are necessary in a specific
application domain, that of simulations of weather phenomena. These
atmospheric models typically employ a grid that is fixed for a specific
computation, but is composed of multiple or nested domains to provide a
focus on specific geographic areas.
Our previous work has discussed
methods of appropriate mapping of user goals to the design of pictorial
content by considering both the underlying data characteristics and the
(human) perception of the visualization [8].
However, the introduction of multi-resolution grids challenges the effectiveness
of conventional visualization methods. Consider, for example, rapid
execution (e.g., 10 to 30 times faster than real-time) of mesocale weather
models operating at cloud-scale resolution. Earlier we illustrated
that there is a mismatch between this rate of data generation and the ability
to utilize the model results with traditional two-dimensional techniques
[7]. Three-dimensional visualization
is only a partial solution because typical methods can easily fail to capture
the salient characteristics of such simulations.
Problem
A generalization
of our earlier work implies that the resolution of the visualization must
match that of the scale of the model to build usable products that are
perceptually coherent. The choice of realization geometry is also
affected by the resolution of the data so that perceptual artifacts do
not dominate the presentation, especially in animation [8].
For typical mesoscale weather models, these issues manifest themselves
in two ways. The first is with realization of computed wind fields.
The second occurs when visualizing data defined on multi-resolution meshes
inherent in the simulation.
3. Vector Field Realization
The choice of realization
methods is particularly important for vector fields. Figure 1 illustrates
the typical method used for operational forecasting tasks. It employs
a family of categorical glyphs marked by speed (barbs). This technique
is designed for a static display of a relatively small number of fixed
samples.
Figure 1. Typical glyph-based
visualization of forecast winds.
When used with high-resolution model
data, it introduces incorrect motion perception during animation.
In addition, subsampling of the original data for glyph locations does
not capture the detailed features from the computational grid.
Nested Grids
The underlying time-varying three-dimensional
data are defined on a set of topologically regular, but geometrically irregular
meshes. For the geographic area where weather is being forecast,
a low-resolution mesh is defined, which is curvilinear horizontally (derived
from a cartographic projection). Within that area, one or more high-resolution
meshes are imposed to cover areas of interest in greater detail or where
expected phenomena of smaller spatial (and temporal) scale will occur.
Figure 2 illustrates one of many ways that such a nest configuration could
be defined. In this case, there are three nests that focus on the center
of the overall domain. The physical spacing between mesh points is
in a 4:1 ratio from one grid to the next (i.e., 256:16:1 ratio in areal
coverage for three nests). The illustrated meshes are reduced in
resolution so that staggering between the nests is visible, following a
scheme within the simulation to avoid boundary artifacts in the computation.
Vertically, all of the meshes are the same -- deformed to follow the irregularity
of the local terrain. Data are usually defined on the vertices of
the mesh. Typical visualizations only consider a single mesh independently
of the number or level of nesting or are applied after a uniform resampling
of the multiple nests to a single mesh.

Figure 2. Three-way staggered
nesting in a weather model grid.
Approach
We have determined that realization
needs to be based upon the integration of all computational nests with
high-resolution topography in a three-dimensional cartographic coordinate
system and sequencing consistent with the internal time step of the computation.
Vector Field Realization
We have used several techniques
for wind velocity to avoid problems inherent in traditional barb-based
methods. In general, we pseudo-color the realization by speed.
For ground level or upper air layers, we typically drape the results over
a topographic or another relevant surface to incorporate high-resolution
information that strongly affects the model results [8].
A continuous colormap is used ranging from a deep violet or green, for
example, for very calm winds to white for the maximum speed. Such
a luminance-based colormap is perceptually isomorphic for these data with
relatively high spatial frequency [4].
Vector arrows are a common alternative to barbs, but we create them with
fixed size to eliminate misleading motion cues during animation as illustrated
in Figure 3. It shows the result of a mesoscale forecast generated
at 6.5 km resolution in a region roughly 650 x 650 km in extent to include
Hawaii. These and subsequent forecast results were generated by the
Regional Atmospheric Modeling Systems (RAMS) [3]. Similar issues as discussed
herein would apply to other mesoscale models.
Figure 3. Predicted winds visualized
as arrow glyphs with temperature contours and a terrain surface.
The image shows a terrain map as
a deformed surface, pseudo-colored by color-filled contour bands of predicted
temperature overlaid with coastline maps. This approach generates
a textured field, which is effective at showing gross predicted atmospheric
movement. The visualization is consistent with prevailing wind patterns
in Hawaii. However, this structure is disturbed on the lee side of
the big island of Hawaii and to a lesser extent, Maui. These areas are
well correlated with warmer areas off the coasts of these islands. Since
this realization technique is global in nature, it does not capture sufficient
details to interpret these apparent features. Of course, the particular
design choices enable a superior representation for the entire forecasting
domain compared to either barbs or conventional arrow glyphs, especially
for browsing or assessment purposes. An animation
of a similar visualization illustrates this effect.
For more detailed examination of
these areas, we introduce streamlines with directional arrows. Although
visually more complex they are superior at capturing fronts, convergence
zones, vortices, etc. An example result for the same forecast period
is shown in Figure 4. The temperature data are now shown as a continuous
field as better contrast with the wind visualization. A perceptually isomorphic
colormap is used between opposing saturation pairs for such low-spatial
frequency data. The results show more fine structure, but there are gaps,
especially in potentially interesting regions as implied in Figure 3.
Figure 4. Predicted
winds visualized as streamlines with a terrain surface colored by temperature..
The problem is that a conventional
approach toward steady-state streamline generation was used. In particular,
the domain was uniformly sampled to define seed points for integration.
While generic, it fails to capture salient high-resolution features.
This is a well-known issue in flow visualization, particularly in aerospace
computational fluid dynamics and continues to be an active area of research.
A key problem in these applications is the understanding of the topology
of the underlying vector field, first identified by Helman and Hesselink
[2]. Among the more important characteristics of the topology are
the location of critical points (i.e., where the velocity field vanishes)
and tangent curves, which connect these points. To first order these points
can be classified by considering the eigenvalues of the Jacobian of the
wind velocity, v(u,v) as shown in Equation (1), where (xcp,
ycp) is the location of a critical point.
(1)
This yields six possible conditions,
which are illustrated in Figure 5. In general, this implies that potential
regions of interest may be identified by the eigenvectors and eigenvalues
of div v. In particular, a sampling of the locations
where div v = 0 is used as a set of (xcp,
ycp). These approximate critical points
can then be used as seeds for streamline integration.
Figure 5. Classification
criteria for critical points. R1, R2, and I1, I2 are the real and
imaginary components.
The resultant streamlines
are thus, a rough approximation of tangent curves. However, there are alternative
approaches to determining better locations for streamline seeds. For example,
Turk and Banks developed a set of strategies for more optimal streamline
placement, which also includes changing locations and lengths, adding to
avoid gaps and merging them to avoid crowding [10]. One part of their approach
includes iteratively comparing low-bandpass-filtered images of streamlines
to evaluate the quality of the streamline placement.
Although we start
with a set of seed points derived from critical point analysis, following
some of Turk and Banks’ ideas, we then apply a bandpass filter to the entire
forecasted velocity field as opposed to an image of a streamline representation.
This is a simple image-processing approach, which isolates areas of relatively
large change in wind speed. The result is complementary seed point locations,
which are also used to calculate streamlines. To ensure consistency in
this steady-state calculation for animation, both types of seed points
are determined for each time step produced by the weather model.
An application of this approach for the previous forecast period is shown
in Figure 6.
Figure 6. Wind
streamlines from seeds selected by critical point analysis supplemented
with image-based guidance.
The technique is clearly
superior at capturing detailed features from the forecast. In this
case, the structure of the wind field on the lee side of the islands is
now clear. This morphology is due to vortex shedding of the fluid
flow past mountains not unlike what can happen behind a wing or an engine
nacelle for a jet aircraft in flight. The results are particularly
compelling when animated by time. However,
when the time step between animations frames is sufficiently small (i.e.,
10 minutes for forecasts at this spatial scale), this approach captures
incoherence in the location of the critical points. The resultant animations
show some noise or jitter in regions of rapidly changing flow, which detract
from both the visual appearance as well as the ability to study the data
in detail. This may be an artifact of using a low-order approximation in
determining critical point location and thus, similar to the problem recently
reported by Scheuermann et al [5]. They argue for the need to do C1-scalar
interpolation to avoid computing too many and erroneous critical points,
and yield a more accurate representation of the topology. Nevertheless,
this method looks promising for the visualization of other high-resolution
orographic effects on predicted winds.
The techniques described
above have been implemented with Visualization Data Explorer (DX) [1].
DX is a portable, general-purpose software package for visualization and
analysis. A generic toolkit was used to avoid having to implement
a graphics and computational infrastructure. The built-in vector
field visualization tools were employed for realization. The critical
point analysis was added to DX and the results were then used by the provided
streamline calculations.
An improved initial
representation of predicted winds enables one to identify features of potential
interest for further analysis. We have introduced several additional
approaches to study the data in greater detail. The first is to incorporate
both spatial and temporal integration as streaklines. Another is
to examine other predicted fields generated by the model in conjunction
with wind data. Figures 7 and 10 show examples of the latter, fusing
multiple variables into a consistent representation [8].
Figure 7 contains results for the same forecast period as used in Figures
3, 4 and 6. It illustrates a surface variable (precipitable water) for
display as pseudo-colored filled contour bands, which are overlaid on a
topographic map. Coastlines (black) are draped on the surface.
An upper air variable (relative humidity) is displayed via surface extraction.
The surface at 90% is requested in translucent white, which corresponds
roughly to a cloud boundary. Another field (vertical wind speed)
has been selected to show as a vertical slice, which is pseudo-color contoured.
The location of the slice was chosen to include the area at the lee of
Hawaii as identified in Figure 6.
Figure 7.
Three-Dimensional Wind Streamlines with Surface and Upper Air Data.
The upper air wind
data can be seen along two vertical profiles, which are specified interactively
to study this area. The direction of the model wind field along these
"virtual soundings" is shown via vector arrows and streamribbons.
Both the arrows and ribbons are pseudo-colored by horizontal wind speed.
The length of the arrows also corresponds to the horizontal speed.
Points along the profile are used as seeds for the streamribbon integration.
Each profile is realized as a pseudo-colored tube, which is contoured by
the variable selected for isosurface realization (i.e., relative humidity).
The visualization for the profile marked “2” can help illustrate the upper
air characteristics of the predicted vortex shedding described earlier.
This can be further illustrated in animation.
Nested Grid Encapsulation
To enable visualization of data
on the staggered nested grids described earlier, the concept of functional
access to data was employed [9].
In this case, the unified DX data model was extended to encapsulate nests
as a specialization of its native support for multi(zone) grids. This enables
any realization method to be utilized to provide results for a single nest
or any combination thereof, in the same way one would with a simpler data
set. This includes the aforementioned strategy for determining seed point
locations for streamline calculations.
Details of the boundaries between
nests as well as areas of overlap are hidden from the user. This includes
a byte component indicating if a higher-resolution nest exists for an area
covered with a lower-resolution nest, which is used to “invalidate” the
latter. To enable continuity between the nests in subsequent visualizations,
a boundary region is constructed between the perimeter of each inner mesh
and the non-overlapping interior vertices of the corresponding outer mesh.
In addition to preserving the original grid locations, this approach retains
the topological regularity of each of the nests. As a result it is conservative
on memory usage and can leverage algorithms that operate on simple structured
grids. Since the mesh structure is fixed through the forecast, this encapsulation
is only computed once, with the time-varying data being replaced for each
simulation step.
There is an additional complication
for wind velocity, v(u,v), for both single and multiple nests.
The location of the horizontal (2-vector) component of the velocity is
not on the same grid locations, where other (scalar) fields are calculated
in the simulation. They are offset from the mesh vertices such that the
north-south component (u) are at the same latitude as the other data but
half way between longitudes. Similarly, the east-west component points
(v) are at the same longitude as the other data but half way between the
latitudes. In both cases, the shifting is toward the southwest, but
is also encapsulated within this abstraction, which simplifies the application
of different realization strategies for the forecasted winds independently
of nesting.
A result of these direct operations
on the native grids without transformation or compression is preservation
of the data fidelity during visualization. Figure 8 illustrates an application
of this encapsulation on a scalar, two-dimensional field. In this case,
a forecast model was implemented for the northwestern United States, centered
on Portland, Oregon. Using the nesting illustrated in Figure 2, meshes
at 16, 4 and 1 km between grid points were defined. Each individual nest
is a 62x62 grid with 31 vertical levels. Figure 8 shows the topography
of this region for each nest integrated as a colored shaded deformed surface,
which this technique provides. The boundaries between the nests have been
marked with a gray, translucent box draped over the surface.
Figure 8. Nest encapsulation
applied to three-way-nested model topography.
Similar computational grid structures
do occur in other disciplines. For example, Schulz et al reports on visualization
methods for locally-refined cartesian grids used for fluid flow calculations
[6]. However, the meshes in this case are not staggered while they are
geometrically regular and the refinement is always the same in each dimension.
Hence, issues of encapsulation and realization are much simpler than for
those of weather simulations discussed herein.
Results
The nesting, critical
point analysis and image-based seed point selection methods are combined
to visualize actual forecast results and evaluate the techniques. Figure
9 uses methods for both surface and upper air data described earlier. In
this case, the inner two nests (4 and 1 km resolution, respectively) for
the aforementioned Portland forecasts are shown using the nest encapsulation
discussed earlier. The image shows contours of surface temperature and
streamlines of surface winds that are draped over the (nested) model topography.
The temperature predictions are interpolated to the locations of cities
of interest within the geographic area and the results are marked on the
terrain. Two volumetric upper air fields are also shown via translucent
isosurfaces. Total cloud water density at 10-3
kg/kg (water/air) is visible in white. Predicted reflectivities at 30 dbZ
corresponding to where precipitation is forming is shown in cyan. Additional
detail for the 1 km resolution mesh in the center can be seen, especially
for the surface data. In animation of a 48-hour forecast at 10 minutes
per time step, the streamlines show lateral jittering likely due to the
aforementioned approximation in the critical point analysis. However, they
do capture the flow along the Columbia River Gorge reasonably well even
in the lower-resolution nest and certainly better than with the previously
used uniform seeding strategy for streamlines. This can be further
illustrated in animation.
Figure 9. Integration of
wind streamlines with other surface variables and upper air data on two
nests. The streamlines are derived from seeds selected by critical point
analysis supplemented with bandpass-filtering on the velocity field to
identify areas of relatively large change in wind speed.
Figure 10 shows another approach
in which four different surface variables have been selected in a combined
visualization at the same time as in Figure 9. Temperature is shown as
pseudo-color. Wind velocity is illustrated as streamlines, colored by speed,
using the same technique as in Figures 6 and 9. Colored line contours
of relative humidity in increments of 10% are shown. Each of these
planar representations are deformed vertically by maximum reflectivity
to create a shaded surface. The data for each of these realizations is
using the two inner nests integrated together using the same approach as
in Figure 9. Additional detail for the 1 km resolution mesh can be seen
in each of the variables. For geographic context, coastline (black), state
boundary (white) and river (blue) maps are draped on the surface. Regions
of higher reflectivity implying precipitation are correlated with those
of higher humidity. One can also see streamlines corresponding to the area
of the Columbia River Gorge as illustrated in Figure 9. In animation, the
jitter in this representation for the streamlines is no longer visible
because the time steps are separated by one hour. This suggests a threshold
in temporal sampling for this resolution forecast when higher order methods
are required for critical point determination. This can be further
illustrated in animation.
Figure 10. Integration
of wind streamlines with other surface variables on two nests. The streamlines
are derived using both techniques for seed point identification.
These techniques provide more detailed
and consistent visualizations then those typically used with such weather
simulations. Since conventional meteorological visualizations only show
individual nests, they would fail to illustrate the more detailed nests
in geographic context of the simulation as in Figures 9 and 10. In addition
to only showing single nests, such visualizations would usually employ
glyph-based methods as in Figure 1 or more rarely streamlines. But the
latter would be based upon uniform sampling of the nest. In either case,
the detailed structure in the forecast winds would not be adequately portrayed
in the visualization.
Conclusions and Future Work
Encapsulation of
complex meshes coupled with critical point analysis and image-based seed
point placement on flow data defined on such structures enables the generation
of useful visualizations that capture the detail of the underlying simulation.
Further adaptation of on-going work in flow visualization looks promising
in applications to high-resolution numerical weather models. As the
complexity of the underlying meshes increases to accommodate orographic
and other effects in detail, the encapsulation method will be tested. Additional
techniques for improved global representation such as line integral convolution
will be utilized.
For animations with fine temporal
resolution, either higher-order methods for critical point determination
or some time-averaging of the solution to div v = 0 will
be applied to eliminate incoherence in streamline positions between frames.
Additional image-based approaches will be considered, including extension
of some of the ideas developed by Turk and Banks. For more detailed investigation,
the critical point analysis will be used for tangent curve classification.
This may indicate more precisely regions of separation or attachment of
predicted wind fields. It could also be used to identify seeds to illustrate
specific types of flows (e.g., vortices) as part of more focused visualizations.
Acknowledgements
The author wishes to thank F. Suits
and Z. Christidis of IBM T. J. Watson Research Center for valuable discussions
on techniques and issues on the visualization of and computation on nested
grids.
7.References
Abram, G. and L. Treinish. An
Extended Data-Flow Architecture for Data Analysis and Visualization.
Proceedings
of the IEEE Visualization 1995 Conference, October 29-November 3, 1995,
Atlanta, GA, pp. 263-270. (DX is now available as open source software
via http://www.research.ibm.com/dx
and http://www.opendx.org)
Helman, J. L. and L. Hesselink.Surface
Representations of Two- and Three-Dimensional Fluid Flow Topology.
Proceedings
of the IEEE Visualization 1990 Conference, October 1990, San Francisco,
pp. 6-13.
Pielke, R., W. Cotton, R. Walko, C.
Tremback, W. Lyons, L. Grasso, M. Nicholls, M.-D. Moran, D. Wesley, T.
Lee and J. Copeland. A Comprehensive Meteorological Modeling System
- RAMS. Meteorol. Atmos. Phys., 49, 1992, pp. 69-91.
Rogowitz, B. and L. Treinish. Data
Visualization: The End of the Rainbow. IEEE Spectrum,
35, no.12, December 1998, pp. 52-59.
Scheuermann, G., Z. Tricoche and H.
Hagen. C1-Interpolation for Vector Field Topology Visualization.
Proceedings
of the IEEE Visualization 1999 Conference, October 1999, San Francisco,
pp. 271-278.
Schulz, M., F. Reck, W. Bertelheimer,
T. Ertl. Interactive Visualization of Fluid Dynamics Simulations
in Locally Refined Cartesian Grids. Proceedings of the IEEE
Visualization 1999 Conference, October 1999, San Francisco, pp. 413-416.
Treinish, L. and L. Rothfusz.
Three-Dimensional
Visualization for Support of Operational Forecasting at the 1996 Centennial
Olympic Games. Proceedings of the Thirteenth International
Conference on Interactive Information and Processing Systems for Meteorology,
Oceanography and Hydrology, American Meteorology Society, February
2-8, 1997, Long Beach, CA, pp. 31-34.
Treinish, L. Task-Specific
Visualization Design. IEEE Computer Graphics and Applications,
19,
n. 5, September/October 1999, pp. 72-77.
Treinish, L. A
Function-Based Data Model for Visualization. Proceedings
of the IEEE Visualization 1999 Conference Late Breaking Hot Topics,
October 1999, San Francisco, pp. 73-76.
Turk, G. and D. Banks. Image
guided streamline placement. Computer Graphics, Proceedings
of ACM SIGGRAPH '96, August 1996, New Orleans, pp. 453-460.
lloydt@watson.ibm.com