In [6]:
import xarray as xr


/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/dask/config.py:131: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
  data = yaml.load(f.read()) or {}

In [45]:
import iris

In [70]:
import cf_units

In [1]:
import glob

In [2]:
infile_list = glob.glob('/g/data/p66/cm2704/archive/bj594/history/ocn/ocean_month.nc-*')

In [4]:
infile_list.sort()

Iris


In [8]:
cube = iris.load_cube(infile, 'implicit vert diffusion of heat')


/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'tx_trans_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'tx_trans_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_gyre_pacific': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'salt_xflux_ndiffuse_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'salt_xflux_ndiffuse_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_advect_arctic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'tx_trans': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'tx_trans': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_gm': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_gm': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'salt_yflux_ndiffuse_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_yflux_ndiffuse_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_submeso': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_submeso': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_advect_southern': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_ndiffuse_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_ndiffuse_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'psiu': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'psiu': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_gyre_indian': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_over_indian': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_gyre_southern': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_advect_atlantic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_advect_atlantic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'ty_trans_gm': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'ty_trans_gm': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'salt_xflux_adv': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'salt_xflux_adv': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_advect_pacific': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_gyre_arctic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_submeso_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_submeso_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_gyre_indian': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_over_indian': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_gyre_southern': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_gyre_global': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_ndiffuse': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_ndiffuse': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'salt_yflux_submeso': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_yflux_submeso': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_advect_arctic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'ty_trans': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'ty_trans': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_submeso': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_submeso': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_submeso_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_submeso_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_gyre_arctic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_ndiffuse': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_ndiffuse': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_gyre_pacific': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_sigma': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_sigma': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_advect_southern': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'salt_yflux_ndiffuse': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_yflux_ndiffuse': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_sigma': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_sigma': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_advect_pacific': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'ty_trans_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'ty_trans_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_over_southern': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'ty_trans_submeso': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'ty_trans_submeso': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_adv': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_adv': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'salt_xflux_submeso': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'salt_xflux_submeso': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_advect_global': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_ndiffuse_int_z': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_ndiffuse_int_z': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_over_southern': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_gyre_atlantic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_over_global': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'temp_xflux_gm': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'temp_xflux_gm': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'salt_yflux_gm': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_yflux_gm': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_gyre_global': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_over_atlantic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'salt_yflux_adv': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_yflux_adv': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_advect_indian': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_over_arctic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_over_global': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'tx_trans_gm': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'tx_trans_gm': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_over_pacific': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'tx_trans_submeso': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'tx_trans_submeso': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_advect_global': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'temp_yflux_adv': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_yflux_adv': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'salt_xflux_gm': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'salt_xflux_gm': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_c' referenced by variable 'salt_xflux_ndiffuse': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_t' referenced by variable 'salt_xflux_ndiffuse': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'st_ocean', 'yt_ocean', 'xu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'psiv': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'psiv': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_over_arctic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'ekman_we': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'ekman_we': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolon_t' referenced by variable 'tau_curl': Dimensions ('yt_ocean', 'xt_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'tau_curl': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean', 'xt_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'salt_merid_flux_advect_indian': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_over_atlantic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_gyre_atlantic': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:1033: UserWarning: Ignoring variable 'geolat_c' referenced by variable 'temp_merid_flux_over_pacific': Dimensions ('yu_ocean', 'xu_ocean') do not span ('time', 'yu_ocean')
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'kmt' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'sss' invalid units 'psu'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'agm_grid_scaling' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'kmu' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'salt' invalid units 'psu'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'viscosity_scaling' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1725: UnknownCellMethodWarning: NetCDF variable 'hblt_max' contains unknown cell method 'max'
  warnings.warn(message=msg, category=UnknownCellMethodWarning)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'salt_rhodzt' invalid units 'psu*(kg/m^3)*m'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'mix_efficiency' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'f_vis' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'bottom_salt' invalid units 'psu'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'tide_speed_mask' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'sw_frac' invalid units 'dimensionless'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'sst_sq' invalid units 'squared degrees K'
  warnings.warn(msg)
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/_pyke_rules/compiled_krb/fc_rules_cf_fc.py:1932: UserWarning: Ignoring netCDF variable 'drhodsalinity' invalid units 'kg/m^3/psu'
  warnings.warn(msg)

In [9]:
cube


Out[9]:
Implicit Vert Diffusion Of Heat (Watts/m^2) time tcell zstar depth latitude longitude
Shape 6 50 300 360
Dimension coordinates
time x - - -
tcell zstar depth - x - -
latitude - - x -
cartesian_axis Y
longitude - - - x
cartesian_axis X
Auxiliary coordinates
latitude - - x x
valid_range array -91 91 dtype float32
longitude - - x x
valid_range array -281 361 dtype float32
Attributes
filename ocean_month.nc-20121231
grid_tile N/A
grid_type regular
time_avg_info average_T1,average_T2,average_DT
title AusCOM_CMIP5
valid_range [-1.e+16 1.e+16]
Cell methods
mean time

In [10]:
coord_names = [coord.name() for coord in cube.dim_coords]

In [11]:
coord_names


Out[11]:
['time', 'tcell zstar depth', 'latitude', 'longitude']

In [12]:
cube.coord('tcell zstar depth')


Out[12]:
DimCoord(array([5.00000000e+00, 1.50000000e+01, 2.50000000e+01, 3.50000000e+01,
       4.50000000e+01, 5.50000000e+01, 6.50000000e+01, 7.50000000e+01,
       8.50000000e+01, 9.50000000e+01, 1.05000000e+02, 1.15000000e+02,
       1.25000000e+02, 1.35000000e+02, 1.45000000e+02, 1.55000000e+02,
       1.65000000e+02, 1.75000000e+02, 1.85000000e+02, 1.95000000e+02,
       2.05000000e+02, 2.16846756e+02, 2.41349014e+02, 2.80780731e+02,
       3.43250458e+02, 4.27315552e+02, 5.36715637e+02, 6.65414124e+02,
       8.12781616e+02, 9.69065125e+02, 1.13093494e+03, 1.28960461e+03,
       1.45577014e+03, 1.62292566e+03, 1.80155811e+03, 1.98485461e+03,
       2.18290479e+03, 2.38841748e+03, 2.61093506e+03, 2.84256445e+03,
       3.09220483e+03, 3.35129468e+03, 3.62805762e+03, 3.91326440e+03,
       4.21449512e+03, 4.52191797e+03, 4.84256592e+03, 5.16612988e+03,
       5.49924512e+03, 5.83129443e+03]), standard_name=None, units=Unit('meters'), long_name='tcell zstar depth', var_name='st_ocean', attributes={'cartesian_axis': 'Z', 'edges': 'st_edges_ocean', 'positive': 'down'})

In [14]:
cube.coord('tcell latitude')


---------------------------------------------------------------------------
CoordinateNotFoundError                   Traceback (most recent call last)
<ipython-input-14-3d0eceabc6e7> in <module>
----> 1 cube.coord('tcell latitude')

/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/cube.py in coord(self, name_or_coord, standard_name, long_name, var_name, attributes, axis, contains_dimension, dimensions, coord_system, dim_coords)
   1461             msg = 'Expected to find exactly 1 %s coordinate, but found ' \
   1462                   'none.' % bad_name
-> 1463             raise iris.exceptions.CoordinateNotFoundError(msg)
   1464 
   1465         return coords[0]

CoordinateNotFoundError: 'Expected to find exactly 1 tcell latitude coordinate, but found none.'

xarray


In [28]:
dset = xr.open_mfdataset(infile_list, decode_times=False)

In [29]:
dset


Out[29]:
<xarray.Dataset>
Dimensions:                          (grid_xt_ocean: 360, grid_xu_ocean: 360, grid_yt_ocean: 300, grid_yu_ocean: 300, nv: 2, potrho: 80, potrho_edges: 81, st_edges_ocean: 51, st_ocean: 50, sw_edges_ocean: 51, sw_ocean: 50, time: 1980, xt_ocean: 360, xu_ocean: 360, yt_ocean: 300, yu_ocean: 300)
Coordinates:
  * xt_ocean                         (xt_ocean) float64 -279.5 -278.5 ... 79.5
  * yt_ocean                         (yt_ocean) float64 -77.88 -77.63 ... 89.77
  * nv                               (nv) float64 1.0 2.0
  * xu_ocean                         (xu_ocean) float64 -279.0 -278.0 ... 80.0
  * yu_ocean                         (yu_ocean) float64 -77.75 -77.51 ... 90.0
  * st_ocean                         (st_ocean) float64 5.0 15.0 ... 5.831e+03
  * st_edges_ocean                   (st_edges_ocean) float64 0.0 10.0 ... 6e+03
  * sw_ocean                         (sw_ocean) float64 10.0 20.0 ... 6e+03
  * sw_edges_ocean                   (sw_edges_ocean) float64 5.0 15.0 ... 6e+03
  * grid_xu_ocean                    (grid_xu_ocean) float64 -279.0 ... 80.0
  * grid_yt_ocean                    (grid_yt_ocean) float64 -77.88 ... 89.77
  * potrho                           (potrho) float64 1.028e+03 ... 1.038e+03
  * potrho_edges                     (potrho_edges) float64 1.028e+03 ... 1.038e+03
  * grid_xt_ocean                    (grid_xt_ocean) float64 -279.5 ... 79.5
  * grid_yu_ocean                    (grid_yu_ocean) float64 -77.75 ... 90.0
    geolat_c                         (yu_ocean, xu_ocean) float32 -77.75317 ... 65.0
    geolon_c                         (yu_ocean, xu_ocean) float32 -279.0 ... 80.0
    geolat_t                         (yt_ocean, xt_ocean) float32 -77.876625 ... 65.21044
    geolon_t                         (yt_ocean, xt_ocean) float32 -279.5 ... 79.99112
  * time                             (time) float64 15.5 45.0 ... 6.025e+04
Data variables:
    ht                               (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    hu                               (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    dxt                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    dyt                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    dxu                              (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    dyu                              (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    area_t                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    area_u                           (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    kmt                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    kmu                              (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pbot_t                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    patm_t                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sea_level                        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sea_level_sq                     (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    rho                              (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    rho_dzt                          (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    dht                              (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    pot_temp                         (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    sst                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sst_sq                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    salt                             (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    sss                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pot_rho_0                        (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    age_global                       (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    psiu                             (time, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    mld                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    mld_sq                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    hblt_max                         (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    u                                (time, st_ocean, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    v                                (time, st_ocean, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tz_trans                         (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tz_trans_sq                      (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tx_trans                         (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    ty_trans                         (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tx_trans_rho                     (time, potrho, grid_yt_ocean, grid_xu_ocean) float32 dask.array<shape=(1980, 80, 300, 360), chunksize=(6, 80, 300, 360)>
    ty_trans_rho                     (time, potrho, grid_yu_ocean, grid_xt_ocean) float32 dask.array<shape=(1980, 80, 300, 360), chunksize=(6, 80, 300, 360)>
    tx_trans_gm                      (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    ty_trans_gm                      (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tx_trans_rho_gm                  (time, potrho, grid_yt_ocean, grid_xu_ocean) float32 dask.array<shape=(1980, 80, 300, 360), chunksize=(6, 80, 300, 360)>
    ty_trans_rho_gm                  (time, potrho, grid_yu_ocean, grid_xt_ocean) float32 dask.array<shape=(1980, 80, 300, 360), chunksize=(6, 80, 300, 360)>
    tx_trans_submeso                 (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    ty_trans_submeso                 (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tx_trans_int_z                   (time, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    ty_trans_int_z                   (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_xflux_ndiffuse_int_z        (time, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_yflux_ndiffuse_int_z        (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_xflux_sigma                 (time, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_yflux_sigma                 (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_yflux_submeso_int_z         (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_xflux_submeso_int_z         (time, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_merid_flux_advect_global    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_over_global      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_gyre_global      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_advect_global    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_over_global      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_gyre_global      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_advect_southern  (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_over_southern    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_gyre_southern    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_advect_southern  (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_over_southern    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_gyre_southern    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_advect_atlantic  (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_over_atlantic    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_gyre_atlantic    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_advect_atlantic  (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_over_atlantic    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_gyre_atlantic    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_advect_pacific   (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_over_pacific     (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_gyre_pacific     (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_advect_pacific   (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_over_pacific     (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_gyre_pacific     (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_advect_arctic    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_over_arctic      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_gyre_arctic      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_advect_arctic    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_over_arctic      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_gyre_arctic      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_advect_indian    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_over_indian      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    temp_merid_flux_gyre_indian      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_advect_indian    (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_over_indian      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    salt_merid_flux_gyre_indian      (time, yu_ocean) float32 dask.array<shape=(1980, 300), chunksize=(6, 300)>
    lprec                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    fprec                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    evap                             (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    runoff                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    ice_calving                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    melt                             (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pme_river                        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_salt_flux_ice                (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_salt_flux_runoff             (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_hflux_from_water_prec        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_hflux_from_water_evap        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_hflux_from_runoff            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_hflux_from_calving           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    fprec_melt_heat                  (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    calving_melt_heat                (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    lw_heat                          (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    evap_heat                        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sens_heat                        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    swflx                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sw_heat                          (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tau_x                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    tau_y                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    diff_cbt_t                       (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    frazil_2d                        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pme                              (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pme_mass                         (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    river                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    swflx_vis                        (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sw_frac                          (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    f_vis                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_hflux_coupler                (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_hflux_pme                    (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    tau_curl                         (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    ekman_we                         (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    salt_calvingmix                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_calvingmix                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_runoffmix                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_rivermix                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_runoff                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_calving                     (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pme_correct                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pme_net                          (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    wfimelt                          (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    wfiform                          (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    pbot0                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    anompb                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    eta_t                            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    eta_u                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    rhobarz                          (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    conv_rho_ud_t                    (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    urhod                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    vrhod                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    u_surf                           (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    v_surf                           (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    u_bott                           (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    v_bott                           (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bottom_temp                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bottom_salt                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bottom_age_global                (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp                             (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_xflux_adv                   (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_yflux_adv                   (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_zflux_adv                   (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_xflux_adv                   (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_yflux_adv                   (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_zflux_adv                   (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_vdiffuse_impl               (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_vdiffuse_impl               (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_tendency                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_tendency                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_tendency_expl               (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_tendency_expl               (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_submeso                     (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_submeso                     (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_xflux_submeso               (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_yflux_submeso               (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_zflux_submeso               (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_xflux_gm                    (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_yflux_gm                    (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_zflux_gm                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_rhodzt                      (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_xflux_submeso               (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_yflux_submeso               (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_zflux_submeso               (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_xflux_gm                    (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_yflux_gm                    (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_zflux_gm                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_rhodzt                      (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_xflux_ndiffuse              (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_yflux_ndiffuse              (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_zflux_ndiffuse              (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_xflux_ndiffuse              (time, st_ocean, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_yflux_ndiffuse              (time, st_ocean, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_zflux_ndiffuse              (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    neutral_rho                      (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    pot_rho_2                        (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    potrho_mix_base                  (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    potrho_mix_depth                 (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    press                            (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    wt                               (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    wrhot                            (time, sw_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    drhodtheta                       (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    drhodsalinity                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    cabbeling                        (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    thermobaricity                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_xflux_ndiffuse_int_z        (time, yt_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    salt_yflux_ndiffuse_int_z        (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    psiv                             (time, yu_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_sigma                       (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    mixdownslope_temp                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    mixdownslope_salt                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    eddy_depth                       (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    agm_grid_scaling                 (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bv_freq                          (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    rossby                           (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    rossby_radius                    (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    buoy_freq_ave_submeso            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    hblt_submeso                     (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    viscosity_scaling                (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    visc_crit_bih                    (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    lap_fric_u                       (time, st_ocean, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    lap_fric_v                       (time, st_ocean, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    diff_cbt_wave                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    diff_cbt_drag                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    bvfreq_bottom                    (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    mix_efficiency                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    power_waves                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    power_diss_wave                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    power_diss_drag                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    energy_flux                      (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    diff_cbt_kpp_t                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    diff_cbt_kpp_s                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    tide_speed_wave                  (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    tide_speed_drag                  (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    tide_speed_mask                  (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    roughness_length                 (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    roughness_amp                    (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bmf_u                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bmf_v                            (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bottom_power_u                   (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    bottom_power_v                   (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    wind_power_u                     (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    wind_power_v                     (time, yu_ocean, xu_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    net_sfc_heating                  (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    frazil_3d                        (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    sfc_salt_flux_restore            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_salt_flux_coupler            (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_salt_flux_pme                (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_salt_flux_prec               (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    sfc_salt_flux_evap               (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    temp_advection                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_nonlocal_KPP                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_eta_smooth                  (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    neutral_gm_temp                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    neutral_diffusion_temp           (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_vdiffuse_diff_cbt           (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_vdiffuse_diff_cbt_conv      (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_vdiffuse_k33                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_vdiffuse_sbc                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    temp_sigma_diff                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_advection                   (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_nonlocal_KPP                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_eta_smooth                  (time, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 300, 360), chunksize=(6, 300, 360)>
    neutral_gm_salt                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    neutral_diffusion_salt           (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_vdiffuse_diff_cbt           (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_vdiffuse_diff_cbt_conv      (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_vdiffuse_k33                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_vdiffuse_sbc                (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_rivermix                    (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    salt_sigma_diff                  (time, st_ocean, yt_ocean, xt_ocean) float32 dask.array<shape=(1980, 50, 300, 360), chunksize=(6, 50, 300, 360)>
    average_T1                       (time) float64 dask.array<shape=(1980,), chunksize=(6,)>
    average_T2                       (time) float64 dask.array<shape=(1980,), chunksize=(6,)>
    average_DT                       (time) float64 dask.array<shape=(1980,), chunksize=(6,)>
    time_bounds                      (time, nv) float64 dask.array<shape=(1980, 2), chunksize=(6, 2)>
Attributes:
    filename:   ocean_month.nc-18500630
    title:      AusCOM_CMIP5
    grid_type:  regular
    grid_tile:  N/A

In [31]:
dset['time']


Out[31]:
<xarray.DataArray 'time' (time: 1980)>
array([1.55000e+01, 4.50000e+01, 7.45000e+01, ..., 6.01885e+04, 6.02190e+04,
       6.02495e+04])
Coordinates:
  * time     (time) float64 15.5 45.0 74.5 ... 6.019e+04 6.022e+04 6.025e+04
Attributes:
    long_name:       time
    units:           days since 1850-01-01 00:00:00
    cartesian_axis:  T
    calendar_type:   GREGORIAN
    calendar:        GREGORIAN
    bounds:          time_bounds

In [23]:
dset['temp'].data.max()


/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/numpy/core/_methods.py:28: RuntimeWarning: invalid value encountered in reduce
  return umr_maximum(a, axis, None, out, keepdims, initial)
Out[23]:
nan

In [41]:
dset['geolat_t']


Out[41]:
<xarray.DataArray 'geolat_t' (yt_ocean: 300, xt_ocean: 360)>
array([[-77.876625, -77.876625, -77.876625, ..., -77.876625, -77.876625,
        -77.876625],
       [-77.629715, -77.629715, -77.629715, ..., -77.629715, -77.629715,
        -77.629715],
       [-77.38171 , -77.38171 , -77.38171 , ..., -77.38171 , -77.38171 ,
        -77.38171 ],
       ...,
       [ 65.209656,  65.62409 ,  66.032196, ...,  66.032196,  65.62409 ,
         65.209656],
       [ 65.21018 ,  65.62565 ,  66.03475 , ...,  66.03475 ,  65.62565 ,
         65.21018 ],
       [ 65.21044 ,  65.62643 ,  66.03603 , ...,  66.03603 ,  65.62643 ,
         65.21044 ]], dtype=float32)
Coordinates:
  * xt_ocean  (xt_ocean) float64 -279.5 -278.5 -277.5 -276.5 ... 77.5 78.5 79.5
  * yt_ocean  (yt_ocean) float64 -77.88 -77.63 -77.38 ... 88.87 89.32 89.77
    geolat_t  (yt_ocean, xt_ocean) float32 -77.876625 -77.876625 ... 65.21044
    geolon_t  (yt_ocean, xt_ocean) float32 -279.5 -278.5 ... 79.973366 79.99112
Attributes:
    long_name:     tracer latitude
    units:         degrees_N
    valid_range:   [-91.  91.]
    cell_methods:  time: point

New cube


In [48]:
ref_cube = iris.load_cube('/g/data/fs38/publications/CMIP6/CMIP/CSIRO-ARCCSS/ACCESS-CM2/historical/r1i1p1f1/Omon/thetao/gn/v20191108/thetao_Omon_ACCESS-CM2_historical_r1i1p1f1_gn_185001-185912.nc', 'sea_water_potential_temperature')


/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:798: UserWarning: Missing CF-netCDF measure variable 'areacello', referenced by netCDF variable 'thetao'
  warnings.warn(message % (variable_name, nc_var_name))
/g/data/r87/dbi599/miniconda3/envs/ocean/lib/python3.6/site-packages/iris/fileformats/cf.py:798: UserWarning: Missing CF-netCDF measure variable 'volcello', referenced by netCDF variable 'thetao'
  warnings.warn(message % (variable_name, nc_var_name))

In [49]:
ref_cube


Out[49]:
Sea Water Potential Temperature (degC) time depth cell index along second dimension cell index along first dimension
Shape 120 50 300 360
Dimension coordinates
time x - - -
depth - x - -
cell index along second dimension - - x -
cell index along first dimension - - - x
Auxiliary coordinates
latitude - - x x
longitude - - x x
Attributes
Conventions CF-1.7 CMIP-6.2
activity_id CMIP
branch_method standard
branch_time_in_child 0.0
branch_time_in_parent 0.0
cmor_version 3.4.0
comment Diagnostic should be contributed even for models using conservative temperature...
creation_date 2019-11-08T18:41:07Z
data_specs_version 01.00.30
experiment all-forcing simulation of the recent past
experiment_id historical
external_variables areacello volcello
forcing_index 1
frequency mon
further_info_url https://furtherinfo.es-doc.org/CMIP6.CSIRO-ARCCSS.ACCESS-CM2.historica...
grid native atmosphere N96 grid (144x192 latxlon)
grid_label gn
history 2019-11-08T18:41:01Z altered by CMOR: replaced missing value flag (-1e+20)...
initialization_index 1
institution CSIRO (Commonwealth Scientific and Industrial Research Organisation, Aspendale,...
institution_id CSIRO-ARCCSS
license CMIP6 model data produced by CSIRO is licensed under a Creative Commons...
mip_era CMIP6
nominal_resolution 250 km
notes Exp: CM2-historical; Local ID: bj594; Variable: thetao (['pot_temp'])
parent_activity_id CMIP
parent_experiment_id piControl
parent_mip_era CMIP6
parent_source_id ACCESS-CM2
parent_time_units days since 0950-01-01
parent_variant_label r1i1p1f1
physics_index 1
product model-output
realization_index 1
realm ocean
run_variant forcing: GHG, Oz, SA, Sl, Vl, BC, OC, (GHG = CO2, N2O, CH4, CFC11, CFC12,...
source ACCESS-CM2 (2019):
aerosol UKCA-GLOMAP-mode
atmos MetUM-HadGEM3-GA7.1...
source_id ACCESS-CM2
source_type AOGCM
sub_experiment none
sub_experiment_id none
table_id Omon
table_info Creation Date:(30 April 2019) MD5:e14f55f257cceafb2523e41244962371
title ACCESS-CM2 output prepared for CMIP6
tracking_id hdl:21.14100/e5a03e08-d970-41ef-949d-54f4b36cd26b
variable_id thetao
variant_label r1i1p1f1
version v20191108
Cell methods
mean where sea area
mean time

In [50]:
ref_cube.shape


Out[50]:
(120, 50, 300, 360)

In [51]:
dset['temp_eta_smooth'].shape


Out[51]:
(1980, 300, 360)

In [54]:
ref_cube.dim_coords


Out[54]:
(DimCoord(array([  15.5,   45. ,   74.5,  105. ,  135.5,  166. ,  196.5,  227.5,
         258. ,  288.5,  319. ,  349.5,  380.5,  410. ,  439.5,  470. ,
         500.5,  531. ,  561.5,  592.5,  623. ,  653.5,  684. ,  714.5,
         745.5,  775.5,  805.5,  836. ,  866.5,  897. ,  927.5,  958.5,
         989. , 1019.5, 1050. , 1080.5, 1111.5, 1141. , 1170.5, 1201. ,
        1231.5, 1262. , 1292.5, 1323.5, 1354. , 1384.5, 1415. , 1445.5,
        1476.5, 1506. , 1535.5, 1566. , 1596.5, 1627. , 1657.5, 1688.5,
        1719. , 1749.5, 1780. , 1810.5, 1841.5, 1871. , 1900.5, 1931. ,
        1961.5, 1992. , 2022.5, 2053.5, 2084. , 2114.5, 2145. , 2175.5,
        2206.5, 2236.5, 2266.5, 2297. , 2327.5, 2358. , 2388.5, 2419.5,
        2450. , 2480.5, 2511. , 2541.5, 2572.5, 2602. , 2631.5, 2662. ,
        2692.5, 2723. , 2753.5, 2784.5, 2815. , 2845.5, 2876. , 2906.5,
        2937.5, 2967. , 2996.5, 3027. , 3057.5, 3088. , 3118.5, 3149.5,
        3180. , 3210.5, 3241. , 3271.5, 3302.5, 3332. , 3361.5, 3392. ,
        3422.5, 3453. , 3483.5, 3514.5, 3545. , 3575.5, 3606. , 3636.5]), bounds=array([[   0.,   31.],
        [  31.,   59.],
        [  59.,   90.],
        [  90.,  120.],
        [ 120.,  151.],
        [ 151.,  181.],
        [ 181.,  212.],
        [ 212.,  243.],
        [ 243.,  273.],
        [ 273.,  304.],
        [ 304.,  334.],
        [ 334.,  365.],
        [ 365.,  396.],
        [ 396.,  424.],
        [ 424.,  455.],
        [ 455.,  485.],
        [ 485.,  516.],
        [ 516.,  546.],
        [ 546.,  577.],
        [ 577.,  608.],
        [ 608.,  638.],
        [ 638.,  669.],
        [ 669.,  699.],
        [ 699.,  730.],
        [ 730.,  761.],
        [ 761.,  790.],
        [ 790.,  821.],
        [ 821.,  851.],
        [ 851.,  882.],
        [ 882.,  912.],
        [ 912.,  943.],
        [ 943.,  974.],
        [ 974., 1004.],
        [1004., 1035.],
        [1035., 1065.],
        [1065., 1096.],
        [1096., 1127.],
        [1127., 1155.],
        [1155., 1186.],
        [1186., 1216.],
        [1216., 1247.],
        [1247., 1277.],
        [1277., 1308.],
        [1308., 1339.],
        [1339., 1369.],
        [1369., 1400.],
        [1400., 1430.],
        [1430., 1461.],
        [1461., 1492.],
        [1492., 1520.],
        [1520., 1551.],
        [1551., 1581.],
        [1581., 1612.],
        [1612., 1642.],
        [1642., 1673.],
        [1673., 1704.],
        [1704., 1734.],
        [1734., 1765.],
        [1765., 1795.],
        [1795., 1826.],
        [1826., 1857.],
        [1857., 1885.],
        [1885., 1916.],
        [1916., 1946.],
        [1946., 1977.],
        [1977., 2007.],
        [2007., 2038.],
        [2038., 2069.],
        [2069., 2099.],
        [2099., 2130.],
        [2130., 2160.],
        [2160., 2191.],
        [2191., 2222.],
        [2222., 2251.],
        [2251., 2282.],
        [2282., 2312.],
        [2312., 2343.],
        [2343., 2373.],
        [2373., 2404.],
        [2404., 2435.],
        [2435., 2465.],
        [2465., 2496.],
        [2496., 2526.],
        [2526., 2557.],
        [2557., 2588.],
        [2588., 2616.],
        [2616., 2647.],
        [2647., 2677.],
        [2677., 2708.],
        [2708., 2738.],
        [2738., 2769.],
        [2769., 2800.],
        [2800., 2830.],
        [2830., 2861.],
        [2861., 2891.],
        [2891., 2922.],
        [2922., 2953.],
        [2953., 2981.],
        [2981., 3012.],
        [3012., 3042.],
        [3042., 3073.],
        [3073., 3103.],
        [3103., 3134.],
        [3134., 3165.],
        [3165., 3195.],
        [3195., 3226.],
        [3226., 3256.],
        [3256., 3287.],
        [3287., 3318.],
        [3318., 3346.],
        [3346., 3377.],
        [3377., 3407.],
        [3407., 3438.],
        [3438., 3468.],
        [3468., 3499.],
        [3499., 3530.],
        [3530., 3560.],
        [3560., 3591.],
        [3591., 3621.],
        [3621., 3652.]]), standard_name='time', units=Unit('days since 1850-01-01', calendar='proleptic_gregorian'), long_name='time', var_name='time'),
 DimCoord(array([5.00000000e+00, 1.50000000e+01, 2.50000000e+01, 3.50000000e+01,
        4.50000000e+01, 5.50000000e+01, 6.50000000e+01, 7.50000000e+01,
        8.50000000e+01, 9.50000000e+01, 1.05000000e+02, 1.15000000e+02,
        1.25000000e+02, 1.35000000e+02, 1.45000000e+02, 1.55000000e+02,
        1.65000000e+02, 1.75000000e+02, 1.85000000e+02, 1.95000000e+02,
        2.05000000e+02, 2.16846756e+02, 2.41349014e+02, 2.80780731e+02,
        3.43250458e+02, 4.27315552e+02, 5.36715637e+02, 6.65414124e+02,
        8.12781616e+02, 9.69065125e+02, 1.13093494e+03, 1.28960461e+03,
        1.45577014e+03, 1.62292566e+03, 1.80155811e+03, 1.98485461e+03,
        2.18290479e+03, 2.38841748e+03, 2.61093506e+03, 2.84256445e+03,
        3.09220483e+03, 3.35129468e+03, 3.62805762e+03, 3.91326440e+03,
        4.21449512e+03, 4.52191797e+03, 4.84256592e+03, 5.16612988e+03,
        5.49924512e+03, 5.83129443e+03]), bounds=array([[   0.        ,   10.        ],
        [  10.        ,   20.        ],
        [  20.        ,   30.        ],
        [  30.        ,   40.        ],
        [  40.        ,   50.        ],
        [  50.        ,   60.        ],
        [  60.        ,   70.        ],
        [  70.        ,   80.        ],
        [  80.        ,   90.        ],
        [  90.        ,  100.        ],
        [ 100.        ,  110.        ],
        [ 110.        ,  120.        ],
        [ 120.        ,  130.        ],
        [ 130.        ,  140.        ],
        [ 140.        ,  150.        ],
        [ 150.        ,  160.        ],
        [ 160.        ,  170.        ],
        [ 170.        ,  180.        ],
        [ 180.        ,  190.        ],
        [ 190.        ,  200.        ],
        [ 200.        ,  210.92337036],
        [ 210.92337036,  229.09788513],
        [ 229.09788513,  261.06488037],
        [ 261.06488037,  312.01559448],
        [ 312.01559448,  385.2829895 ],
        [ 385.2829895 ,  482.01559448],
        [ 482.01559448,  601.06488037],
        [ 601.06488037,  739.09790039],
        [ 739.09790039,  890.92340088],
        [ 890.92340088, 1050.        ],
        [1050.        , 1210.26977539],
        [1210.26977539, 1372.68737793],
        [1372.68737793, 1539.34790039],
        [1539.34790039, 1712.24194336],
        [1712.24194336, 1893.2064209 ],
        [1893.2064209 , 2083.87963867],
        [2083.87963867, 2285.66113281],
        [2285.66113281, 2499.67626953],
        [2499.67626953, 2726.74975586],
        [2726.74975586, 2967.38452148],
        [2967.38452148, 3221.74975586],
        [3221.74975586, 3489.67626953],
        [3489.67626953, 3770.66113281],
        [3770.66113281, 4063.87963867],
        [4063.87963867, 4368.20654297],
        [4368.20654297, 4682.24169922],
        [4682.24169922, 5004.34814453],
        [5004.34814453, 5332.6875    ],
        [5332.6875    , 5665.26953125],
        [5665.26953125, 6000.        ]]), standard_name='depth', units=Unit('m'), long_name='ocean depth coordinate', var_name='lev', attributes={'positive': 'down'}),
 DimCoord(array([  0,   1,   2,   3,   4,   5,   6,   7,   8,   9,  10,  11,  12,
         13,  14,  15,  16,  17,  18,  19,  20,  21,  22,  23,  24,  25,
         26,  27,  28,  29,  30,  31,  32,  33,  34,  35,  36,  37,  38,
         39,  40,  41,  42,  43,  44,  45,  46,  47,  48,  49,  50,  51,
         52,  53,  54,  55,  56,  57,  58,  59,  60,  61,  62,  63,  64,
         65,  66,  67,  68,  69,  70,  71,  72,  73,  74,  75,  76,  77,
         78,  79,  80,  81,  82,  83,  84,  85,  86,  87,  88,  89,  90,
         91,  92,  93,  94,  95,  96,  97,  98,  99, 100, 101, 102, 103,
        104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
        117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
        130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
        143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
        156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
        169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
        182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
        195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
        208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
        221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
        234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
        247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
        260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
        273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
        286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
        299], dtype=int32), standard_name=None, units=Unit('1'), long_name='cell index along second dimension', var_name='j'),
 DimCoord(array([  0,   1,   2,   3,   4,   5,   6,   7,   8,   9,  10,  11,  12,
         13,  14,  15,  16,  17,  18,  19,  20,  21,  22,  23,  24,  25,
         26,  27,  28,  29,  30,  31,  32,  33,  34,  35,  36,  37,  38,
         39,  40,  41,  42,  43,  44,  45,  46,  47,  48,  49,  50,  51,
         52,  53,  54,  55,  56,  57,  58,  59,  60,  61,  62,  63,  64,
         65,  66,  67,  68,  69,  70,  71,  72,  73,  74,  75,  76,  77,
         78,  79,  80,  81,  82,  83,  84,  85,  86,  87,  88,  89,  90,
         91,  92,  93,  94,  95,  96,  97,  98,  99, 100, 101, 102, 103,
        104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
        117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
        130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
        143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
        156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
        169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
        182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
        195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
        208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
        221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
        234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
        247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
        260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
        273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
        286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
        299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311,
        312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
        325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
        338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
        351, 352, 353, 354, 355, 356, 357, 358, 359], dtype=int32), standard_name=None, units=Unit('1'), long_name='cell index along first dimension', var_name='i'))

In [83]:
time_coord = iris.coords.DimCoord(dset['time'].values,
                                  standard_name='time',
                                  long_name='time',
                                  var_name='time',
                                  units=cf_units.Unit(dset['time'].units, calendar=dset['time'].calendar.lower()))

In [97]:
new_standard_name = dset['temp_eta_smooth'].long_name.replace(' ', '_')
iris.std_names.STD_NAMES[new_standard_name] = {'canonical_units': 'W m-2'}
new_cube = iris.cube.Cube(dset['temp_eta_smooth'].to_masked_array(),
                          standard_name=new_standard_name,
                          long_name=dset['temp_eta_smooth'].long_name,
                          var_name=dset['temp_eta_smooth'].name,
                          units='W m-2',
                          attributes=ref_cube.attributes,
                          dim_coords_and_dims=[(time_coord, 0),
                                               (ref_cube.dim_coords[-2], 1),
                                               (ref_cube.dim_coords[-1], 2)],
                          aux_coords_and_dims=[(ref_cube.aux_coords[0], (1, 2)),
                                               (ref_cube.aux_coords[1], (1, 2))])

In [98]:
new_cube


Out[98]:
Surface Smoother For Temp (W m-2) time cell index along second dimension cell index along first dimension
Shape 1980 300 360
Dimension coordinates
time x - -
cell index along second dimension - x -
cell index along first dimension - - x
Auxiliary coordinates
latitude - x x
longitude - x x
Attributes
Conventions CF-1.7 CMIP-6.2
activity_id CMIP
branch_method standard
branch_time_in_child 0.0
branch_time_in_parent 0.0
cmor_version 3.4.0
comment Diagnostic should be contributed even for models using conservative temperature...
creation_date 2019-11-08T18:41:07Z
data_specs_version 01.00.30
experiment all-forcing simulation of the recent past
experiment_id historical
external_variables areacello volcello
forcing_index 1
frequency mon
further_info_url https://furtherinfo.es-doc.org/CMIP6.CSIRO-ARCCSS.ACCESS-CM2.historica...
grid native atmosphere N96 grid (144x192 latxlon)
grid_label gn
history 2019-11-08T18:41:01Z altered by CMOR: replaced missing value flag (-1e+20)...
initialization_index 1
institution CSIRO (Commonwealth Scientific and Industrial Research Organisation, Aspendale,...
institution_id CSIRO-ARCCSS
license CMIP6 model data produced by CSIRO is licensed under a Creative Commons...
mip_era CMIP6
nominal_resolution 250 km
notes Exp: CM2-historical; Local ID: bj594; Variable: thetao (['pot_temp'])
parent_activity_id CMIP
parent_experiment_id piControl
parent_mip_era CMIP6
parent_source_id ACCESS-CM2
parent_time_units days since 0950-01-01
parent_variant_label r1i1p1f1
physics_index 1
product model-output
realization_index 1
realm ocean
run_variant forcing: GHG, Oz, SA, Sl, Vl, BC, OC, (GHG = CO2, N2O, CH4, CFC11, CFC12,...
source ACCESS-CM2 (2019):
aerosol UKCA-GLOMAP-mode
atmos MetUM-HadGEM3-GA7.1...
source_id ACCESS-CM2
source_type AOGCM
sub_experiment none
sub_experiment_id none
table_id Omon
table_info Creation Date:(30 April 2019) MD5:e14f55f257cceafb2523e41244962371
title ACCESS-CM2 output prepared for CMIP6
tracking_id hdl:21.14100/e5a03e08-d970-41ef-949d-54f4b36cd26b
variable_id thetao
variant_label r1i1p1f1
version v20191108

In [40]:
dset['temp_eta_smooth'].coords


Out[40]:
Coordinates:
  * xt_ocean  (xt_ocean) float64 -279.5 -278.5 -277.5 -276.5 ... 77.5 78.5 79.5
  * yt_ocean  (yt_ocean) float64 -77.88 -77.63 -77.38 ... 88.87 89.32 89.77
    geolat_t  (yt_ocean, xt_ocean) float32 -77.876625 -77.876625 ... 65.21044
    geolon_t  (yt_ocean, xt_ocean) float32 -279.5 -278.5 ... 79.973366 79.99112
  * time      (time) float64 15.5 45.0 74.5 ... 6.019e+04 6.022e+04 6.025e+04

In [101]:
dset['geolat_t'].values.shape


Out[101]:
(300, 360)

In [103]:
ref_cube.coord('latitude').points.shape


Out[103]:
(300, 360)

In [104]:
dset['geolat_t'].values[10, 10]


Out[104]:
-75.29026

In [105]:
ref_cube.coord('latitude').points[10, 10]


Out[105]:
-75.2902603149414

In [106]:
import numpy as np

In [107]:
np.allclose(ref_cube.coord('latitude').points, dset['geolat_t'].values)


Out[107]:
True

In [108]:
dset['temp_eta_smooth'].ndim


Out[108]:
3

In [109]:
ref_cube.ndim


Out[109]:
4

In [112]:
dset['geolon_t'].values + 360


Out[112]:
array([[ 80.5     ,  81.5     ,  82.5     , ..., 437.5     , 438.5     ,
        439.5     ],
       [ 80.5     ,  81.5     ,  82.5     , ..., 437.5     , 438.5     ,
        439.5     ],
       [ 80.5     ,  81.5     ,  82.5     , ..., 437.5     , 438.5     ,
        439.5     ],
       ...,
       [ 80.04428 ,  80.13287 ,  80.22153 , ..., 439.77847 , 439.86713 ,
        439.95572 ],
       [ 80.02658 ,  80.0798  ,  80.133026, ..., 439.86694 , 439.92023 ,
        439.97342 ],
       [ 80.00888 ,  80.02664 ,  80.0444  , ..., 439.9556  , 439.97336 ,
        439.99112 ]], dtype=float32)

In [113]:
ref_cube.coord('longitude').points.max()


Out[113]:
359.9692687988281

In [114]:
ref_cube.coord('longitude').points.min()


Out[114]:
0.02623666077852249

In [115]:
dset['geolon_t'].values.max()


Out[115]:
79.99112

In [116]:
dset['geolon_t'].values.min()


Out[116]:
-279.99112

In [117]:
test_lons = np.where(dset['geolon_t'].values < 0.0, dset['geolon_t'].values + 360, dset['geolon_t'].values)

In [118]:
test_lons


Out[118]:
array([[80.5     , 81.5     , 82.5     , ..., 77.5     , 78.5     ,
        79.5     ],
       [80.5     , 81.5     , 82.5     , ..., 77.5     , 78.5     ,
        79.5     ],
       [80.5     , 81.5     , 82.5     , ..., 77.5     , 78.5     ,
        79.5     ],
       ...,
       [80.04428 , 80.13287 , 80.22153 , ..., 79.778465, 79.867134,
        79.95572 ],
       [80.02658 , 80.0798  , 80.133026, ..., 79.86696 , 79.92021 ,
        79.97341 ],
       [80.00888 , 80.02664 , 80.0444  , ..., 79.95559 , 79.973366,
        79.99112 ]], dtype=float32)

In [110]:
ref_cube.coord('longitude').points


Out[110]:
masked_array(
  data=[[80.5       , 81.5       , 82.5       , ..., 77.5       ,
         78.5       , 79.5       ],
        [80.5       , 81.5       , 82.5       , ..., 77.5       ,
         78.5       , 79.5       ],
        [80.5       , 81.5       , 82.5       , ..., 77.5       ,
         78.5       , 79.5       ],
        ...,
        [80.04428101, 80.13287354, 80.2215271 , ..., 79.77846527,
         79.86713409, 79.95571899],
        [80.02658081, 80.07980347, 80.13302612, ..., 79.86695862,
         79.92021179, 79.97341156],
        [80.00888062, 80.02664185, 80.04440308, ..., 79.95558929,
         79.97336578, 79.99111938]],
  mask=False,
  fill_value=1e+20)

In [ ]: