3.75km MPAS Atmosphere Output#
Author: Philip Chmielowiec
Data: Falko Judt
This visualization example showcases a 3.75km MPAS Atmosphere mesh, which is composed of roughly 84 million nodes and 42 million faces.
Plots of Relative Humidity (relhum_200hPa
) and Vorticity (vorticity_200hPa
), with both global Robinson and North Pole Centered Orthographic projections.
import uxarray as ux
import cartopy.crs as ccrs
import geoviews.feature as gf
def features(projection):
return gf.coastline(projection=projection, linewidth=1, scale="50m") * gf.states(
projection=projection, linewidth=1, scale="50m"
)
grid_path = "/glade/campaign/cisl/vast/uxarray/data/dyamond/3.75km/grid.nc"
data_path = "/glade/campaign/mmm/wmr/fjudt/projects/dyamond_1/3.75km/diag.2016-08-01_00.00.00.nc"
uxds = ux.open_dataset(grid_path, data_path)
uxds.uxgrid.sizes
{'n_edge': 125829120,
'n_node': 83886080,
'n_max_node_faces': 3,
'n_max_face_edges': 6,
'n_face': 41943042,
'two': 2,
'n_max_face_nodes': 6}
Face Centered Data Variable: relhum_200hPa
#
uxds["relhum_200hPa"]
<xarray.UxDataArray 'relhum_200hPa' (time: 1, n_face: 41943042)> Size: 168MB [41943042 values with dtype=float32] Coordinates: * time (time) datetime64[ns] 8B 2016-08-01 Dimensions without coordinates: n_face Attributes: units: percent long_name: Relative humidity vertically interpolated to 200 hPa
projection = projection = ccrs.Robinson()
uxds["relhum_200hPa"][0].plot.rasterize(
method="point",
projection=projection,
backend="matplotlib",
pixel_ratio=8.0,
fig_size=400,
) * features(projection)
projection = ccrs.Orthographic(central_latitude=90)
uxds["relhum_200hPa"][0].plot.rasterize(
method="point",
projection=projection,
backend="matplotlib",
pixel_ratio=8.0,
fig_size=250,
) * features(projection)