Thredds resources for GUI

from datetime import datetime
from opendrift.models.oceandrift import OceanDrift
from opendrift.readers.reader_netCDF_CF_generic import Reader

o = OceanDrift(loglevel=0)

thredds_resources = open(o.test_data_folder()+'../../opendrift/scripts/data_sources.txt').readlines()
times = {}
14:10:43 DEBUG   opendrift.config:168: Adding 17 config items from __init__
14:10:43 DEBUG   opendrift.config:178:   Overwriting config item readers:max_number_of_fails
14:10:43 DEBUG   opendrift.config:168: Adding 5 config items from __init__
14:10:43 INFO    opendrift.models.basemodel:507: OpenDriftSimulation initialised (version 1.11.2 / v1.11.2-69-gb16198b)
14:10:43 DEBUG   opendrift.config:168: Adding 15 config items from oceandrift
14:10:43 DEBUG   opendrift.config:178:   Overwriting config item seed:z

Open each thredds dataset to check contents and spatial coverage

for t in thredds_resources:
    if t.startswith('http') and not t.startswith('cmems'):
        start = datetime.now()
        print('\n#%%\n%s\n' % t)
        r = Reader(t)
        print(r)
        ts = str(datetime.now() - start)
        times[t] = ts
        print('Time to open reader: ', ts)
        if r.global_coverage():
            lscale = 'coarse'
        else:
            lscale = 'intermediate'
        r.plot(lscale=lscale)
  • https://thredds.met.no/thredds/dodsC/sea/norkyst800m/1h/aggregate_be
  • https://thredds.met.no/thredds/dodsC/mepslatest/meps_lagged_6_h_latest_2_5km_latest.nc
  • https://thredds.met.no/thredds/dodsC/fou-hi/barents_eps_zdepth_be
  • https://thredds.met.no/thredds/dodsC/cmems/mywavewam3km/dataset-wam-arctic-1hr3km-be.ncml
  • https://thredds.met.no/thredds/dodsC/ww3_4km_agg
  • https://thredds.met.no/thredds/dodsC/cmems/topaz6/dataset-topaz6-arc-15min-3km-be.ncml
  • https://thredds.met.no/thredds/dodsC/aromearcticlatest/latest/arome_arctic_lagged_12_h_latest_2_5km_latest.nc
  • https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd
  • https://tds.hycom.org/thredds/dodsC/GLBy0.08/latest
  • https://tds.hycom.org/thredds/dodsC/GLBy0.08/expt_93.0/uv3z
#%
https://thredds.met.no/thredds/dodsC/sea/norkyst800m/1h/aggregate_be


14:10:43 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/sea/norkyst800m/1h/aggregate_be

14:10:45 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:10:45 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'grid_mapping_name': 'polar_stereographic', 'straight_vertical_longitude_from_pole': 70.0, 'latitude_of_projection_origin': 90.0, 'standard_parallel': 60.0, 'false_easting': 3192800.0, 'false_northing': 1784000.0, 'semi_major_axis': 6378137.0, 'semi_minor_axis': 6356752.3142, 'proj4': '+proj=stere +lat_0=90 +lat_ts=60 +lon_0=70 +x_0=3192800 +y_0=1784000 +a=6378137 +b=6356752.3142 +units=m +no_defs +type=crs'}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:10:45 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'x': 'X', 'y': 'Y', 'z': 'depth', 'time': 'time'}
14:10:45 DEBUG   opendrift.readers.reader_netCDF_CF_generic:340: Skipped variables without standard_name: ['angle', 'tke', 'ubar', 'vbar']
14:10:45 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 25 for reader https://thredds.met.no/thredds/dodsC/sea/norkyst800m/1h/aggregate_be
, assuming a maximum average speed of 5 m/s and time span of 1:00:00
14:10:45 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:10:45 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_wind', 'y_wind'] -> wind_speed
14:10:45 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_sea_water_velocity', 'y_sea_water_velocity'] -> sea_water_speed
===========================
Reader: https://thredds.met.no/thredds/dodsC/sea/norkyst800m/1h/aggregate_be

Projection:
  +proj=stere +lat_0=90 +lat_ts=60 +lon_0=70 +x_0=3192800 +y_0=1784000 +a=6378137 +b=6356752.3142 +units=m +no_defs +type=crs
Coverage: [degrees]
  xmin: 0.000000   xmax: 2080800.000000   step: 800   numx: 2602
  ymin: 0.000000   ymax: 720800.000000   step: 800   numy: 902
  Corners (lon, lat):
    ( -1.58,  58.50)  ( 23.71,  75.32)
    (  9.19,  55.91)  ( 38.06,  70.03)
Vertical levels [m]:
  [   -0.    -3.   -10.   -15.   -25.   -50.   -75.  -100.  -150.  -200.
  -250.  -300.  -500. -1000. -2000. -3000.]
Available time range:
  start: 2017-02-20 00:00:00   end: 2024-06-08 00:00:00   step: 1:00:00
    63961 times (3372 missing)
Variables:
  sea_floor_depth_below_sea_level
  latitude
  longitude
  x_wind
  y_wind
  sea_water_salinity
  sea_water_temperature
  x_sea_water_velocity
  eastward_sea_water_velocity
  y_sea_water_velocity
  northward_sea_water_velocity
  upward_sea_water_velocity
  sea_surface_elevation
  wind_speed - derived from ['x_wind', 'y_wind']
  sea_water_speed - derived from ['x_sea_water_velocity', 'y_sea_water_velocity']
===========================

Time to open reader:  0:00:01.704806

#%
https://thredds.met.no/thredds/dodsC/mepslatest/meps_lagged_6_h_latest_2_5km_latest.nc


14:10:47 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/mepslatest/meps_lagged_6_h_latest_2_5km_latest.nc

14:10:48 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:10:48 DEBUG   opendrift.readers.reader_netCDF_CF_generic:231: 30 ensemble members available
14:10:48 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'grid_mapping_name': 'lambert_conformal_conic', 'standard_parallel': array([63.3, 63.3]), 'longitude_of_central_meridian': 15.0, 'latitude_of_projection_origin': 63.3, 'earth_radius': 6371000.0}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:10:48 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'time': 'time', 'x': 'x', 'y': 'y'}
14:10:48 DEBUG   opendrift.readers.reader_netCDF_CF_generic:340: Skipped variables without standard_name: ['fog_area_fraction']
14:10:48 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 10 for reader https://thredds.met.no/thredds/dodsC/mepslatest/meps_lagged_6_h_latest_2_5km_latest.nc
, assuming a maximum average speed of 5 m/s and time span of 1:00:00
14:10:48 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:10:48 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_wind', 'y_wind'] -> wind_speed
===========================
Reader: https://thredds.met.no/thredds/dodsC/mepslatest/meps_lagged_6_h_latest_2_5km_latest.nc

Projection:
  +proj=lcc +lat_0=63.3 +lon_0=15 +lat_1=63.3 +lat_2=63.3 +x_0=0 +y_0=0 +R=6371000 +units=m +no_defs +type=crs
Coverage: [degrees]
  xmin: -1060084.000000   xmax: 1309916.000000   step: 2500   numx: 949
  ymin: -1332517.875000   ymax: 1337482.125000   step: 2500   numy: 1069
  Corners (lon, lat):
    (-18.12,  72.76)  ( 54.24,  71.58)
    (  0.28,  50.32)  ( 33.03,  49.77)
Vertical levels [m]:
  Not specified
Available time range:
  start: 2024-06-04 11:00:00   end: 2024-06-07 00:00:00   step: 1:00:00
    62 times (0 missing)
Variables (30 ensemble members):
  longitude
  latitude
  x_wind
  y_wind
  air_temperature
  relative_humidity
  cloud_area_fraction
  air_pressure_at_sea_level
  precipitation_amount
  snowfall_amount
  wind_speed_of_gust
  wind_speed - derived from ['x_wind', 'y_wind']
===========================

Time to open reader:  0:00:00.947000

#%
https://thredds.met.no/thredds/dodsC/fou-hi/barents_eps_zdepth_be


14:10:48 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/fou-hi/barents_eps_zdepth_be

