import oceanbench
oceanbench.__version__'0.5.1'
Insert here the code that opens the challenger dataset as
challenger_dataset: xarray.Dataset
# SPDX-FileCopyrightText: 2025 Mercator Ocean International <https://www.mercator-ocean.eu/>
#
# SPDX-License-Identifier: EUPL-1.2
# Open LangYa forecasts with xarray
import xarray
import oceanbench
challenger_dataset: xarray.Dataset = oceanbench.datasets.challenger.langya()
challenger_dataset<xarray.Dataset> Size: 2TB
Dimensions: (first_day_datetime: 52, lead_day_index: 7, depth: 32,
latitude: 2041, longitude: 4320)
Coordinates:
* depth (depth) float32 128B 0.494 1.541 2.646 ... 453.9 541.1
* latitude (latitude) float64 16kB -80.0 -79.92 ... 89.92 90.0
* lead_day_index (lead_day_index) int64 56B 0 1 2 3 4 5 6
* longitude (longitude) float64 35kB -180.0 -179.9 ... 179.8 179.9
* first_day_datetime (first_day_datetime) datetime64[ns] 416B 2024-01-03 ....
Data variables:
so (first_day_datetime, lead_day_index, depth, latitude, longitude) float32 411GB dask.array<chunksize=(1, 1, 1, 256, 512), meta=np.ndarray>
thetao (first_day_datetime, lead_day_index, depth, latitude, longitude) float32 411GB dask.array<chunksize=(1, 1, 1, 256, 512), meta=np.ndarray>
uo (first_day_datetime, lead_day_index, depth, latitude, longitude) float32 411GB dask.array<chunksize=(1, 1, 1, 256, 512), meta=np.ndarray>
vo (first_day_datetime, lead_day_index, depth, latitude, longitude) float32 411GB dask.array<chunksize=(1, 1, 1, 256, 512), meta=np.ndarray>
zos (first_day_datetime, lead_day_index, latitude, longitude) float32 13GB dask.array<chunksize=(1, 1, 256, 512), meta=np.ndarray>
Attributes:
Conventions: CF-1.8
challenger: langya
forecast_reference_time: 2024-01-02
oceanbench_source_kind: challenger
oceanbench_source_name: langyaarray([4.940250e-01, 1.541375e+00, 2.645669e+00, 3.819495e+00, 5.078224e+00,
6.440614e+00, 7.929560e+00, 9.572997e+00, 1.140500e+01, 1.346714e+01,
1.581007e+01, 1.849556e+01, 2.159882e+01, 2.521141e+01, 2.944473e+01,
3.443415e+01, 4.034405e+01, 4.737369e+01, 5.576429e+01, 6.580727e+01,
7.785385e+01, 9.232607e+01, 1.097293e+02, 1.306660e+02, 1.558507e+02,
1.861256e+02, 2.224752e+02, 2.660403e+02, 3.181274e+02, 3.802130e+02,
4.539377e+02, 5.410889e+02], dtype=float32)array([-80. , -79.916667, -79.833333, ..., 89.833333, 89.916667,
90. ], shape=(2041,))array([0, 1, 2, 3, 4, 5, 6])
array([-180. , -179.916667, -179.833333, ..., 179.75 , 179.833333,
179.916667], shape=(4320,))array(['2024-01-03T00:00:00.000000000', '2024-01-10T00:00:00.000000000',
'2024-01-17T00:00:00.000000000', '2024-01-24T00:00:00.000000000',
'2024-01-31T00:00:00.000000000', '2024-02-07T00:00:00.000000000',
'2024-02-14T00:00:00.000000000', '2024-02-21T00:00:00.000000000',
'2024-02-28T00:00:00.000000000', '2024-03-06T00:00:00.000000000',
'2024-03-13T00:00:00.000000000', '2024-03-20T00:00:00.000000000',
'2024-03-27T00:00:00.000000000', '2024-04-03T00:00:00.000000000',
'2024-04-10T00:00:00.000000000', '2024-04-17T00:00:00.000000000',
'2024-04-24T00:00:00.000000000', '2024-05-01T00:00:00.000000000',
'2024-05-08T00:00:00.000000000', '2024-05-15T00:00:00.000000000',
'2024-05-22T00:00:00.000000000', '2024-05-29T00:00:00.000000000',
'2024-06-05T00:00:00.000000000', '2024-06-12T00:00:00.000000000',
'2024-06-19T00:00:00.000000000', '2024-06-26T00:00:00.000000000',
'2024-07-03T00:00:00.000000000', '2024-07-10T00:00:00.000000000',
'2024-07-17T00:00:00.000000000', '2024-07-24T00:00:00.000000000',
'2024-07-31T00:00:00.000000000', '2024-08-07T00:00:00.000000000',
'2024-08-14T00:00:00.000000000', '2024-08-21T00:00:00.000000000',
'2024-08-28T00:00:00.000000000', '2024-09-04T00:00:00.000000000',
'2024-09-11T00:00:00.000000000', '2024-09-18T00:00:00.000000000',
'2024-09-25T00:00:00.000000000', '2024-10-02T00:00:00.000000000',
'2024-10-09T00:00:00.000000000', '2024-10-16T00:00:00.000000000',
'2024-10-23T00:00:00.000000000', '2024-10-30T00:00:00.000000000',
'2024-11-06T00:00:00.000000000', '2024-11-13T00:00:00.000000000',
'2024-11-20T00:00:00.000000000', '2024-11-27T00:00:00.000000000',
'2024-12-04T00:00:00.000000000', '2024-12-11T00:00:00.000000000',
'2024-12-18T00:00:00.000000000', '2024-12-25T00:00:00.000000000'],
dtype='datetime64[ns]')
|
||||||||||||||||
|
||||||||||||||||
|
||||||||||||||||
|
||||||||||||||||
|
||||||||||||||||
PandasIndex(Index([0.49402499198913574, 1.5413750410079956, 2.6456689834594727,
3.8194949626922607, 5.078224182128906, 6.440614223480225,
7.92956018447876, 9.572997093200684, 11.404999732971191,
13.467140197753906, 15.810070037841797, 18.495559692382812,
21.598819732666016, 25.211410522460938, 29.444730758666992,
34.43415069580078, 40.344051361083984, 47.37369155883789,
55.76428985595703, 65.80726623535156, 77.85385131835938,
92.3260726928711, 109.72930145263672, 130.66600036621094,
155.85069274902344, 186.12559509277344, 222.47520446777344,
266.0403137207031, 318.1274108886719, 380.2130126953125,
453.9377136230469, 541.0889282226562],
dtype='float32', name='depth'))PandasIndex(Index([ -80.0, -79.91666666666667, -79.83333333333333,
-79.75, -79.66666666666667, -79.58333333333333,
-79.5, -79.41666666666667, -79.33333333333333,
-79.25,
...
89.25, 89.33333333333334, 89.41666666666666,
89.5, 89.58333333333334, 89.66666666666666,
89.75, 89.83333333333334, 89.91666666666666,
90.0],
dtype='float64', name='latitude', length=2041))PandasIndex(Index([0, 1, 2, 3, 4, 5, 6], dtype='int64', name='lead_day_index'))
PandasIndex(Index([ -180.0, -179.91666666666666, -179.83333333333334,
-179.75, -179.66666666666666, -179.58333333333334,
-179.5, -179.41666666666666, -179.33333333333334,
-179.25,
...
179.16666666666669, 179.25, 179.33333333333331,
179.41666666666669, 179.5, 179.58333333333331,
179.66666666666669, 179.75, 179.83333333333331,
179.91666666666669],
dtype='float64', name='longitude', length=4320))PandasIndex(DatetimeIndex(['2024-01-03', '2024-01-10', '2024-01-17', '2024-01-24',
'2024-01-31', '2024-02-07', '2024-02-14', '2024-02-21',
'2024-02-28', '2024-03-06', '2024-03-13', '2024-03-20',
'2024-03-27', '2024-04-03', '2024-04-10', '2024-04-17',
'2024-04-24', '2024-05-01', '2024-05-08', '2024-05-15',
'2024-05-22', '2024-05-29', '2024-06-05', '2024-06-12',
'2024-06-19', '2024-06-26', '2024-07-03', '2024-07-10',
'2024-07-17', '2024-07-24', '2024-07-31', '2024-08-07',
'2024-08-14', '2024-08-21', '2024-08-28', '2024-09-04',
'2024-09-11', '2024-09-18', '2024-09-25', '2024-10-02',
'2024-10-09', '2024-10-16', '2024-10-23', '2024-10-30',
'2024-11-06', '2024-11-13', '2024-11-20', '2024-11-27',
'2024-12-04', '2024-12-11', '2024-12-18', '2024-12-25'],
dtype='datetime64[ns]', name='first_day_datetime', freq=None))oceanbench.metrics.rmsd_of_variables_compared_to_glorys_reanalysis(
challenger_dataset,
region=region,
)| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Sea surface height (m) [sea_surface_height_above_geoid]{surface} | 0.072023 | 0.073918 | 0.072891 | 0.073820 | 0.074834 | 0.078550 | 0.081114 |
| Temperature (°C) [sea_water_potential_temperature]{surface} | 0.687360 | 0.670888 | 0.576500 | 0.589326 | 0.602323 | 0.651077 | 0.709682 |
| Salinity (PSU) [sea_water_salinity]{surface} | 0.631916 | 0.636078 | 0.638657 | 0.643254 | 0.646737 | 0.652201 | 0.657460 |
| Meridional current (m/s) [northward_sea_water_velocity]{surface} | 0.134061 | 0.133371 | 0.133055 | 0.133195 | 0.133054 | 0.143322 | 0.148549 |
| Zonal current (m/s) [eastward_sea_water_velocity]{surface} | 0.138142 | 0.138491 | 0.138966 | 0.139325 | 0.139536 | 0.148618 | 0.153138 |
| Temperature (°C) [sea_water_potential_temperature]{50m} | 0.950404 | 0.950264 | 0.919001 | 0.922108 | 0.924642 | 0.968531 | 1.001719 |
| Salinity (PSU) [sea_water_salinity]{50m} | 0.255754 | 0.256806 | 0.256516 | 0.257403 | 0.258462 | 0.261613 | 0.264048 |
| Meridional current (m/s) [northward_sea_water_velocity]{50m} | 0.121125 | 0.120621 | 0.122133 | 0.121976 | 0.121637 | 0.130144 | 0.134482 |
| Zonal current (m/s) [eastward_sea_water_velocity]{50m} | 0.123707 | 0.123929 | 0.125717 | 0.125674 | 0.125389 | 0.132617 | 0.136603 |
| Temperature (°C) [sea_water_potential_temperature]{100m} | 1.109991 | 1.110378 | 1.107677 | 1.113160 | 1.117255 | 1.153011 | 1.178470 |
| Salinity (PSU) [sea_water_salinity]{100m} | 0.200461 | 0.200645 | 0.200802 | 0.201295 | 0.201938 | 0.203815 | 0.205066 |
| Meridional current (m/s) [northward_sea_water_velocity]{100m} | 0.117668 | 0.117268 | 0.118865 | 0.118585 | 0.118084 | 0.125005 | 0.128605 |
| Zonal current (m/s) [eastward_sea_water_velocity]{100m} | 0.123853 | 0.123834 | 0.125168 | 0.124881 | 0.124522 | 0.130638 | 0.133684 |
| Temperature (°C) [sea_water_potential_temperature]{200m} | 0.915597 | 0.915726 | 0.917669 | 0.919395 | 0.921643 | 0.937164 | 0.946815 |
| Salinity (PSU) [sea_water_salinity]{200m} | 0.163441 | 0.163482 | 0.163669 | 0.163928 | 0.164310 | 0.165604 | 0.166450 |
| Meridional current (m/s) [northward_sea_water_velocity]{200m} | 0.114422 | 0.114321 | 0.116194 | 0.115673 | 0.114889 | 0.118583 | 0.119920 |
| Zonal current (m/s) [eastward_sea_water_velocity]{200m} | 0.121445 | 0.121442 | 0.123211 | 0.122469 | 0.121601 | 0.125303 | 0.126358 |
| Temperature (°C) [sea_water_potential_temperature]{300m} | 0.773085 | 0.772940 | 0.775136 | 0.776386 | 0.778170 | 0.791211 | 0.798832 |
| Salinity (PSU) [sea_water_salinity]{300m} | 0.136481 | 0.136479 | 0.136693 | 0.136904 | 0.137220 | 0.138365 | 0.139131 |
| Meridional current (m/s) [northward_sea_water_velocity]{300m} | 0.111761 | 0.111690 | 0.113587 | 0.112975 | 0.112153 | 0.115396 | 0.116337 |
| Zonal current (m/s) [eastward_sea_water_velocity]{300m} | 0.116901 | 0.116902 | 0.118713 | 0.118014 | 0.117161 | 0.120230 | 0.120948 |
| Temperature (°C) [sea_water_potential_temperature]{500m} | 0.593490 | 0.594044 | 0.596992 | 0.598689 | 0.600963 | 0.610382 | 0.616975 |
| Salinity (PSU) [sea_water_salinity]{500m} | 0.103536 | 0.103617 | 0.103866 | 0.104105 | 0.104427 | 0.105136 | 0.105770 |
| Meridional current (m/s) [northward_sea_water_velocity]{500m} | 0.102574 | 0.102618 | 0.104180 | 0.103518 | 0.102744 | 0.105627 | 0.106327 |
| Zonal current (m/s) [eastward_sea_water_velocity]{500m} | 0.107471 | 0.107505 | 0.109105 | 0.108550 | 0.107916 | 0.110194 | 0.110620 |
oceanbench.metrics.rmsd_of_mixed_layer_depth_compared_to_glorys_reanalysis(
challenger_dataset,
region=region,
)| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Mixed layer depth (m) [ocean_mixed_layer_thickness]{surface} | 41.253272 | 39.992063 | 37.18128 | 38.132036 | 38.904035 | 40.362156 | 41.616102 |
oceanbench.metrics.rmsd_of_geostrophic_currents_compared_to_glorys_reanalysis(
challenger_dataset,
region=region,
)| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Meridional geostrophic current (m/s) [geostrophic_northward_sea_water_velocity]{surface} | 0.180441 | 0.183232 | 0.169623 | 0.172992 | 0.175595 | 0.182338 | 0.193796 |
| Zonal geostrophic current (m/s) [geostrophic_eastward_sea_water_velocity]{surface} | 0.206873 | 0.209844 | 0.189610 | 0.193785 | 0.196521 | 0.204235 | 0.217779 |
| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Temperature (°C) [sea_water_potential_temperature]{surface} | 0.915231 | 0.905541 | 0.802906 | 0.835050 | 0.866614 | 0.929662 | 0.963780 |
| Temperature (°C) [sea_water_potential_temperature]{0-5m} | 0.876083 | 0.880324 | 0.800879 | 0.841711 | 0.850585 | 0.900836 | 0.966187 |
| Temperature (°C) [sea_water_potential_temperature]{5-100m} | 0.949060 | 0.948322 | 0.903461 | 0.933663 | 0.930487 | 0.962093 | 1.003347 |
| Temperature (°C) [sea_water_potential_temperature]{100-300m} | 0.825735 | 0.843423 | 0.828361 | 0.831906 | 0.847287 | 0.854374 | 0.882753 |
| Temperature (°C) [sea_water_potential_temperature]{300-600m} | 0.571222 | 0.581156 | 0.575457 | 0.572631 | 0.579814 | 0.610892 | 0.617262 |
| Salinity (PSU) [sea_water_salinity]{0-5m} | 0.273599 | 0.294627 | 0.286761 | 0.328831 | 0.288515 | 0.299874 | 0.297798 |
| Salinity (PSU) [sea_water_salinity]{5-100m} | 0.248641 | 0.254782 | 0.257321 | 0.251758 | 0.262232 | 0.261674 | 0.260704 |
| Salinity (PSU) [sea_water_salinity]{100-300m} | 0.136876 | 0.138122 | 0.139135 | 0.137740 | 0.141230 | 0.139614 | 0.145758 |
| Salinity (PSU) [sea_water_salinity]{300-600m} | 0.092536 | 0.092076 | 0.091227 | 0.091301 | 0.092119 | 0.094917 | 0.095628 |
| Sea level anomaly (m) [sea_surface_height_above_geoid]{surface} | 0.050793 | 0.052326 | 0.050767 | 0.052544 | 0.053817 | 0.058929 | 0.061671 |
| Zonal current (m/s) [eastward_sea_water_velocity]{15m} | 0.217414 | 0.216927 | 0.218976 | 0.219425 | 0.217107 | 0.219851 | 0.224268 |
| Meridional current (m/s) [northward_sea_water_velocity]{15m} | 0.198994 | 0.198005 | 0.198776 | 0.201059 | 0.200532 | 0.204468 | 0.206431 |
oceanbench.metrics.rmsd_of_variables_compared_to_glo12_analysis(
challenger_dataset,
region=region,
)| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Sea surface height (m) [sea_surface_height_above_geoid]{surface} | 0.029689 | 0.034530 | 0.033617 | 0.037379 | 0.041130 | 0.049836 | 0.054226 |
| Temperature (°C) [sea_water_potential_temperature]{surface} | 0.457759 | 0.460383 | 0.352981 | 0.399455 | 0.439768 | 0.526843 | 0.602856 |
| Salinity (PSU) [sea_water_salinity]{surface} | 0.120910 | 0.173950 | 0.205135 | 0.230620 | 0.250193 | 0.270741 | 0.288437 |
| Meridional current (m/s) [northward_sea_water_velocity]{surface} | 0.103623 | 0.101192 | 0.089492 | 0.096429 | 0.103086 | 0.126961 | 0.139002 |
| Zonal current (m/s) [eastward_sea_water_velocity]{surface} | 0.102009 | 0.102854 | 0.092702 | 0.099850 | 0.107074 | 0.129164 | 0.141547 |
| Temperature (°C) [sea_water_potential_temperature]{50m} | 0.416372 | 0.475870 | 0.475827 | 0.524641 | 0.570101 | 0.665562 | 0.734679 |
| Salinity (PSU) [sea_water_salinity]{50m} | 0.066531 | 0.091376 | 0.107585 | 0.121648 | 0.133412 | 0.147152 | 0.157158 |
| Meridional current (m/s) [northward_sea_water_velocity]{50m} | 0.081139 | 0.079218 | 0.071373 | 0.077992 | 0.084433 | 0.108282 | 0.119949 |
| Zonal current (m/s) [eastward_sea_water_velocity]{50m} | 0.076389 | 0.077818 | 0.073127 | 0.079857 | 0.086546 | 0.107916 | 0.119260 |
| Temperature (°C) [sea_water_potential_temperature]{100m} | 0.403552 | 0.474883 | 0.500418 | 0.559480 | 0.614294 | 0.722796 | 0.799875 |
| Salinity (PSU) [sea_water_salinity]{100m} | 0.053370 | 0.073813 | 0.088801 | 0.101466 | 0.111872 | 0.123279 | 0.131257 |
| Meridional current (m/s) [northward_sea_water_velocity]{100m} | 0.071731 | 0.071172 | 0.065260 | 0.071757 | 0.078234 | 0.100167 | 0.111220 |
| Zonal current (m/s) [eastward_sea_water_velocity]{100m} | 0.067112 | 0.070528 | 0.068754 | 0.075550 | 0.082075 | 0.101109 | 0.111101 |
| Temperature (°C) [sea_water_potential_temperature]{200m} | 0.275573 | 0.332782 | 0.371491 | 0.424290 | 0.471415 | 0.550603 | 0.601560 |
| Salinity (PSU) [sea_water_salinity]{200m} | 0.040560 | 0.057610 | 0.070658 | 0.081568 | 0.090582 | 0.100258 | 0.107290 |
| Meridional current (m/s) [northward_sea_water_velocity]{200m} | 0.057463 | 0.057670 | 0.053646 | 0.059832 | 0.065866 | 0.084335 | 0.093891 |
| Zonal current (m/s) [eastward_sea_water_velocity]{200m} | 0.051429 | 0.053787 | 0.053271 | 0.059640 | 0.065764 | 0.082226 | 0.090604 |
| Temperature (°C) [sea_water_potential_temperature]{300m} | 0.225147 | 0.278015 | 0.318053 | 0.365785 | 0.407789 | 0.475586 | 0.518079 |
| Salinity (PSU) [sea_water_salinity]{300m} | 0.033343 | 0.048113 | 0.059481 | 0.068848 | 0.076556 | 0.084778 | 0.090850 |
| Meridional current (m/s) [northward_sea_water_velocity]{300m} | 0.052874 | 0.053418 | 0.050198 | 0.056310 | 0.062210 | 0.079381 | 0.088446 |
| Zonal current (m/s) [eastward_sea_water_velocity]{300m} | 0.047151 | 0.049325 | 0.048776 | 0.054932 | 0.060786 | 0.076203 | 0.084286 |
| Temperature (°C) [sea_water_potential_temperature]{500m} | 0.160492 | 0.210484 | 0.250233 | 0.290097 | 0.324742 | 0.375465 | 0.409905 |
| Salinity (PSU) [sea_water_salinity]{500m} | 0.023488 | 0.035477 | 0.044680 | 0.051959 | 0.057894 | 0.063651 | 0.068296 |
| Meridional current (m/s) [northward_sea_water_velocity]{500m} | 0.044352 | 0.046791 | 0.046384 | 0.052379 | 0.057908 | 0.071388 | 0.079136 |
| Zonal current (m/s) [eastward_sea_water_velocity]{500m} | 0.038852 | 0.042913 | 0.044919 | 0.051030 | 0.056590 | 0.068448 | 0.075234 |
oceanbench.metrics.rmsd_of_mixed_layer_depth_compared_to_glo12_analysis(
challenger_dataset,
region=region,
)| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Mixed layer depth (m) [ocean_mixed_layer_thickness]{surface} | 32.056032 | 31.488696 | 27.17607 | 29.365048 | 31.077645 | 33.51047 | 36.310015 |
oceanbench.metrics.rmsd_of_geostrophic_currents_compared_to_glo12_analysis(
challenger_dataset,
region=region,
)| Lead day 1 | Lead day 2 | Lead day 3 | Lead day 4 | Lead day 5 | Lead day 6 | Lead day 7 | |
|---|---|---|---|---|---|---|---|
| Meridional geostrophic current (m/s) [geostrophic_northward_sea_water_velocity]{surface} | 0.147676 | 0.156357 | 0.135592 | 0.144168 | 0.151702 | 0.167649 | 0.184562 |
| Zonal geostrophic current (m/s) [geostrophic_eastward_sea_water_velocity]{surface} | 0.179308 | 0.191259 | 0.164299 | 0.172068 | 0.179878 | 0.193877 | 0.213773 |