Remote datasets¶
Pyfesom2 comes with remote datasets that are loaded on demand.
[2]:
from pyfesom2 import datasets
1. Tutorial datasets¶
A smallest and quick to load dataset
[3]:
datasets.tutorial_dataset.load()
[3]:
<xarray.Dataset> Dimensions: (elem: 5839, nelem: 5727, nod2: 3140, nz: 48, nz1: 47, three: 3, time: 2) Coordinates: lat (nod2) float64 dask.array<chunksize=(3140,), meta=np.ndarray> lon (nod2) float64 dask.array<chunksize=(3140,), meta=np.ndarray> * time (time) datetime64[ns] 1948-12-30T23:45:00 1949-12-31T23:45:00 * nz1 (nz1) float64 -2.5 -7.5 -15.0 ... -5.525e+03 -5.825e+03 -6.125e+03 * nz (nz) float64 0.0 -5.0 -10.0 -20.0 ... -5.65e+03 -6e+03 -6.25e+03 faces (nelem, three) uint32 dask.array<chunksize=(5727, 3), meta=np.ndarray> Dimensions without coordinates: elem, nelem, nod2, three Data variables: a_ice (time, nod2) float32 dask.array<chunksize=(1, 3140), meta=np.ndarray> m_ice (time, nod2) float32 dask.array<chunksize=(2, 3140), meta=np.ndarray> temp (time, nod2, nz1) float32 dask.array<chunksize=(1, 3140, 47), meta=np.ndarray> u (time, elem, nz1) float32 dask.array<chunksize=(1, 5839, 47), meta=np.ndarray> v (time, elem, nz1) float32 dask.array<chunksize=(1, 5839, 47), meta=np.ndarray> w (time, nod2, nz) float32 dask.array<chunksize=(1, 3140, 48), meta=np.ndarray> Attributes: Dataset URL: https://swiftbrowser.dkrz.de/public/dkrz_035d8f6ff058403bb4...
- elem: 5839
- nelem: 5727
- nod2: 3140
- nz: 48
- nz1: 47
- three: 3
- time: 2
- lat(nod2)float64dask.array<chunksize=(3140,), meta=np.ndarray>
- long_name :
- latitude
- units :
- degrees_north
Array Chunk Bytes 25.12 kB 25.12 kB Shape (3140,) (3140,) Count 20 Tasks 1 Chunks Type float64 numpy.ndarray - lon(nod2)float64dask.array<chunksize=(3140,), meta=np.ndarray>
- long_name :
- longitude
- units :
- degrees_east
Array Chunk Bytes 25.12 kB 25.12 kB Shape (3140,) (3140,) Count 20 Tasks 1 Chunks Type float64 numpy.ndarray - time(time)datetime64[ns]1948-12-30T23:45:00 1949-12-31T2...
- long_name :
- time
array(['1948-12-30T23:45:00.000000000', '1949-12-31T23:45:00.000000000'], dtype='datetime64[ns]')
- nz1(nz1)float64-2.5 -7.5 ... -5.825e+03 -6.125e+03
array([-2.500e+00, -7.500e+00, -1.500e+01, -2.500e+01, -3.500e+01, -4.500e+01, -5.500e+01, -6.500e+01, -7.500e+01, -8.500e+01, -9.500e+01, -1.075e+02, -1.250e+02, -1.475e+02, -1.750e+02, -2.100e+02, -2.550e+02, -3.100e+02, -3.750e+02, -4.500e+02, -5.350e+02, -6.300e+02, -7.350e+02, -8.500e+02, -9.750e+02, -1.110e+03, -1.255e+03, -1.415e+03, -1.600e+03, -1.810e+03, -2.035e+03, -2.275e+03, -2.525e+03, -2.775e+03, -3.025e+03, -3.275e+03, -3.525e+03, -3.775e+03, -4.025e+03, -4.275e+03, -4.525e+03, -4.775e+03, -5.025e+03, -5.275e+03, -5.525e+03, -5.825e+03, -6.125e+03])
- nz(nz)float640.0 -5.0 -10.0 ... -6e+03 -6.25e+03
array([ 0.00e+00, -5.00e+00, -1.00e+01, -2.00e+01, -3.00e+01, -4.00e+01, -5.00e+01, -6.00e+01, -7.00e+01, -8.00e+01, -9.00e+01, -1.00e+02, -1.15e+02, -1.35e+02, -1.60e+02, -1.90e+02, -2.30e+02, -2.80e+02, -3.40e+02, -4.10e+02, -4.90e+02, -5.80e+02, -6.80e+02, -7.90e+02, -9.10e+02, -1.04e+03, -1.18e+03, -1.33e+03, -1.50e+03, -1.70e+03, -1.92e+03, -2.15e+03, -2.40e+03, -2.65e+03, -2.90e+03, -3.15e+03, -3.40e+03, -3.65e+03, -3.90e+03, -4.15e+03, -4.40e+03, -4.65e+03, -4.90e+03, -5.15e+03, -5.40e+03, -5.65e+03, -6.00e+03, -6.25e+03])
- faces(nelem, three)uint32dask.array<chunksize=(5727, 3), meta=np.ndarray>
Array Chunk Bytes 68.72 kB 68.72 kB Shape (5727, 3) (5727, 3) Count 2 Tasks 1 Chunks Type uint32 numpy.ndarray
- a_ice(time, nod2)float32dask.array<chunksize=(1, 3140), meta=np.ndarray>
- description :
- ice concentration
- units :
- %
Array Chunk Bytes 25.12 kB 12.56 kB Shape (2, 3140) (1, 3140) Count 3 Tasks 2 Chunks Type float32 numpy.ndarray - m_ice(time, nod2)float32dask.array<chunksize=(2, 3140), meta=np.ndarray>
- description :
- ice height
- units :
- m
Array Chunk Bytes 25.12 kB 25.12 kB Shape (2, 3140) (2, 3140) Count 2 Tasks 1 Chunks Type float32 numpy.ndarray - temp(time, nod2, nz1)float32dask.array<chunksize=(1, 3140, 47), meta=np.ndarray>
- description :
- temperature
- units :
- C
Array Chunk Bytes 1.18 MB 590.32 kB Shape (2, 3140, 47) (1, 3140, 47) Count 3 Tasks 2 Chunks Type float32 numpy.ndarray - u(time, elem, nz1)float32dask.array<chunksize=(1, 5839, 47), meta=np.ndarray>
- description :
- horizontal velocity
- units :
- m/s
Array Chunk Bytes 2.20 MB 1.10 MB Shape (2, 5839, 47) (1, 5839, 47) Count 3 Tasks 2 Chunks Type float32 numpy.ndarray - v(time, elem, nz1)float32dask.array<chunksize=(1, 5839, 47), meta=np.ndarray>
- description :
- meridional velocity
- units :
- m/s
Array Chunk Bytes 2.20 MB 1.10 MB Shape (2, 5839, 47) (1, 5839, 47) Count 3 Tasks 2 Chunks Type float32 numpy.ndarray - w(time, nod2, nz)float32dask.array<chunksize=(1, 3140, 48), meta=np.ndarray>
- description :
- vertical velocity
- units :
- m/s
Array Chunk Bytes 1.21 MB 602.88 kB Shape (2, 3140, 48) (1, 3140, 48) Count 3 Tasks 2 Chunks Type float32 numpy.ndarray
- Dataset URL :
- https://swiftbrowser.dkrz.de/public/dkrz_035d8f6ff058403bb42f8302e6badfbc/pyfesom2/tutorial/pi-grid
A CMIP6-like and a more comprehensive dataset.
[12]:
datasets.core.load()
[12]:
<xarray.Dataset> Dimensions: (nod2: 126858, nz1: 47, time: 144) Coordinates: lat (nod2) float64 dask.array<chunksize=(126858,), meta=np.ndarray> lon (nod2) float64 dask.array<chunksize=(126858,), meta=np.ndarray> * nz1 (nz1) float64 -2.5 -7.5 -15.0 ... -5.525e+03 -5.825e+03 -6.125e+03 * time (time) datetime64[ns] 1948-01-31T23:15:00 ... 1959-12-31T23:15:00 Dimensions without coordinates: nod2 Data variables: temp (time, nod2, nz1) float32 dask.array<chunksize=(1, 126858, 47), meta=np.ndarray> salt (time, nod2, nz1) float32 dask.array<chunksize=(1, 126858, 47), meta=np.ndarray> a_ice (time, nod2) float32 dask.array<chunksize=(1, 126858), meta=np.ndarray> m_ice (time, nod2) float32 dask.array<chunksize=(1, 126858), meta=np.ndarray> ssh (time, nod2) float32 dask.array<chunksize=(1, 126858), meta=np.ndarray> sst (time, nod2) float32 dask.array<chunksize=(1, 126858), meta=np.ndarray> Attributes: Dataset URL: https://swiftbrowser.dkrz.de/public/dkrz_02942825-0cab-44f3...
- nod2: 126858
- nz1: 47
- time: 144
- lat(nod2)float64dask.array<chunksize=(126858,), meta=np.ndarray>
- long_name :
- latitude
- units :
- degrees_north
Array Chunk Bytes 1.01 MB 1.01 MB Shape (126858,) (126858,) Count 25 Tasks 1 Chunks Type float64 numpy.ndarray - lon(nod2)float64dask.array<chunksize=(126858,), meta=np.ndarray>
- long_name :
- longitude
- units :
- degrees_east
Array Chunk Bytes 1.01 MB 1.01 MB Shape (126858,) (126858,) Count 25 Tasks 1 Chunks Type float64 numpy.ndarray - nz1(nz1)float64-2.5 -7.5 ... -5.825e+03 -6.125e+03
- long_name :
- depth at half level
- units :
- m
array([-2.500e+00, -7.500e+00, -1.500e+01, -2.500e+01, -3.500e+01, -4.500e+01, -5.500e+01, -6.500e+01, -7.500e+01, -8.500e+01, -9.500e+01, -1.075e+02, -1.250e+02, -1.475e+02, -1.750e+02, -2.100e+02, -2.550e+02, -3.100e+02, -3.750e+02, -4.500e+02, -5.350e+02, -6.300e+02, -7.350e+02, -8.500e+02, -9.750e+02, -1.110e+03, -1.255e+03, -1.415e+03, -1.600e+03, -1.810e+03, -2.035e+03, -2.275e+03, -2.525e+03, -2.775e+03, -3.025e+03, -3.275e+03, -3.525e+03, -3.775e+03, -4.025e+03, -4.275e+03, -4.525e+03, -4.775e+03, -5.025e+03, -5.275e+03, -5.525e+03, -5.825e+03, -6.125e+03])
- time(time)datetime64[ns]1948-01-31T23:15:00 ... 1959-12-...
- long_name :
- time
array(['1948-01-31T23:15:00.000000000', '1948-02-28T23:15:00.000000000', '1948-03-30T23:15:00.000000000', '1948-04-29T23:15:00.000000000', '1948-05-30T23:15:00.000000000', '1948-06-29T23:15:00.000000000', '1948-07-30T23:15:00.000000000', '1948-08-30T23:15:00.000000000', '1948-09-29T23:15:00.000000000', '1948-10-30T23:15:00.000000000', '1948-11-29T23:15:00.000000000', '1948-12-30T23:15:00.000000000', '1949-01-31T23:15:00.000000000', '1949-02-28T23:15:00.000000000', '1949-03-31T23:15:00.000000000', '1949-04-30T23:15:00.000000000', '1949-05-31T23:15:00.000000000', '1949-06-30T23:15:00.000000000', '1949-07-31T23:15:00.000000000', '1949-08-31T23:15:00.000000000', '1949-09-30T23:15:00.000000000', '1949-10-31T23:15:00.000000000', '1949-11-30T23:15:00.000000000', '1949-12-31T23:15:00.000000000', '1950-01-31T23:15:00.000000000', '1950-02-28T23:15:00.000000000', '1950-03-31T23:15:00.000000000', '1950-04-30T23:15:00.000000000', '1950-05-31T23:15:00.000000000', '1950-06-30T23:15:00.000000000', '1950-07-31T23:15:00.000000000', '1950-08-31T23:15:00.000000000', '1950-09-30T23:15:00.000000000', '1950-10-31T23:15:00.000000000', '1950-11-30T23:15:00.000000000', '1950-12-31T23:15:00.000000000', '1951-01-31T23:15:00.000000000', '1951-02-28T23:15:00.000000000', '1951-03-31T23:15:00.000000000', '1951-04-30T23:15:00.000000000', '1951-05-31T23:15:00.000000000', '1951-06-30T23:15:00.000000000', '1951-07-31T23:15:00.000000000', '1951-08-31T23:15:00.000000000', '1951-09-30T23:15:00.000000000', '1951-10-31T23:15:00.000000000', '1951-11-30T23:15:00.000000000', '1951-12-31T23:15:00.000000000', '1952-01-31T23:15:00.000000000', '1952-02-28T23:15:00.000000000', '1952-03-30T23:15:00.000000000', '1952-04-29T23:15:00.000000000', '1952-05-30T23:15:00.000000000', '1952-06-29T23:15:00.000000000', '1952-07-30T23:15:00.000000000', '1952-08-30T23:15:00.000000000', '1952-09-29T23:15:00.000000000', '1952-10-30T23:15:00.000000000', '1952-11-29T23:15:00.000000000', '1952-12-30T23:15:00.000000000', '1953-01-31T23:15:00.000000000', '1953-02-28T23:15:00.000000000', '1953-03-31T23:15:00.000000000', '1953-04-30T23:15:00.000000000', '1953-05-31T23:15:00.000000000', '1953-06-30T23:15:00.000000000', '1953-07-31T23:15:00.000000000', '1953-08-31T23:15:00.000000000', '1953-09-30T23:15:00.000000000', '1953-10-31T23:15:00.000000000', '1953-11-30T23:15:00.000000000', '1953-12-31T23:15:00.000000000', '1954-01-31T23:15:00.000000000', '1954-02-28T23:15:00.000000000', '1954-03-31T23:15:00.000000000', '1954-04-30T23:15:00.000000000', '1954-05-31T23:15:00.000000000', '1954-06-30T23:15:00.000000000', '1954-07-31T23:15:00.000000000', '1954-08-31T23:15:00.000000000', '1954-09-30T23:15:00.000000000', '1954-10-31T23:15:00.000000000', '1954-11-30T23:15:00.000000000', '1954-12-31T23:15:00.000000000', '1955-01-31T23:15:00.000000000', '1955-02-28T23:15:00.000000000', '1955-03-31T23:15:00.000000000', '1955-04-30T23:15:00.000000000', '1955-05-31T23:15:00.000000000', '1955-06-30T23:15:00.000000000', '1955-07-31T23:15:00.000000000', '1955-08-31T23:15:00.000000000', '1955-09-30T23:15:00.000000000', '1955-10-31T23:15:00.000000000', '1955-11-30T23:15:00.000000000', '1955-12-31T23:15:00.000000000', '1956-01-31T23:15:00.000000000', '1956-02-28T23:15:00.000000000', '1956-03-30T23:15:00.000000000', '1956-04-29T23:15:00.000000000', '1956-05-30T23:15:00.000000000', '1956-06-29T23:15:00.000000000', '1956-07-30T23:15:00.000000000', '1956-08-30T23:15:00.000000000', '1956-09-29T23:15:00.000000000', '1956-10-30T23:15:00.000000000', '1956-11-29T23:15:00.000000000', '1956-12-30T23:15:00.000000000', '1957-01-31T23:15:00.000000000', '1957-02-28T23:15:00.000000000', '1957-03-31T23:15:00.000000000', '1957-04-30T23:15:00.000000000', '1957-05-31T23:15:00.000000000', '1957-06-30T23:15:00.000000000', '1957-07-31T23:15:00.000000000', '1957-08-31T23:15:00.000000000', '1957-09-30T23:15:00.000000000', '1957-10-31T23:15:00.000000000', '1957-11-30T23:15:00.000000000', '1957-12-31T23:15:00.000000000', '1958-01-31T23:15:00.000000000', '1958-02-28T23:15:00.000000000', '1958-03-31T23:15:00.000000000', '1958-04-30T23:15:00.000000000', '1958-05-31T23:15:00.000000000', '1958-06-30T23:15:00.000000000', '1958-07-31T23:15:00.000000000', '1958-08-31T23:15:00.000000000', '1958-09-30T23:15:00.000000000', '1958-10-31T23:15:00.000000000', '1958-11-30T23:15:00.000000000', '1958-12-31T23:15:00.000000000', '1959-01-31T23:15:00.000000000', '1959-02-28T23:15:00.000000000', '1959-03-31T23:15:00.000000000', '1959-04-30T23:15:00.000000000', '1959-05-31T23:15:00.000000000', '1959-06-30T23:15:00.000000000', '1959-07-31T23:15:00.000000000', '1959-08-31T23:15:00.000000000', '1959-09-30T23:15:00.000000000', '1959-10-31T23:15:00.000000000', '1959-11-30T23:15:00.000000000', '1959-12-31T23:15:00.000000000'], dtype='datetime64[ns]')
- temp(time, nod2, nz1)float32dask.array<chunksize=(1, 126858, 47), meta=np.ndarray>
- description :
- temperature
- units :
- C
Array Chunk Bytes 3.43 GB 23.85 MB Shape (144, 126858, 47) (1, 126858, 47) Count 145 Tasks 144 Chunks Type float32 numpy.ndarray - salt(time, nod2, nz1)float32dask.array<chunksize=(1, 126858, 47), meta=np.ndarray>
- description :
- salinity
- units :
- psu
Array Chunk Bytes 3.43 GB 23.85 MB Shape (144, 126858, 47) (1, 126858, 47) Count 145 Tasks 144 Chunks Type float32 numpy.ndarray - a_ice(time, nod2)float32dask.array<chunksize=(1, 126858), meta=np.ndarray>
- description :
- ice concentration
- units :
- %
Array Chunk Bytes 73.07 MB 507.43 kB Shape (144, 126858) (1, 126858) Count 145 Tasks 144 Chunks Type float32 numpy.ndarray - m_ice(time, nod2)float32dask.array<chunksize=(1, 126858), meta=np.ndarray>
- description :
- ice height
- units :
- m
Array Chunk Bytes 73.07 MB 507.43 kB Shape (144, 126858) (1, 126858) Count 145 Tasks 144 Chunks Type float32 numpy.ndarray - ssh(time, nod2)float32dask.array<chunksize=(1, 126858), meta=np.ndarray>
- description :
- sea surface elevation
- units :
- m
Array Chunk Bytes 73.07 MB 507.43 kB Shape (144, 126858) (1, 126858) Count 145 Tasks 144 Chunks Type float32 numpy.ndarray - sst(time, nod2)float32dask.array<chunksize=(1, 126858), meta=np.ndarray>
- description :
- sea surface temperature
- units :
- C
Array Chunk Bytes 73.07 MB 507.43 kB Shape (144, 126858) (1, 126858) Count 145 Tasks 144 Chunks Type float32 numpy.ndarray
- Dataset URL :
- https://swiftbrowser.dkrz.de/public/dkrz_02942825-0cab-44f3-ad37-80fd5d2e37e3/FESOM2_data/LCORE
2. Frontier simulation examples¶
Pyfesom2 comes with examples of frontier simulations
A sample Arctic 1km resolution dataset with ~11 million surface nodes.¶
[9]:
datasets.arctic_1km.load()
[9]:
<xarray.Dataset> Dimensions: (nod2: 11538465, nz1: 69, time: 60) Coordinates: lat (nod2) float64 dask.array<chunksize=(100000,), meta=np.ndarray> lon (nod2) float64 dask.array<chunksize=(100000,), meta=np.ndarray> * nz1 (nz1) float64 0.0 -5.0 -10.0 -15.0 ... -5.4e+03 -5.65e+03 -6e+03 * time (time) datetime64[ns] 2006-02-28T23:58:00 ... 2011-01-31T23:59:00 Dimensions without coordinates: nod2 Data variables: a_ice (time, nod2) float32 dask.array<chunksize=(1, 100000), meta=np.ndarray> Attributes: Dataset URL: https://swiftbrowser.dkrz.de/public/dkrz_02942825-0cab-44f3...
- nod2: 11538465
- nz1: 69
- time: 60
- lat(nod2)float64dask.array<chunksize=(100000,), meta=np.ndarray>
- long_name :
- latitude
- units :
- degrees_north
Array Chunk Bytes 92.31 MB 800.00 kB Shape (11538465,) (100000,) Count 117 Tasks 116 Chunks Type float64 numpy.ndarray - lon(nod2)float64dask.array<chunksize=(100000,), meta=np.ndarray>
- long_name :
- longitude
- units :
- degrees_east
Array Chunk Bytes 92.31 MB 800.00 kB Shape (11538465,) (100000,) Count 117 Tasks 116 Chunks Type float64 numpy.ndarray - nz1(nz1)float640.0 -5.0 -10.0 ... -5.65e+03 -6e+03
- long_name :
- depth
- units :
- m
array([ 0.00e+00, -5.00e+00, -1.00e+01, -1.50e+01, -2.00e+01, -2.50e+01, -3.00e+01, -3.50e+01, -4.00e+01, -4.50e+01, -5.00e+01, -5.50e+01, -6.00e+01, -6.50e+01, -7.00e+01, -7.50e+01, -8.00e+01, -8.50e+01, -9.00e+01, -9.50e+01, -1.00e+02, -1.15e+02, -1.30e+02, -1.45e+02, -1.60e+02, -1.75e+02, -1.90e+02, -2.05e+02, -2.20e+02, -2.35e+02, -2.50e+02, -2.65e+02, -2.80e+02, -2.95e+02, -3.10e+02, -3.30e+02, -3.50e+02, -3.70e+02, -3.90e+02, -4.10e+02, -4.30e+02, -4.70e+02, -5.20e+02, -5.80e+02, -6.80e+02, -7.90e+02, -9.10e+02, -1.04e+03, -1.18e+03, -1.33e+03, -1.50e+03, -1.70e+03, -1.92e+03, -2.15e+03, -2.40e+03, -2.65e+03, -2.90e+03, -3.15e+03, -3.40e+03, -3.65e+03, -3.90e+03, -4.15e+03, -4.40e+03, -4.65e+03, -4.90e+03, -5.15e+03, -5.40e+03, -5.65e+03, -6.00e+03])
- time(time)datetime64[ns]2006-02-28T23:58:00 ... 2011-01-...
- long_name :
- time
array(['2006-02-28T23:58:00.000000000', '2006-03-31T23:58:00.000000000', '2006-04-30T23:58:00.000000000', '2006-05-31T23:58:00.000000000', '2006-06-30T23:58:00.000000000', '2006-07-31T23:58:00.000000000', '2006-08-31T23:58:00.000000000', '2006-09-30T23:58:00.000000000', '2006-10-31T23:58:00.000000000', '2006-11-30T23:58:00.000000000', '2006-12-31T23:58:00.000000000', '2007-01-31T23:58:00.000000000', '2007-02-28T23:58:00.000000000', '2007-03-31T23:57:00.000000000', '2007-04-30T23:58:00.000000000', '2007-05-31T23:58:00.000000000', '2007-06-30T23:58:00.000000000', '2007-07-31T23:58:00.000000000', '2007-08-31T23:58:00.000000000', '2007-09-30T23:58:00.000000000', '2007-10-31T23:59:00.000000000', '2007-11-30T23:59:00.000000000', '2007-12-31T23:59:00.000000000', '2008-01-31T23:59:00.000000000', '2008-02-28T23:59:00.000000000', '2008-03-30T23:59:00.000000000', '2008-04-29T23:59:00.000000000', '2008-05-30T23:59:00.000000000', '2008-06-29T23:59:00.000000000', '2008-07-30T23:59:00.000000000', '2008-08-30T23:59:00.000000000', '2008-09-29T23:59:00.000000000', '2008-10-30T23:59:00.000000000', '2008-11-29T23:59:00.000000000', '2008-12-30T23:59:00.000000000', '2009-01-31T23:59:00.000000000', '2009-02-28T23:59:00.000000000', '2009-03-31T23:59:00.000000000', '2009-04-30T23:59:00.000000000', '2009-05-31T23:59:00.000000000', '2009-06-30T23:59:00.000000000', '2009-07-31T23:59:00.000000000', '2009-08-31T23:59:00.000000000', '2009-09-30T23:59:00.000000000', '2009-10-31T23:59:00.000000000', '2009-11-30T23:59:00.000000000', '2009-12-31T23:59:00.000000000', '2010-01-31T23:59:00.000000000', '2010-02-28T23:59:00.000000000', '2010-03-31T23:59:00.000000000', '2010-04-30T23:59:00.000000000', '2010-05-31T23:59:00.000000000', '2010-06-30T23:59:00.000000000', '2010-07-31T23:59:00.000000000', '2010-08-31T23:59:00.000000000', '2010-09-30T23:59:00.000000000', '2010-10-31T23:59:00.000000000', '2010-11-30T23:59:00.000000000', '2010-12-31T23:59:00.000000000', '2011-01-31T23:59:00.000000000'], dtype='datetime64[ns]')
- a_ice(time, nod2)float32dask.array<chunksize=(1, 100000), meta=np.ndarray>
- description :
- ice concentration
- units :
- %
Array Chunk Bytes 2.77 GB 400.00 kB Shape (60, 11538465) (1, 100000) Count 6961 Tasks 6960 Chunks Type float32 numpy.ndarray
- Dataset URL :
- https://swiftbrowser.dkrz.de/public/dkrz_02942825-0cab-44f3-ad37-80fd5d2e37e3/FESOM2_data/A01
A sample Rossby 4.2 simulation with ~23 million surface nodes and 79 levels.¶
[8]:
datasets.rossby42.load()
[8]:
<xarray.Dataset> Dimensions: (nelem: 46260679, nod2: 23243988, nz: 80, nz1: 79, three: 3, time: 1) Coordinates: faces (nelem, three) uint32 dask.array<chunksize=(361412, 1), meta=np.ndarray> lat (nod2) float32 dask.array<chunksize=(363188,), meta=np.ndarray> lon (nod2) float32 dask.array<chunksize=(363188,), meta=np.ndarray> * nz (nz) float32 -0.0 -5.0 -10.0 -20.0 ... -5.8e+03 -6.05e+03 -6.55e+03 * nz1 (nz1) float64 -2.5 -7.5 -15.0 ... -5.7e+03 -5.925e+03 -6.3e+03 * time (time) datetime64[ns] 1948-01-01 Dimensions without coordinates: nelem, nod2, three Data variables: temp (time, nod2, nz1) float32 dask.array<chunksize=(1, 100000, 40), meta=np.ndarray> Attributes: Dataset URL: https://swiftbrowser.dkrz.de/public/dkrz_035d8f6ff058403bb4...
- nelem: 46260679
- nod2: 23243988
- nz: 80
- nz1: 79
- three: 3
- time: 1
- faces(nelem, three)uint32dask.array<chunksize=(361412, 1), meta=np.ndarray>
Array Chunk Bytes 555.13 MB 1.45 MB Shape (46260679, 3) (361412, 1) Count 385 Tasks 384 Chunks Type uint32 numpy.ndarray - lat(nod2)float32dask.array<chunksize=(363188,), meta=np.ndarray>
Array Chunk Bytes 92.98 MB 1.45 MB Shape (23243988,) (363188,) Count 65 Tasks 64 Chunks Type float32 numpy.ndarray - lon(nod2)float32dask.array<chunksize=(363188,), meta=np.ndarray>
Array Chunk Bytes 92.98 MB 1.45 MB Shape (23243988,) (363188,) Count 65 Tasks 64 Chunks Type float32 numpy.ndarray - nz(nz)float32-0.0 -5.0 ... -6.05e+03 -6.55e+03
array([-0.000e+00, -5.000e+00, -1.000e+01, -2.000e+01, -3.000e+01, -4.000e+01, -5.000e+01, -6.000e+01, -7.000e+01, -8.000e+01, -9.000e+01, -1.000e+02, -1.120e+02, -1.250e+02, -1.400e+02, -1.550e+02, -1.700e+02, -1.850e+02, -2.000e+02, -2.150e+02, -2.300e+02, -2.500e+02, -2.750e+02, -3.000e+02, -3.250e+02, -3.500e+02, -3.750e+02, -4.000e+02, -4.300e+02, -4.600e+02, -4.900e+02, -5.200e+02, -5.500e+02, -5.800e+02, -6.200e+02, -6.600e+02, -7.000e+02, -7.500e+02, -8.000e+02, -8.500e+02, -9.000e+02, -9.500e+02, -1.000e+03, -1.050e+03, -1.100e+03, -1.175e+03, -1.250e+03, -1.325e+03, -1.400e+03, -1.475e+03, -1.550e+03, -1.650e+03, -1.750e+03, -1.850e+03, -1.950e+03, -2.050e+03, -2.150e+03, -2.250e+03, -2.350e+03, -2.500e+03, -2.650e+03, -2.800e+03, -2.950e+03, -3.100e+03, -3.300e+03, -3.400e+03, -3.600e+03, -3.800e+03, -4.000e+03, -4.200e+03, -4.400e+03, -4.600e+03, -4.800e+03, -5.000e+03, -5.200e+03, -5.400e+03, -5.600e+03, -5.800e+03, -6.050e+03, -6.550e+03], dtype=float32)
- nz1(nz1)float64-2.5 -7.5 ... -5.925e+03 -6.3e+03
array([-2.5000e+00, -7.5000e+00, -1.5000e+01, -2.5000e+01, -3.5000e+01, -4.5000e+01, -5.5000e+01, -6.5000e+01, -7.5000e+01, -8.5000e+01, -9.5000e+01, -1.0600e+02, -1.1850e+02, -1.3250e+02, -1.4750e+02, -1.6250e+02, -1.7750e+02, -1.9250e+02, -2.0750e+02, -2.2250e+02, -2.4000e+02, -2.6250e+02, -2.8750e+02, -3.1250e+02, -3.3750e+02, -3.6250e+02, -3.8750e+02, -4.1500e+02, -4.4500e+02, -4.7500e+02, -5.0500e+02, -5.3500e+02, -5.6500e+02, -6.0000e+02, -6.4000e+02, -6.8000e+02, -7.2500e+02, -7.7500e+02, -8.2500e+02, -8.7500e+02, -9.2500e+02, -9.7500e+02, -1.0250e+03, -1.0750e+03, -1.1375e+03, -1.2125e+03, -1.2875e+03, -1.3625e+03, -1.4375e+03, -1.5125e+03, -1.6000e+03, -1.7000e+03, -1.8000e+03, -1.9000e+03, -2.0000e+03, -2.1000e+03, -2.2000e+03, -2.3000e+03, -2.4250e+03, -2.5750e+03, -2.7250e+03, -2.8750e+03, -3.0250e+03, -3.2000e+03, -3.3500e+03, -3.5000e+03, -3.7000e+03, -3.9000e+03, -4.1000e+03, -4.3000e+03, -4.5000e+03, -4.7000e+03, -4.9000e+03, -5.1000e+03, -5.3000e+03, -5.5000e+03, -5.7000e+03, -5.9250e+03, -6.3000e+03])
- time(time)datetime64[ns]1948-01-01
- long_name :
- time
array(['1948-01-01T00:00:00.000000000'], dtype='datetime64[ns]')
- temp(time, nod2, nz1)float32dask.array<chunksize=(1, 100000, 40), meta=np.ndarray>
- description :
- temperature
- units :
- C
Array Chunk Bytes 7.35 GB 16.00 MB Shape (1, 23243988, 79) (1, 100000, 40) Count 467 Tasks 466 Chunks Type float32 numpy.ndarray
- Dataset URL :
- https://swiftbrowser.dkrz.de/public/dkrz_035d8f6ff058403bb42f8302e6badfbc/pyfesom2/frontier/rossby42
As these remote datasets are currently statically served there are other versions of this rossby4.2 that are optimized level: datasets.rossby42_level and spatial: datasets.rossby42_spatial based access.¶
3. AWI-CM CMIP6 grids¶
These datasets are just coordinates corresponding to LR, MR, HR versions of AWI-CM model used in CMIP6. Currently these contain face information that contain missing information in ESGF and necessary for spatial plotting. Soon using diagnostics from pyfesom2 may be supported on these datasets.
Merging this grid data with CMIP6, AWI-CM can be done using xarray.merge([grid_data, cmip6_data]).
[14]:
datasets.cmip6_hr.load()
[14]:
<xarray.Dataset> Dimensions: (depth: 47, ncells: 1306775, nelem: 2581792, nz: 48, three: 3) Coordinates: * depth (depth) float64 -2.5 -7.5 -15.0 ... -5.825e+03 -6.125e+03 faces (nelem, three) uint32 dask.array<chunksize=(161362, 1), meta=np.ndarray> lat (ncells) float64 dask.array<chunksize=(81674,), meta=np.ndarray> lon (ncells) float64 dask.array<chunksize=(81674,), meta=np.ndarray> * nz (nz) float64 0.0 -5.0 -10.0 -20.0 ... -5.65e+03 -6e+03 -6.25e+03 Dimensions without coordinates: ncells, nelem, three Data variables: *empty* Attributes: Conventions: CF-1.7 Dataset URL: https://swiftbrowser.dkrz.de/public/dkrz_035d8f6ff058403bb4...
- depth: 47
- ncells: 1306775
- nelem: 2581792
- nz: 48
- three: 3
- depth(depth)float64-2.5 -7.5 ... -5.825e+03 -6.125e+03
- long_name :
- depth at half level
- units :
- m
array([-2.500e+00, -7.500e+00, -1.500e+01, -2.500e+01, -3.500e+01, -4.500e+01, -5.500e+01, -6.500e+01, -7.500e+01, -8.500e+01, -9.500e+01, -1.075e+02, -1.250e+02, -1.475e+02, -1.750e+02, -2.100e+02, -2.550e+02, -3.100e+02, -3.750e+02, -4.500e+02, -5.350e+02, -6.300e+02, -7.350e+02, -8.500e+02, -9.750e+02, -1.110e+03, -1.255e+03, -1.415e+03, -1.600e+03, -1.810e+03, -2.035e+03, -2.275e+03, -2.525e+03, -2.775e+03, -3.025e+03, -3.275e+03, -3.525e+03, -3.775e+03, -4.025e+03, -4.275e+03, -4.525e+03, -4.775e+03, -5.025e+03, -5.275e+03, -5.525e+03, -5.825e+03, -6.125e+03])
- faces(nelem, three)uint32dask.array<chunksize=(161362, 1), meta=np.ndarray>
Array Chunk Bytes 30.98 MB 645.45 kB Shape (2581792, 3) (161362, 1) Count 49 Tasks 48 Chunks Type uint32 numpy.ndarray - lat(ncells)float64dask.array<chunksize=(81674,), meta=np.ndarray>
- long_name :
- latitude
- units :
- degrees_north
Array Chunk Bytes 10.45 MB 653.39 kB Shape (1306775,) (81674,) Count 17 Tasks 16 Chunks Type float64 numpy.ndarray - lon(ncells)float64dask.array<chunksize=(81674,), meta=np.ndarray>
- long_name :
- longitude
- units :
- degrees_east
Array Chunk Bytes 10.45 MB 653.39 kB Shape (1306775,) (81674,) Count 17 Tasks 16 Chunks Type float64 numpy.ndarray - nz(nz)float640.0 -5.0 -10.0 ... -6e+03 -6.25e+03
- long_name :
- depth
- units :
- m
array([ 0.00e+00, -5.00e+00, -1.00e+01, -2.00e+01, -3.00e+01, -4.00e+01, -5.00e+01, -6.00e+01, -7.00e+01, -8.00e+01, -9.00e+01, -1.00e+02, -1.15e+02, -1.35e+02, -1.60e+02, -1.90e+02, -2.30e+02, -2.80e+02, -3.40e+02, -4.10e+02, -4.90e+02, -5.80e+02, -6.80e+02, -7.90e+02, -9.10e+02, -1.04e+03, -1.18e+03, -1.33e+03, -1.50e+03, -1.70e+03, -1.92e+03, -2.15e+03, -2.40e+03, -2.65e+03, -2.90e+03, -3.15e+03, -3.40e+03, -3.65e+03, -3.90e+03, -4.15e+03, -4.40e+03, -4.65e+03, -4.90e+03, -5.15e+03, -5.40e+03, -5.65e+03, -6.00e+03, -6.25e+03])
- Conventions :
- CF-1.7
- Dataset URL :
- https://swiftbrowser.dkrz.de/public/dkrz_035d8f6ff058403bb42f8302e6badfbc/pyfesom2/cmip6-grids/zarr/awicm-hr
Use datasets.cmip6_lr.load() and datasets.cmip6_mr.load() for LR and MR respectively¶
4. FESOM-like dataset¶
Most useful for developers to test, benchmark new methods on FESOM-like grids, that may not be available locally. If dask is available then a data variable is returned along else only coordinate dataset is returned. Check method doc for more use cases.
[17]:
datasets.fesom_like(100000)
[17]:
<xarray.Dataset> Dimensions: (nelem: 199964, nod2: 100000, three: 3) Coordinates: lon (nod2) float64 -55.58 -81.23 -106.1 92.0 ... -130.4 155.1 86.75 lat (nod2) float64 -45.61 -65.2 -15.11 -62.37 ... 48.31 38.89 55.55 faces (nelem, three) int32 14415 15036 50348 ... 52107 18289 71945 Dimensions without coordinates: nelem, nod2, three Data variables: fesom_var (nod2) float64 dask.array<chunksize=(100000,), meta=np.ndarray>
- nelem: 199964
- nod2: 100000
- three: 3
- lon(nod2)float64-55.58 -81.23 ... 155.1 86.75
array([ -55.57883692, -81.22841125, -106.11896289, ..., -130.40878949, 155.10204243, 86.75410805])
- lat(nod2)float64-45.61 -65.2 -15.11 ... 38.89 55.55
array([-45.6074512 , -65.20041065, -15.11054279, ..., 48.30734912, 38.88775222, 55.54608489])
- faces(nelem, three)int3214415 15036 50348 ... 18289 71945
array([[14415, 15036, 50348], [96326, 63775, 89123], [87448, 87152, 31485], ..., [52107, 61507, 10956], [71945, 61507, 52107], [52107, 18289, 71945]], dtype=int32)
- fesom_var(nod2)float64dask.array<chunksize=(100000,), meta=np.ndarray>
Array Chunk Bytes 800.00 kB 800.00 kB Shape (100000,) (100000,) Count 1 Tasks 1 Chunks Type float64 numpy.ndarray
[18]:
datasets.fesom_like(100000, times=10, levels=10)
[18]:
<xarray.Dataset> Dimensions: (nelem: 199972, nod2: 100000, nz1: 10, three: 3, time: 10) Coordinates: * time (time) datetime64[ns] 2010-01-31 2010-02-28 ... 2010-10-31 * nz1 (nz1) float64 0.0 -666.7 -1.333e+03 ... -5.333e+03 -6e+03 lon (nod2) float64 60.3 21.67 -60.87 49.23 ... 43.86 -52.57 46.77 lat (nod2) float64 -86.05 -89.97 39.7 43.34 ... 30.54 1.721 63.64 faces (nelem, three) int32 74935 93671 69952 24049 ... 55770 75732 1512 Dimensions without coordinates: nelem, nod2, three Data variables: fesom_var (nz1, time, nod2) float64 dask.array<chunksize=(10, 10, 100000), meta=np.ndarray>
- nelem: 199972
- nod2: 100000
- nz1: 10
- three: 3
- time: 10
- time(time)datetime64[ns]2010-01-31 ... 2010-10-31
array(['2010-01-31T00:00:00.000000000', '2010-02-28T00:00:00.000000000', '2010-03-31T00:00:00.000000000', '2010-04-30T00:00:00.000000000', '2010-05-31T00:00:00.000000000', '2010-06-30T00:00:00.000000000', '2010-07-31T00:00:00.000000000', '2010-08-31T00:00:00.000000000', '2010-09-30T00:00:00.000000000', '2010-10-31T00:00:00.000000000'], dtype='datetime64[ns]')
- nz1(nz1)float640.0 -666.7 ... -5.333e+03 -6e+03
array([ 0. , -666.666667, -1333.333333, -2000. , -2666.666667, -3333.333333, -4000. , -4666.666667, -5333.333333, -6000. ])
- lon(nod2)float6460.3 21.67 -60.87 ... -52.57 46.77
array([ 60.29604427, 21.66774677, -60.86877627, ..., 43.86120549, -52.57160535, 46.769846 ])
- lat(nod2)float64-86.05 -89.97 39.7 ... 1.721 63.64
array([-86.04947409, -89.96522884, 39.69928812, ..., 30.53977103, 1.7213046 , 63.6375579 ])
- faces(nelem, three)int3274935 93671 69952 ... 75732 1512
array([[74935, 93671, 69952], [24049, 4567, 93671], [60075, 24049, 93671], ..., [ 1512, 55971, 52078], [ 2577, 55770, 1512], [55770, 75732, 1512]], dtype=int32)
- fesom_var(nz1, time, nod2)float64dask.array<chunksize=(10, 10, 100000), meta=np.ndarray>
Array Chunk Bytes 80.00 MB 80.00 MB Shape (10, 10, 100000) (10, 10, 100000) Count 1 Tasks 1 Chunks Type float64 numpy.ndarray