14:11:12 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:12 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'grid_mapping_name': 'lambert_conformal_conic', 'standard_parallel': array([77.5, 77.5], dtype=float32), 'longitude_of_central_meridian': -25.0, 'latitude_of_projection_origin': 77.5, 'earth_radius': 6371000.0, 'proj4': '+proj=lcc +lat_0=77.5 +lon_0=-25 +lat_1=77.5 +lat_2=77.5 +no_defs +R=6.371e+06'}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:11:13 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'x': 'X', 'y': 'Y', 'z': 'depth', 'time': 'time'}
14:11:13 DEBUG   opendrift.readers.reader_netCDF_CF_generic:340: Skipped variables without standard_name: ['angle']
14:11:13 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 10 for reader https://thredds.met.no/thredds/dodsC/fou-hi/barents_eps_zdepth_be
, assuming a maximum average speed of 5 m/s and time span of 1:00:00
14:11:13 INFO    opendrift.readers.basereader:166: Variable x_sea_water_velocity will be rotated from eastward_sea_water_velocity
14:11:13 INFO    opendrift.readers.basereader:166: Variable y_sea_water_velocity will be rotated from northward_sea_water_velocity
14:11:13 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:13 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_wind', 'y_wind'] -> wind_speed
14:11:13 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['sea_ice_x_velocity', 'sea_ice_y_velocity'] -> sea_ice_speed
14:11:13 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_sea_water_velocity', 'y_sea_water_velocity'] -> sea_water_speed
===========================
Reader: https://thredds.met.no/thredds/dodsC/fou-hi/barents_eps_zdepth_be

Projection:
  +proj=lcc +lat_0=77.5 +lon_0=-25 +lat_1=77.5 +lat_2=77.5 +x_0=0 +y_0=0 +R=6371000 +units=m +no_defs +type=crs
Coverage: [degrees]
  xmin: 278603.187500   xmax: 2123602.750000   step: 2500   numx: 738
  ymin: -897931.625000   ymax: 1472067.625000   step: 2500   numy: 948
  Corners (lon, lat):
    ( 79.56,  87.57)  ( 68.83,  71.11)
    (-17.96,  69.30)  ( 18.62,  62.13)
Vertical levels [m]:
  [   -0.    -3.   -10.   -15.   -25.   -50.   -75.  -100.  -150.  -200.
  -250.  -300.  -500. -1000. -2000. -3000.]
Available time range:
  start: 2022-06-29 00:00:00   end: 2024-06-08 00:00:00   step: 1:00:00
    17041 times (528 missing)
Variables:
  sea_floor_depth_below_sea_level
  latitude
  longitude
  sea_binary_mask
  ocean_vertical_diffusivity
  x_wind
  y_wind
  sea_ice_area_fraction
  sea_ice_thickness
  sea_ice_x_velocity
  sea_ice_y_velocity
  sea_water_salinity
  sea_water_temperature
  eastward_sea_water_velocity
  northward_sea_water_velocity
  upward_sea_water_velocity
  sea_surface_elevation
  x_sea_water_velocity
  y_sea_water_velocity
  wind_speed - derived from ['x_wind', 'y_wind']
  sea_ice_speed - derived from ['sea_ice_x_velocity', 'sea_ice_y_velocity']
  sea_water_speed - derived from ['x_sea_water_velocity', 'y_sea_water_velocity']
===========================

Time to open reader:  0:00:24.463510

#%
https://thredds.met.no/thredds/dodsC/cmems/mywavewam3km/dataset-wam-arctic-1hr3km-be.ncml


14:11:13 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/cmems/mywavewam3km/dataset-wam-arctic-1hr3km-be.ncml

14:11:18 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:18 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'grid_mapping_name': 'polar_stereographic', 'scale_factor_at_projection_origin': 1.0, 'straight_vertical_longitude_from_pole': -45.0, 'latitude_of_projection_origin': 90.0, 'earth_radius': 6371000.0, 'proj4': '+proj=stere +lon_0=-45 +lat_0=90 +k=1 +R=6371000 +no_defs'}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:11:18 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'y': 'rlat', 'x': 'rlon', 'time': 'time'}
14:11:18 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 8 for reader https://thredds.met.no/thredds/dodsC/cmems/mywavewam3km/dataset-wam-arctic-1hr3km-be.ncml
, assuming a maximum average speed of 5 m/s and time span of 1:00:00
14:11:18 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:18 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['sea_water_speed', 'sea_water_to_direction'] -> x_sea_water_velocity
14:11:18 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['sea_water_speed', 'sea_water_to_direction'] -> y_sea_water_velocity
14:11:18 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['sea_surface_wave_stokes_drift_x_velocity', 'sea_surface_wave_stokes_drift_y_velocity'] -> sea_surface_wave_stokes_drift_speed
===========================
Reader: https://thredds.met.no/thredds/dodsC/cmems/mywavewam3km/dataset-wam-arctic-1hr3km-be.ncml

Projection:
  +proj=stere +lat_0=90 +lon_0=-45 +k=1 +x_0=0 +y_0=0 +R=6371000 +units=m +no_defs +type=crs
