Ensemble numerical summary measures with GEFS¶
As Atmospheric Data Scientists, we want to perform some statistical methods on the GEFS members with the intent that we can observe how the behavior and statistical features of the atmosphere change by various initial conditions and disturbances. This blog is going to examine the Numerical Summary Measures of the GEFS data.
# Importing required libraries
import xarray as xr # dealing with atmospheric data
import numpy as np # dealing with arrays
from visjobs.datas import get_MODEL # getting model data
import rioxarray # dealing with raster files
import geopandas as gpd # dealing with shapefiles
from shapely.geometry import mapping # dealing with shapefiles
from scipy import stats # statistics
# Ignore warnings
import warnings
warnings.filterwarnings("ignore")
Get GEFS data¶
Visjobs is an exceptional library for fetching the latest atmospheric model datasets remotely. We created this hilarious library for those atmospheric scientists struggling or who do not want to download the atmospheric model outputs. With a minimum number of parameters, Visjobs will bring you the data you desire.
We are going to define only the hour parameter, the rest is going to be handled by latest=True
parameter in visjobs :)
# Define date parameters
hour = '00'
# so easily getting the latest GEFS data
data = get_MODEL.pick_data(hour = '00',
latest = True,
model = 'GEFS',
chunks = {'time': -1,
'lon' : 80,
'lat' : 80,
'lev' : -1 })
# look at inside of the data
data
Addressing Data: http://nomads.ncep.noaa.gov:80/dods/gefs/gefs20211018/gefs_pgrb2bp5_all_00z
Connected GEFS Data via OpenDAP
<xarray.Dataset> Dimensions: (ens: 31, time: 65, lev: 31, lat: 361, lon: 720) Coordinates: * ens (ens) float64 1.0 2.0 3.0 4.0 5.0 ... 28.0 29.0 30.0 31.0 * time (time) datetime64[ns] 2021-10-18 ... 2021-11-03 * lev (lev) float64 1e+03 975.0 950.0 925.0 ... 5.0 3.0 2.0 1.0 * lat (lat) float64 -90.0 -89.5 -89.0 -88.5 ... 89.0 89.5 90.0 * lon (lon) float64 0.0 0.5 1.0 1.5 ... 358.0 358.5 359.0 359.5 Data variables: (12/279) absvprs (ens, time, lev, lat, lon) float32 dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray> no4lftxsfc (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> no5wavh500mb (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> acpcpsfc (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> albdosfc (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> aptmp2m (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> ... ... vwshneg1p5pv (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> vwsh2pv (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> vwshneg2pv (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> vwshtrop (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> watrsfc (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> wiltsfc (ens, time, lat, lon) float32 dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray> Attributes: title: ALL GFS Ensemble .5 Degree (Additional Parms) starting from... Conventions: COARDS\nGrADS dataType: Grid history: Mon Oct 18 18:35:45 UTC 2021 : imported by GrADS Data Serve...
- ens: 31
- time: 65
- lev: 31
- lat: 361
- lon: 720
- ens(ens)float641.0 2.0 3.0 4.0 ... 29.0 30.0 31.0
- grads_name :
- gec00,gep01,gep02,gep03,gep04,gep05,gep06,gep07,gep08,gep09,gep10,gep11,gep12,gep13,gep14,gep15,gep16,gep17,gep18,gep19,gep20,gep21,gep22,gep23,gep24,gep25,gep26,gep27,gep28,gep29,gep30
- grads_length :
- 65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65
- grads_tinit :
- 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
- grads_dim :
- e
- grads_size :
- 31
- grads_mapping :
- null
- units :
- count
- long_name :
- ensemble member
array([ 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.])
- time(time)datetime64[ns]2021-10-18 ... 2021-11-03
- grads_dim :
- t
- grads_mapping :
- linear
- grads_size :
- 65
- grads_min :
- 00z18oct2021
- grads_step :
- 6hr
- long_name :
- time
- minimum :
- 00z18oct2021
- maximum :
- 00z03nov2021
- resolution :
- 0.25
array(['2021-10-18T00:00:00.000000000', '2021-10-18T06:00:00.000000000', '2021-10-18T12:00:00.000000000', '2021-10-18T18:00:00.000000000', '2021-10-19T00:00:00.000000000', '2021-10-19T06:00:00.000000000', '2021-10-19T12:00:00.000000000', '2021-10-19T18:00:00.000000000', '2021-10-20T00:00:00.000000000', '2021-10-20T06:00:00.000000000', '2021-10-20T12:00:00.000000000', '2021-10-20T18:00:00.000000000', '2021-10-21T00:00:00.000000000', '2021-10-21T06:00:00.000000000', '2021-10-21T12:00:00.000000000', '2021-10-21T18:00:00.000000000', '2021-10-22T00:00:00.000000000', '2021-10-22T06:00:00.000000000', '2021-10-22T12:00:00.000000000', '2021-10-22T18:00:00.000000000', '2021-10-23T00:00:00.000000000', '2021-10-23T06:00:00.000000000', '2021-10-23T12:00:00.000000000', '2021-10-23T18:00:00.000000000', '2021-10-24T00:00:00.000000000', '2021-10-24T06:00:00.000000000', '2021-10-24T12:00:00.000000000', '2021-10-24T18:00:00.000000000', '2021-10-25T00:00:00.000000000', '2021-10-25T06:00:00.000000000', '2021-10-25T12:00:00.000000000', '2021-10-25T18:00:00.000000000', '2021-10-26T00:00:00.000000000', '2021-10-26T06:00:00.000000000', '2021-10-26T12:00:00.000000000', '2021-10-26T18:00:00.000000000', '2021-10-27T00:00:00.000000000', '2021-10-27T06:00:00.000000000', '2021-10-27T12:00:00.000000000', '2021-10-27T18:00:00.000000000', '2021-10-28T00:00:00.000000000', '2021-10-28T06:00:00.000000000', '2021-10-28T12:00:00.000000000', '2021-10-28T18:00:00.000000000', '2021-10-29T00:00:00.000000000', '2021-10-29T06:00:00.000000000', '2021-10-29T12:00:00.000000000', '2021-10-29T18:00:00.000000000', '2021-10-30T00:00:00.000000000', '2021-10-30T06:00:00.000000000', '2021-10-30T12:00:00.000000000', '2021-10-30T18:00:00.000000000', '2021-10-31T00:00:00.000000000', '2021-10-31T06:00:00.000000000', '2021-10-31T12:00:00.000000000', '2021-10-31T18:00:00.000000000', '2021-11-01T00:00:00.000000000', '2021-11-01T06:00:00.000000000', '2021-11-01T12:00:00.000000000', '2021-11-01T18:00:00.000000000', '2021-11-02T00:00:00.000000000', '2021-11-02T06:00:00.000000000', '2021-11-02T12:00:00.000000000', '2021-11-02T18:00:00.000000000', '2021-11-03T00:00:00.000000000'], dtype='datetime64[ns]')
- lev(lev)float641e+03 975.0 950.0 ... 3.0 2.0 1.0
- grads_dim :
- z
- grads_mapping :
- levels
- units :
- millibar
- long_name :
- altitude
- minimum :
- 1000.0
- maximum :
- 1.0
- resolution :
- 33.3
array([1000., 975., 950., 925., 900., 850., 800., 750., 700., 650., 600., 550., 500., 450., 400., 350., 300., 250., 200., 150., 100., 70., 50., 30., 20., 10., 7., 5., 3., 2., 1.])
- lat(lat)float64-90.0 -89.5 -89.0 ... 89.5 90.0
- grads_dim :
- y
- grads_mapping :
- linear
- grads_size :
- 361
- units :
- degrees_north
- long_name :
- latitude
- minimum :
- -90.0
- maximum :
- 90.0
- resolution :
- 0.5
array([-90. , -89.5, -89. , ..., 89. , 89.5, 90. ])
- lon(lon)float640.0 0.5 1.0 ... 358.5 359.0 359.5
- grads_dim :
- x
- grads_mapping :
- linear
- grads_size :
- 720
- units :
- degrees_east
- long_name :
- longitude
- minimum :
- 0.0
- maximum :
- 359.5
- resolution :
- 0.5
array([ 0. , 0.5, 1. , ..., 358.5, 359. , 359.5])
- absvprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (1000 975 950 925 900.. 70 50 30 20 10) absolute vorticity [1/s]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - no4lftxsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface best (4 layer) lifted index [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - no5wavh500mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 500 mb 5-wave geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - acpcpsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface convective precipitation [kg/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - albdosfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface albedo [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - aptmp2m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 m above ground apparent temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - brtmptoa(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** top of atmosphere brightness temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - capesfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface convective available potential energy [j/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cape255_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 255-0 mb above ground convective available potential energy [j/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cduvbsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface clear sky uv-b downward solar flux [w/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cinsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface convective inhibition [j/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cin255_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 255-0 mb above ground convective inhibition [j/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - clwmrprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (1000 975 950 925 900.. 70 50 30 20 10) cloud mixing ratio [kg/kg]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cnwatsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface plant canopy surface water [kg/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cpofpsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface percent frozen precipitation [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cpratsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface convective precipitation rate [kg/m^2/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cwatclm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** entire atmosphere (considered as a single layer) cloud water [kg/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - cworkclm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** entire atmosphere (considered as a single layer) cloud work function [j/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - dpt2m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 m above ground dew point temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - dpt30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground dew point temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - duvbsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface uv-b downward solar flux [w/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - fldcpsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface field capacity [fraction]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - fricvsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface frictional velocity [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - gfluxsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface ground heat flux [w/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - gustsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface wind speed (gust) [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (975 950 900 800 750.. 7 5 3 2 1) geopotential height [gpm]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgthy1(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1 hybrid level geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgthy2(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 hybrid level geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgthy3(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3 hybrid level geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgthy4(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4 hybrid level geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgt0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=5e-07 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtneg0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-5e-07 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgt1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1e-06 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtneg1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1e-06 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgt1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1.5e-06 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtneg1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1.5e-06 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgt2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=2e-06 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtneg2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-2e-06 (km^2/kg/s) surface geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgttop0c(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** highest tropospheric freezing level geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtceil(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** cloud ceiling geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgt0c(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0c isotherm geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgtmwl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** max wind geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hgttrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause geopotential height [gpm]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hindexsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface haines index [numeric]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hlcy3000_0m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3000-0 m above ground storm relative helicity [m^2/s^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - hpblsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface planetary boundary layer height [m]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - icahtmwl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** max wind icao standard atmosphere reference height [m]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - icahttrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause icao standard atmosphere reference height [m]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - icecsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface ice cover [proportion]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - icipprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (800 700 600 500 400 300) icing [%]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - icsevprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (800 700 600 500 400 300) icing severity [non-dim]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - landsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface land cover (0=sea, 1=land) [proportion]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - lftxsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface surface lifted index [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - mntsf320k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 320 k isentropic level montgomery stream function [m^2/s^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - msletmsl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** mean sea level mslp (eta model reduction) [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ncpcpsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface large-scale precipitation (non-convective) [kg/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - o3mrprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (400 350 300 250 200.. 7 5 3 2 1) ozone mixing ratio [kg/kg]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pevprsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface potential evaporation rate [w/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pli30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground parcel lifted index (to 500 hpa) [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - plpl255_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 255-0 mb above ground pressure of level from which parcel was lifted [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - potsig995(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.995 sigma level potential temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pratesfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface precipitation rate [kg/m^2/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preslclb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** low cloud bottom level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preslclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** low cloud top level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presmclb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** middle cloud bottom level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presmclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** middle cloud top level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preshclb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** high cloud bottom level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preshclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** high cloud top level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presmsl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** mean sea level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pres80m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 80 m above ground pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preshy1(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1 hybrid level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preshy2(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 hybrid level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preshy3(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3 hybrid level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - preshy4(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4 hybrid level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pres0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=5e-07 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presneg0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-5e-07 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pres1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1e-06 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presneg1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1e-06 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pres1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1.5e-06 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presneg1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1.5e-06 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pres2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=2e-06 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presneg2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-2e-06 (km^2/kg/s) surface pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - prescclb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** convective cloud bottom level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - prescclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** convective cloud top level pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - presmwl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** max wind pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - prestrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause pressure [pa]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pvort310k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 310 k isentropic level potential vorticity [km^2/kg/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pvort320k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 320 k isentropic level potential vorticity [km^2/kg/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pvort350k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 350 k isentropic level potential vorticity [km^2/kg/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pvort450k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 450 k isentropic level potential vorticity [km^2/kg/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pvort550k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 550 k isentropic level potential vorticity [km^2/kg/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pvort650k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 650 k isentropic level potential vorticity [km^2/kg/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - pwat30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground precipitable water [kg/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (975 950 900 800 750.. 300 150 70 30 20) relative humidity [%]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhsg330_1000(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.33-1 sigma layer relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhsg440_1000(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.44-1 sigma layer relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhsg720_940(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.72-0.94 sigma layer relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhsg440_720(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.44-0.72 sigma layer relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhsig995(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.995 sigma level relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhhy1(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1 hybrid level relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhhy2(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 hybrid level relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhhy3(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3 hybrid level relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhhy4(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4 hybrid level relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh60_30mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 60-30 mb above ground relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh90_60mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 90-60 mb above ground relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh120_90mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 120-90 mb above ground relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh150_120mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 150-120 mb above ground relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh180_150mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 180-150 mb above ground relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhclm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** entire atmosphere (considered as a single layer) relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rhtop0c(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** highest tropospheric freezing level relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - rh0c(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0c isotherm relative humidity [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - sfcrsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface surface roughness [m]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - snohfsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface snow phase change heat flux [w/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - snowcsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface snow cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soill0_10cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0-0.1 m below ground liquid volumetric soil moisture (non frozen) [proportion]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soill10_40cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.1-0.4 m below ground liquid volumetric soil moisture (non frozen) [proportion]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soill40_100cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.4-1 m below ground liquid volumetric soil moisture (non frozen) [proportion]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soill100_200cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1-2 m below ground liquid volumetric soil moisture (non frozen) [proportion]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soilw10_40cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.1-0.4 m below ground volumetric soil moisture content [fraction]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soilw40_100cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.4-1 m below ground volumetric soil moisture content [fraction]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - soilw100_200cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1-2 m below ground volumetric soil moisture content [fraction]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfhprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (1000 975 950 925 900.. 7 5 3 2 1) specific humidity [kg/kg]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh2m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 m above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh80m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 80 m above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh60_30mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 60-30 mb above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh90_60mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 90-60 mb above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh120_90mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 120-90 mb above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh150_120mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 150-120 mb above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - spfh180_150mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 180-150 mb above ground specific humidity [kg/kg]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - sunsdsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface sunshine duration [s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tcdcblcll(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** boundary layer cloud layer total cloud cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tcdclcll(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** low cloud layer total cloud cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tcdcmcll(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** middle cloud layer total cloud cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tcdchcll(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** high cloud layer total cloud cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tcdc475mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 475 mb total cloud cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tcdcccll(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** convective cloud layer total cloud cover [%]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmplclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** low cloud top level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpmclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** middle cloud top level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmphclt(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** high cloud top level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (975 950 900 800 750.. 7 5 3 2 1) temperature [k]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_305m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 305 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_457m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 457 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_610m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 610 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_914m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 914 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_1829m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1829 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_2743m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2743 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_3658m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3658 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp_4572m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4572 m above mean sea level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp80m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 80 m above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp100m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 100 m above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpsig995(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.995 sigma level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmphy1(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1 hybrid level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmphy2(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 hybrid level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmphy3(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3 hybrid level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmphy4(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4 hybrid level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp320k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 320 k isentropic level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp450k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 450 k isentropic level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp550k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 550 k isentropic level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp650k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 650 k isentropic level temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp60_30mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 60-30 mb above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp90_60mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 90-60 mb above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp120_90mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 120-90 mb above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp150_120mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 150-120 mb above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp180_150mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 180-150 mb above ground temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=5e-07 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpneg0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-5e-07 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1e-06 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpneg1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1e-06 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1.5e-06 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpneg1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1.5e-06 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmp2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=2e-06 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpneg2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-2e-06 (km^2/kg/s) surface temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmpmwl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** max wind temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tmptrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tozneclm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** entire atmosphere (considered as a single layer) total ozone [du]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tsoil10_40cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.1-0.4 m below ground soil temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tsoil40_100cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.4-1 m below ground soil temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - tsoil100_200cm(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1-2 m below ground soil temperature [k]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugwdsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface zonal flux of gravity wave stress [n/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - uflxsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface momentum flux, u-component [n/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (975 950 900 800 750.. 7 5 3 2 1) u-component of wind [m/s]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_305m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 305 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_457m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 457 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_610m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 610 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_914m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 914 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_1829m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1829 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_2743m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2743 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_3658m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3658 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd_4572m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4572 m above mean sea level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd80m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 80 m above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd100m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 100 m above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdsig995(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.995 sigma level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdhy1(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1 hybrid level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdhy2(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 hybrid level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdhy3(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3 hybrid level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdhy4(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4 hybrid level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd320k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 320 k isentropic level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd450k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 450 k isentropic level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd550k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 550 k isentropic level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd650k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 650 k isentropic level u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd60_30mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 60-30 mb above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd90_60mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 90-60 mb above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd120_90mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 120-90 mb above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd150_120mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 150-120 mb above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd180_150mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 180-150 mb above ground u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=5e-07 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdneg0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-5e-07 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1e-06 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdneg1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1e-06 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1.5e-06 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdneg1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1.5e-06 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrd2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=2e-06 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdneg2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-2e-06 (km^2/kg/s) surface u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdpbl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** planetary boundary layer u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdmwl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** max wind u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ugrdtrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause u-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - ustm6000_0m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 6000-0 m above ground u-component storm motion [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - uswrftoa(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** top of atmosphere upward short-wave radiation flux [w/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgwdsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface meridional flux of gravity wave stress [n/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vflxsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface momentum flux, v-component [n/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (975 950 900 800 750.. 7 5 3 2 1) v-component of wind [m/s]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_305m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 305 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_457m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 457 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_610m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 610 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_914m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 914 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_1829m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1829 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_2743m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2743 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_3658m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3658 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd_4572m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4572 m above mean sea level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd80m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 80 m above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd100m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 100 m above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdsig995(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.995 sigma level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdhy1(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 1 hybrid level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdhy2(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 2 hybrid level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdhy3(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 3 hybrid level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdhy4(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 4 hybrid level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd320k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 320 k isentropic level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd450k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 450 k isentropic level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd550k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 550 k isentropic level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd650k(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 650 k isentropic level v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd30_0mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 30-0 mb above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd60_30mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 60-30 mb above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd90_60mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 90-60 mb above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd120_90mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 120-90 mb above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd150_120mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 150-120 mb above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd180_150mb(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 180-150 mb above ground v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=5e-07 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdneg0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-5e-07 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1e-06 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdneg1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1e-06 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1.5e-06 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdneg1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1.5e-06 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrd2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=2e-06 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdneg2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-2e-06 (km^2/kg/s) surface v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdpbl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** planetary boundary layer v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdmwl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** max wind v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vgrdtrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause v-component of wind [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vissfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface visibility [m]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vratepbl(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** planetary boundary layer ventilation rate [m^2/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vstm6000_0m(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 6000-0 m above ground v-component storm motion [m/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vvelprs(ens, time, lev, lat, lon)float32dask.array<chunksize=(31, 65, 31, 80, 80), meta=np.ndarray>
- long_name :
- ** (1000 975 950 925 900.. 7 5 3 2 1) vertical velocity (pressure) [pa/s]
Array Chunk Bytes 60.48 GiB 1.49 GiB Shape (31, 65, 31, 361, 720) (31, 65, 31, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vvelsig995(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** 0.995 sigma level vertical velocity (pressure) [pa/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwsh0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=5e-07 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwshneg0p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-5e-07 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwsh1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1e-06 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwshneg1pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1e-06 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwsh1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=1.5e-06 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwshneg1p5pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-1.5e-06 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwsh2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=2e-06 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwshneg2pv(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** pv=-2e-06 (km^2/kg/s) surface vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - vwshtrop(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** tropopause vertical speed shear [1/s]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - watrsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface water runoff [kg/m^2]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray - wiltsfc(ens, time, lat, lon)float32dask.array<chunksize=(31, 65, 80, 80), meta=np.ndarray>
- long_name :
- ** surface wilting point [fraction]
Array Chunk Bytes 1.95 GiB 49.19 MiB Shape (31, 65, 361, 720) (31, 65, 80, 80) Count 46 Tasks 45 Chunks Type float32 numpy.ndarray
- title :
- ALL GFS Ensemble .5 Degree (Additional Parms) starting from 00Z18oct2021, downloaded Oct 18 06:43 UTC
- Conventions :
- COARDS GrADS
- dataType :
- Grid
- history :
- Mon Oct 18 18:35:45 UTC 2021 : imported by GrADS Data Server 2.0
We have just used Xarray’s Dask feature to fetch the remote data lazily. Dask will bring you lots of ease while dealing with big-sized datasets.
Quick look at inside the GEFS data¶
# Some of the variables
for i, (key, value) in enumerate(data.data_vars.items()):
print(key)
if i == 5: break
print('\nvariable length is: ', len(data.data_vars))
absvprs
no4lftxsfc
no5wavh500mb
acpcpsfc
albdosfc
aptmp2m
variable length is: 279
# Dimensions of the dataset
data.dims
Frozen({'ens': 31, 'time': 65, 'lev': 31, 'lat': 361, 'lon': 720})
Here, the ens
dimension corresponds to the 31 ensemble members of the GEFS data. That means we have 31 unique disturbed model runs in total.
Shrink the data¶
# Let's choose the variables we are going to study with
variables = ['tmpsfc', 'gustsfc']
time_range = 30
# shrink lat lon to nearest Turkey values
lat_range = [34, 44]
lon_range = [24, 47]
data_shrinked = data[variables].isel(time = slice(0,time_range))\
.sel(lat = slice(lat_range[0], lat_range[1]),
lon = slice(lon_range[0], lon_range[1]))
# quick look
data_shrinked['tmpsfc'][0, 0, :, :].plot()
<matplotlib.collections.QuadMesh at 0x1b548772c10>

Clip data into the shape of Turkey¶
The data itself is big-sized that we can not, remotely, deal with the whole part of it. Thus, we are going to clip the data into the shape of Turkey.
# check for the dataset reference system
data_shrinked.rio.crs
Notice that nothing appeared that means the data does not belong to any geographic reference system yet. We are going to assign WGS-84 as the CRS of the GEFS data. For more info on WGS-84, visit: https://en.wikipedia.org/wiki/World_Geodetic_System#WGS84
# assign WGS-84 (epsg:4326)
data_shrinked = data_shrinked.rio.write_crs('epsg:4326')
# now check the reference system
data_shrinked.rio.crs
CRS.from_epsg(4326)
# Open the shapefile data on which the data is going to be clipped.
turkey_shape = r'C:/Users/USER/JupyterLab/AFAD_PROJECT/Codes/Threshold_Analysis/datasets/Shapefiles/tr_iller_ilceler_adjusted/tr_iller_ilceler2.shp'
shpdata = gpd.read_file(turkey_shape)
# tell rioxarray that our x and y dimensions are those:
data_shrinked = data_shrinked.rio.set_spatial_dims(x_dim='lon', y_dim='lat')
# clip the data into Turkey shapefile
clipped_data = data_shrinked.rio.clip(shpdata.geometry.apply(mapping), shpdata.crs, drop=True)
Numerical summary measures¶
A bunch of the numerical summary measure methods (location, spread, skewness, etc.) is defined in various statistical textbooks (Statistical Methods in Atmospheric Sciences)
Here, we are going to calculate and compare some of them:
For location measures: mean, 50th percentile (0.5 quantiles), and trimean.
For spread measures: IQR, standard deviation, median absolute deviation.
For Skewness measures: Yule-Kendall skewness
Define¶
# Class for calculating numerical summary measures
class numericalSummaryMeasures:
"""
Calculates location, spread, symmetry and kurtosis over ensemble members.
"""
def __init__(self, clippedData):
self.data = clippedData
# quantiles
self.q025 = self.data.quantile(0.25, dim='ens')
self.q05 = self.data.quantile(0.5, dim='ens')
self.q075 = self.data.quantile(0.75, dim='ens')
def location(self, ):
"""
Calculates mean of the given dataset with location methods.
"""
# mean
mean = self.data.mean(dim='ens')
# trimean
trimean = (self.q025 + 2*self.q05 + self.q075) / 4
# attributes
mean.attrs['NSM'] = 'Mean'
self.q05.attrs['NSM'] = 'Median'
trimean.attrs['NSM'] = 'Trimean'
return mean, self.q05, trimean.drop('quantile')
def spread(self, ):
"""
Calculates spread of the given dataset with spread methods.
"""
# IQR
iqr = self.q075 - self.q025
# Std Deviation
std = self.data.std(dim='ens')
# Median Absolute Deviation
xi_minus_q05_abs = np.abs(self.data - self.q05)
mad = xi_minus_q05_abs.quantile(0.5, dim='ens')
# attributes
iqr.attrs['NSM'] = 'Interquantile Range (IQR)'
std.attrs['NSM'] = 'Standard Deviation'
mad.attrs['NSM'] = 'Median Absolute Deviation'
return iqr, std, mad.drop('quantile')
def symmetry_curtosis(self, ):
"""
Calculates symmetry-curtosis of the given dataset.
"""
# yule-kendal skewness coefficient
YK = (self.q025 - 2*self.q05 + self.q075) / (self.q075 - self.q025)
# attributes
YK.attrs['NSM'] = 'Yule-Kendall Skewness'
return YK.drop('quantile')
Calculate¶
Calculate NSMs using defined class
# compute NSM
# initiate instance
nsm = numericalSummaryMeasures(clipped_data)
mean, q05, trimean = nsm.location()
iqr, std, mad = nsm.spread()
yk = nsm.symmetry_curtosis()
NSM Plots¶
Without plotting the results we will not be able to see how ensemble members differ from each other. Let’s see their spatial features.
# variable to be plotted
variable = 'tmpsfc'
Location¶
Mean¶
# do not plot whole time range but 1 in 5.
mean[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
robust=True,
cbar_kwargs={
"label": "Temperature (K)",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b5471ba340>

Median¶
# do not plot whole time range but 1 in 5.
q05[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
robust=True,
cbar_kwargs={
"label": "Temperature (K)",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b5498ade20>

Trimean¶
# do not plot whole time range but 1 in 5.
trimean[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
robust=True,
cbar_kwargs={
"label": "Temperature (K)",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b54e221e20>

Realize the daily surface temperature cycle! :)
Spread¶
IQR¶
# do not plot whole time range but 1 in 5.
iqr[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
vmin = 0, vmax = 2.5,
robust=True,
cbar_kwargs={
"label": "IQR (K)",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b54d12ff70>

Standard Deviation¶
# do not plot whole time range but 1 in 5.
std[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
vmin = 0, vmax = 2.5,
robust=True,
cbar_kwargs={
"label": "std (K)",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b54b977df0>

Median Absolute Deviation¶
# do not plot whole time range but 1 in 5.
mad[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
vmin = 0, vmax = 2.5,
robust=True,
cbar_kwargs={
"label": "mad (K)",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b5540defd0>

Agreement between ensemble members is accumulating by time, right?
Also, realize the daily cycle of the spread!
Skewness¶
Yule-Kendall¶
# do not plot whole time range but 1 in 5.
yk[variable][::5, :, :].plot(x="lon", y="lat", col="time",
col_wrap=3, cmap = 'rainbow',
robust=True,
cbar_kwargs={
"label": "YK skewness",
})
<xarray.plot.facetgrid.FacetGrid at 0x1b54992ea60>

Hmm, this plot is colorful!
What could mean the negative and positive values of skewness?
It is Over!
Now, we know how to deal with ensemble datasets and calculate some of the very important numerical summary measures.
It is your turn to interpret what these plots mean??
Blog by:
Kutay DÖNMEZ :
LinkedIn | Github | Twitter | Instagram
Berkay DÖNMEZ :
Linkedin | Github | Twitter | Instagram