Coverage: [degrees]
  xmin: -3600000.000000   xmax: 3798000.000000   step: 3000   numx: 2467
  ymin: -4300000.000000   ymax: 2798000.000000   step: 3000   numy: 2367
  Corners (lon, lat):
    (-172.86,  50.62)  ( 81.38,  49.37)
    (-84.94,  42.49)  ( -3.55,  41.52)
Vertical levels [m]:
  Not specified
Available time range:
  start: 2021-10-01 00:00:00   end: 2024-06-13 12:00:00   step: 1:00:00
    23677 times (0 missing)
Variables:
  sea_floor_depth_below_sea_level
  longitude
  latitude
  sea_ice_area_fraction
  sea_ice_thickness
  sea_water_speed
  sea_water_to_direction
  sea_surface_wave_significant_height
  sea_surface_wave_period_at_variance_spectral_density_maximum
  sea_surface_wave_mean_period_from_variance_spectral_density_inverse_frequency_moment
  sea_surface_wave_mean_period_from_variance_spectral_density_second_frequency_moment
  sea_surface_wave_from_direction
  sea_surface_wind_wave_significant_height
  sea_surface_wind_wave_mean_period_from_variance_spectral_density_first_frequency_moment
  sea_surface_wind_wave_from_direction
  sea_surface_primary_swell_wave_significant_height
  sea_surface_primary_swell_wave_mean_period
  sea_surface_primary_swell_wave_from_direction
  sea_surface_secondary_swell_wave_significant_height
  sea_surface_secondary_swell_wave_mean_period
  sea_surface_secondary_swell_wave_from_direction
  sea_surface_wave_from_direction_at_variance_spectral_density_maximum
  sea_surface_wave_stokes_drift_x_velocity
  sea_surface_wave_stokes_drift_y_velocity
  sea_surface_wave_maximum_crest_height
  sea_surface_wave_maximum_height
  x_sea_water_velocity - derived from ['sea_water_speed', 'sea_water_to_direction']
  y_sea_water_velocity - derived from ['sea_water_speed', 'sea_water_to_direction']
  sea_surface_wave_stokes_drift_speed - derived from ['sea_surface_wave_stokes_drift_x_velocity', 'sea_surface_wave_stokes_drift_y_velocity']
===========================

Time to open reader:  0:00:05.518893

#%
https://thredds.met.no/thredds/dodsC/ww3_4km_agg


14:11:18 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/ww3_4km_agg

14:11:30 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:30 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'proj4': '+proj=ob_tran +o_proj=longlat +lon_0=-40 +o_lat_p=22 +R=6.371e+06 +no_defs', 'grid_mapping_name': 'rotated_latitude_longitude', 'grid_north_pole_longitude': 140.0, 'grid_north_pole_latitude': 22.0, 'earth_radius': 6371000.0}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:11:30 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'y': 'rlat', 'x': 'rlon', 'time': 'time'}
14:11:30 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 7 for reader https://thredds.met.no/thredds/dodsC/ww3_4km_agg
, assuming a maximum average speed of 5 m/s and time span of 1:00:00
14:11:30 INFO    opendrift.readers.basereader:166: Variable x_wind will be rotated from eastward_wind
14:11:30 INFO    opendrift.readers.basereader:166: Variable y_wind will be rotated from northward_wind
14:11:30 INFO    opendrift.readers.basereader:166: Variable sea_surface_wave_stokes_drift_x_velocity will be rotated from eastward_surface_stokes_drift
14:11:30 INFO    opendrift.readers.basereader:166: Variable sea_surface_wave_stokes_drift_y_velocity will be rotated from northward_surface_stokes_drift
14:11:30 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:30 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['sea_surface_wave_stokes_drift_x_velocity', 'sea_surface_wave_stokes_drift_y_velocity'] -> sea_surface_wave_stokes_drift_speed
14:11:30 DEBUG   opendrift.readers.basereader.variables:114: NB: Converting degrees to radians due to ob_tran srs
===========================
Reader: https://thredds.met.no/thredds/dodsC/ww3_4km_agg

Projection:
  +proj=ob_tran +o_proj=longlat +o_lon_p=0 +o_lat_p=22 +lon_0=320 +R=6371000 +no_defs +type=crs
Coverage: [degrees]
  xmin: 5.530000   xmax: 30.450000   step: 0.04   numx: 623
  ymin: -14.350000   ymax: 26.650000   step: 0.04   numy: 1026
  Corners (lon, lat):
    ( 93.81,  83.15)  ( 65.69,  61.93)
    (-31.02,  53.25)  (  2.14,  42.96)
Vertical levels [m]:
  Not specified
Available time range:
  start: 2023-04-20 06:00:00   end: 2024-06-06 05:00:00   step: 1:00:00
    9912 times (0 missing)
Variables:
  longitude
  latitude
  status map
  sea_surface_wave_peak_frequency
  depth
  eastward_wind
  northward_wind
  sea_ice_area_fraction
  sea_surface_wave_significant_height
  mean_wave_length
  sea_surface_wind_wave_mean_period_from_variance_spectral_density_second_frequency_moment
  sea_surface_wind_wave_mean_period_from_variance_spectral_density_inverse_frequency_moment
  sea_surface_wind_wave_mean_period_from_variance_spectral_density_first_frequency_moment
  sea_surface_wave_from_direction
  sea_surface_wave_directional_spread
  sea_surface_wave_peak_direction
  sea_surface_wave_maximum_height
  sea_surface_wave_maximum_crest_height
  sea_surface_wave_maximum_height_std
  sea_surface_wave_maximum_crest_height_std
  sea_surface_wave_significant_height_partition_0
  sea_surface_wave_significant_height_partition_1
  sea_surface_wave_period_at_variance_spectral_density_maximum_partition_0
  sea_surface_wave_period_at_variance_spectral_density_maximum_partition_1
  sea_surface_wave_from_direction_partition_0
  sea_surface_wave_from_direction_partition_1
  sea_surface_swell_wave_mean_period_from_variance_spectral_density_first_frequency_moment
  sea_surface_swell_wave_mean_period_from_variance_spectral_density_second_frequency_moment
  eastward_friction_velocity
  northward_friction_velocity
  charnock_coefficient_for_surface_roughness_length_for_momentum_in_air
  wind_mixing_energy_flux_into_sea_water
  eastward_wave_supported_wind_stress
  northward_wave_supported_wind_stress
  sea_surface_wave_mean_period_from_variance_spectral_density_inverse_frequency_moment
  eastward_wave_to_ocean_stress
  northward_wave_to_ocean_stress
  wave_to_ocean_energy_flux
  eastward_stokes_transport
  northward_stokes_transport
  eastward_surface_stokes_drift
  northward_surface_stokes_drift
  eastward_wave_to_sea_ice_stress
  northward_wave_to_sea_ice_stress
  wave_to_sea_ice_energy_flux
  sea_surface_wave_period_at_variance_spectral_density_maximum
  wind_speed
  wind_from_direction
  x_wind
  y_wind
  sea_surface_wave_stokes_drift_x_velocity
  sea_surface_wave_stokes_drift_y_velocity
  sea_surface_wave_stokes_drift_speed - derived from ['sea_surface_wave_stokes_drift_x_velocity', 'sea_surface_wave_stokes_drift_y_velocity']
===========================

Time to open reader:  0:00:11.719048
14:11:30 DEBUG   opendrift.readers.basereader.variables:114: NB: Converting degrees to radians due to ob_tran srs
14:11:30 DEBUG   opendrift.readers.basereader.variables:114: NB: Converting degrees to radians due to ob_tran srs
14:11:30 DEBUG   opendrift.readers.basereader.variables:114: NB: Converting degrees to radians due to ob_tran srs

#%
https://thredds.met.no/thredds/dodsC/cmems/topaz6/dataset-topaz6-arc-15min-3km-be.ncml


14:11:30 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/cmems/topaz6/dataset-topaz6-arc-15min-3km-be.ncml

14:11:36 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:36 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'grid_mapping_name': 'polar_stereographic', 'latitude_of_projection_origin': 90.0, 'longitude_of_projection_origin': -45.0, 'scale_factor_at_projection_origin': 1.0, 'straight_vertical_longitude_from_pole': -45.0, 'earth_radius': 6378273.0, 'proj4': '+proj=stere +lon_0=-45 +lat_0=90 +k=1 +R=6378273 +no_defs', 'false_easting': 0.0, 'false_northing': 0.0}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:11:37 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'x': 'x', 'y': 'y', 'time': 'time'}
14:11:37 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 4 for reader https://thredds.met.no/thredds/dodsC/cmems/topaz6/dataset-topaz6-arc-15min-3km-be.ncml
, assuming a maximum average speed of 5 m/s and time span of 0:15:00
14:11:37 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:37 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_sea_water_velocity', 'y_sea_water_velocity'] -> sea_water_speed
===========================
Reader: https://thredds.met.no/thredds/dodsC/cmems/topaz6/dataset-topaz6-arc-15min-3km-be.ncml

Projection:
  +proj=stere +lat_0=90 +lon_0=-45 +k=1 +x_0=0 +y_0=0 +R=6378273 +units=m +no_defs +type=crs
Coverage: [degrees]
  xmin: -3600000.000000   xmax: 3797999.954224   step: 2999.88   numx: 2467
  ymin: -4300000.000000   ymax: 2797999.954224   step: 2999.88   numy: 2367
  Corners (lon, lat):
    (-172.86,  50.66)  ( 81.38,  49.41)
    (-84.94,  42.54)  ( -3.55,  41.57)
Vertical levels [m]:
  Not specified
Available time range:
  start: 2018-01-01 00:00:00   end: 2024-06-12 23:45:00   step: 0:15:00
    226080 times (0 missing)
Variables:
  longitude
  latitude
  sea_floor_depth_below_sea_level
  x_sea_water_velocity
  y_sea_water_velocity
  sea_surface_height_above_geoid
  sea_water_speed - derived from ['x_sea_water_velocity', 'y_sea_water_velocity']
===========================

Time to open reader:  0:00:07.049155

#%
https://thredds.met.no/thredds/dodsC/aromearcticlatest/latest/arome_arctic_lagged_12_h_latest_2_5km_latest.nc


14:11:37 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://thredds.met.no/thredds/dodsC/aromearcticlatest/latest/arome_arctic_lagged_12_h_latest_2_5km_latest.nc

14:11:38 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:38 DEBUG   opendrift.readers.reader_netCDF_CF_generic:231: 4 ensemble members available
14:11:38 DEBUG   opendrift.readers.reader_netCDF_CF_generic:134: Parsing CF grid mapping dictionary: {'grid_mapping_name': 'lambert_conformal_conic', 'standard_parallel': array([77.5, 77.5]), 'longitude_of_central_meridian': -25.0, 'latitude_of_projection_origin': 77.5, 'earth_radius': 6371000.0}
/opt/conda/envs/opendrift/lib/python3.11/site-packages/pyproj/crs/crs.py:1286: UserWarning: You will likely lose important projection information when converting to a PROJ string from another format. See: https://proj.org/faq.html#what-is-the-best-format-for-describing-coordinate-reference-systems
  proj = self._crs.to_proj4(version=version)
14:11:38 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'time': 'time', 'x': 'x', 'y': 'y'}
14:11:38 DEBUG   opendrift.readers.reader_netCDF_CF_generic:340: Skipped variables without standard_name: ['fog_area_fraction']
14:11:38 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 10 for reader https://thredds.met.no/thredds/dodsC/aromearcticlatest/latest/arome_arctic_lagged_12_h_latest_2_5km_latest.nc
, assuming a maximum average speed of 5 m/s and time span of 1:00:00
14:11:38 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:38 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_wind', 'y_wind'] -> wind_speed
===========================
Reader: https://thredds.met.no/thredds/dodsC/aromearcticlatest/latest/arome_arctic_lagged_12_h_latest_2_5km_latest.nc

Projection:
  +proj=lcc +lat_0=77.5 +lon_0=-25 +lat_1=77.5 +lat_2=77.5 +x_0=0 +y_0=0 +R=6371000 +units=m +no_defs +type=crs
Coverage: [degrees]
  xmin: 278620.937500   xmax: 2123621.000000   step: 2500   numx: 739
  ymin: -897985.687500   ymax: 1472014.250000   step: 2500   numy: 949
  Corners (lon, lat):
    ( 79.55,  87.57)  ( 68.83,  71.11)
    (-17.96,  69.30)  ( 18.62,  62.13)
Vertical levels [m]:
  Not specified
Available time range:
  start: 2024-06-04 09:00:00   end: 2024-06-06 18:00:00   step: 1:00:00
    58 times (0 missing)
Variables (4 ensemble members):
  longitude
  latitude
  x_wind
  y_wind
  air_temperature
  relative_humidity
  cloud_area_fraction
  air_pressure_at_sea_level
  precipitation_amount
  snowfall_amount
  wind_speed_of_gust
  wind_speed - derived from ['x_wind', 'y_wind']
===========================

Time to open reader:  0:00:00.966865

#%
https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd


14:11:38 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd

14:11:39 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:39 DEBUG   opendrift.readers.reader_netCDF_CF_generic:258: Lon and lat are 1D arrays - using as projection coordinates
14:11:39 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'time': 'time', 'x': 'longitude', 'y': 'latitude'}
14:11:39 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 19910 for reader https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd
, assuming a maximum average speed of 5 m/s and time span of 2557 days, 15:00:00
14:11:39 INFO    opendrift.readers.basereader:166: Variable x_wind will be rotated from eastward_wind
14:11:39 INFO    opendrift.readers.basereader:166: Variable y_wind will be rotated from northward_wind
14:11:39 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:39 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_wind', 'y_wind'] -> wind_speed
===========================
Reader: https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd

Projection:
  +proj=latlong
Coverage: [degrees]
  xmin: 0.000000   xmax: 359.500000   step: 0.5   numx: 720
  ymin: -90.000000   ymax: 90.000000   step: 0.5   numy: 361
  Corners (lon, lat):
    (  0.00,  90.00)  (359.50,  90.00)
    (  0.00, -90.00)  (359.50, -90.00)
Vertical levels [m]:
  Not specified
Available time range:
  start: 1775-02-01 19:43:41   end: 2024-06-11 12:00:00   step: 2557 days, 15:00:00
    36 times (-4430 missing)
Variables:
  air_pressure_at_sea_level
  surface_downwelling_longwave_flux
  surface_downwelling_shortwave_flux
  precipitation_flux
  relative_humidity
  surface_temperature
  air_temperature
  eastward_wind
  surface_upwelling_longwave_flux
  surface_upwelling_shortwave_flux
  northward_wind
  x_wind
  y_wind
  wind_speed - derived from ['x_wind', 'y_wind']
===========================

Time to open reader:  0:00:01.096104

#%
https://tds.hycom.org/thredds/dodsC/GLBy0.08/latest


14:11:39 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://tds.hycom.org/thredds/dodsC/GLBy0.08/latest

14:11:40 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:40 INFO    opendrift.readers.reader_netCDF_CF_generic:281: Grid coordinates are detected, but proj4 string not given: assuming latlong
14:11:40 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'y': 'lat', 'x': 'lon', 'z': 'depth', 'time': 'time'}
14:11:40 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 9 for reader https://tds.hycom.org/thredds/dodsC/GLBy0.08/latest
, assuming a maximum average speed of 5 m/s and time span of 3:00:00
14:11:40 INFO    opendrift.readers.basereader:166: Variable x_sea_water_velocity will be rotated from eastward_sea_water_velocity
14:11:40 INFO    opendrift.readers.basereader:166: Variable y_sea_water_velocity will be rotated from northward_sea_water_velocity
14:11:40 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:40 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_sea_water_velocity', 'y_sea_water_velocity'] -> sea_water_speed
===========================
Reader: https://tds.hycom.org/thredds/dodsC/GLBy0.08/latest

Projection:
  +proj=latlong
Coverage: [degrees]
  xmin: 0.000000   xmax: 359.920044   step: 0.0799561   numx: 4502
  ymin: -80.000000   ymax: 90.000000   step: 0.0400009   numy: 4250
  Corners (lon, lat):
    (  0.00,  90.00)  (359.92,  90.00)
    (  0.00, -80.00)  (359.92, -80.00)
Vertical levels [m]:
  [   -0.    -2.    -4.    -6.    -8.   -10.   -12.   -15.   -20.   -25.
   -30.   -35.   -40.   -45.   -50.   -60.   -70.   -80.   -90.  -100.
  -125.  -150.  -200.  -250.  -300.  -350.  -400.  -500.  -600.  -700.
  -800.  -900. -1000. -1250. -1500. -2000. -2500. -3000. -4000. -5000.]
Available time range:
  start: 2024-05-29 12:00:00   end: 2024-06-11 00:00:00   step: 3:00:00
    101 times (0 missing)
Variables:
  sea_surface_elevation
  eastward_sea_water_velocity
  eastward_sea_water_velocity_at_bottom
  northward_sea_water_velocity
  northward_sea_water_velocity_at_bottom
  sea_water_temperature
  sea_water_temperature_at_bottom
  sea_water_salinity
  sea_water_salinity_at_bottom
  x_sea_water_velocity
  y_sea_water_velocity
  sea_water_speed - derived from ['x_sea_water_velocity', 'y_sea_water_velocity']
===========================

Time to open reader:  0:00:00.478567

#%
https://tds.hycom.org/thredds/dodsC/GLBy0.08/expt_93.0/uv3z


14:11:40 INFO    opendrift.readers.reader_netCDF_CF_generic:102: Opening dataset: https://tds.hycom.org/thredds/dodsC/GLBy0.08/expt_93.0/uv3z

14:11:40 DEBUG   opendrift.readers.reader_netCDF_CF_generic:119: Finding coordinate variables.
14:11:40 INFO    opendrift.readers.reader_netCDF_CF_generic:281: Grid coordinates are detected, but proj4 string not given: assuming latlong
14:11:40 INFO    opendrift.readers.reader_netCDF_CF_generic:314: Detected dimensions: {'z': 'depth', 'y': 'lat', 'x': 'lon', 'time': 'time'}
14:11:40 DEBUG   opendrift.readers.basereader.variables:608: Setting buffer size 9 for reader https://tds.hycom.org/thredds/dodsC/GLBy0.08/expt_93.0/uv3z
, assuming a maximum average speed of 5 m/s and time span of 3:00:00
14:11:40 INFO    opendrift.readers.basereader:166: Variable x_sea_water_velocity will be rotated from eastward_sea_water_velocity
14:11:40 INFO    opendrift.readers.basereader:166: Variable y_sea_water_velocity will be rotated from northward_sea_water_velocity
14:11:40 DEBUG   opendrift.readers.basereader:176: Variable mapping: ['sea_floor_depth_below_sea_level'] -> ['land_binary_mask'] is not activated
14:11:40 DEBUG   opendrift.readers.basereader.variables:563: Adding variable mapping: ['x_sea_water_velocity', 'y_sea_water_velocity'] -> sea_water_speed
===========================
Reader: https://tds.hycom.org/thredds/dodsC/GLBy0.08/expt_93.0/uv3z

Projection:
  +proj=latlong
Coverage: [degrees]
  xmin: 0.000000   xmax: 359.920044   step: 0.0799561   numx: 4502
  ymin: -80.000000   ymax: 90.000000   step: 0.0400009   numy: 4250
  Corners (lon, lat):
    (  0.00,  90.00)  (359.92,  90.00)
    (  0.00, -80.00)  (359.92, -80.00)
Vertical levels [m]:
  [   -0.    -2.    -4.    -6.    -8.   -10.   -12.   -15.   -20.   -25.
   -30.   -35.   -40.   -45.   -50.   -60.   -70.   -80.   -90.  -100.
  -125.  -150.  -200.  -250.  -300.  -350.  -400.  -500.  -600.  -700.
  -800.  -900. -1000. -1250. -1500. -2000. -2500. -3000. -4000. -5000.]
Available time range:
  start: 2018-12-04 12:00:00   end: 2024-06-04 09:00:00   step: 3:00:00
    16072 times (7 missing)
Variables:
  eastward_sea_water_velocity
  eastward_sea_water_velocity_at_bottom
  northward_sea_water_velocity
  northward_sea_water_velocity_at_bottom
  x_sea_water_velocity
  y_sea_water_velocity
  sea_water_speed - derived from ['x_sea_water_velocity', 'y_sea_water_velocity']
===========================

Time to open reader:  0:00:00.466030

Summary of times to open each dataset:

for t, time in times.items():
    print(time, t)
0:00:01.704806 https://thredds.met.no/thredds/dodsC/sea/norkyst800m/1h/aggregate_be

0:00:00.947000 https://thredds.met.no/thredds/dodsC/mepslatest/meps_lagged_6_h_latest_2_5km_latest.nc

0:00:24.463510 https://thredds.met.no/thredds/dodsC/fou-hi/barents_eps_zdepth_be

0:00:05.518893 https://thredds.met.no/thredds/dodsC/cmems/mywavewam3km/dataset-wam-arctic-1hr3km-be.ncml

0:00:11.719048 https://thredds.met.no/thredds/dodsC/ww3_4km_agg

0:00:07.049155 https://thredds.met.no/thredds/dodsC/cmems/topaz6/dataset-topaz6-arc-15min-3km-be.ncml

0:00:00.966865 https://thredds.met.no/thredds/dodsC/aromearcticlatest/latest/arome_arctic_lagged_12_h_latest_2_5km_latest.nc

0:00:01.096104 https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd

0:00:00.478567 https://tds.hycom.org/thredds/dodsC/GLBy0.08/latest

0:00:00.466030 https://tds.hycom.org/thredds/dodsC/GLBy0.08/expt_93.0/uv3z

Total running time of the script: (5 minutes 38.995 seconds)

Gallery generated by Sphinx-Gallery