Making GRIB dataset CF-compatible

from datetime import datetime, timedelta
from opendrift.models.windblow import WindBlow

Comparing / using two different wind datasets

The first dataset (UCAR) is a GRIB dataset served by Thredds as a netCDF dataset, but with GRIB attributes
CF standard_name are added for identified surface variables (wind) with this method:

https://opendrift.github.io/_modules/opendrift/readers.html#add_standard_name_for_surface_grib_variables

This should be used with care, making sure that only surface (10m height) variables are used

The second dataset (PACIOOS) is a netCDF4 dataset served by Thredds with CF attributes

wind_datasets = [
    'https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best',
    'https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd'
    ]

simulations = []

time = datetime.now() - timedelta(days=5)
for wind in wind_datasets:
    o = WindBlow(loglevel=20)
    o.add_readers_from_list(wind)
    o.seed_elements(lon=3, lat=60, time=time, number=10, radius=10000)
    o.run(duration=timedelta(hours=48))
    simulations.append(o)
08:28:43 INFO    opendrift:568: OpenDriftSimulation initialised (version 1.14.9 / v1.14.9-9-gcde0dcf)
08:28:43 INFO    opendrift.models.basemodel.environment:227: Fallback values will be used for the following variables which have no readers:
08:28:43 INFO    opendrift.models.basemodel.environment:230:    x_wind: 0.000000
08:28:43 INFO    opendrift.models.basemodel.environment:230:    y_wind: 0.000000
08:28:43 INFO    opendrift:1839: Storing previous values of element property lon because of condition (('general:coastline_action', 'in', ['stranding', 'previous']), 'or', ('general:seafloor_action', 'in', ['previous']))
08:28:43 INFO    opendrift:1839: Storing previous values of element property lat because of condition (('general:coastline_action', 'in', ['stranding', 'previous']), 'or', ('general:seafloor_action', 'in', ['previous']))
08:28:43 INFO    opendrift:2136: 2026-03-20 08:28:43.615373 - step 1 of 48 - 10 active elements (0 deactivated)
08:28:43 INFO    opendrift.readers:64: Opening file with xr.open_dataset
08:28:44 INFO    opendrift.readers.reader_netCDF_CF_generic:340: Detected dimensions: {'time': ['time', 'time1', 'time2', 'time3'], 'x': 'lon', 'y': 'lat'}
08:28:45 INFO    opendrift:2136: 2026-03-20 09:28:43.615373 - step 2 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 10:28:43.615373 - step 3 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 11:28:43.615373 - step 4 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 12:28:43.615373 - step 5 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 13:28:43.615373 - step 6 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 14:28:43.615373 - step 7 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 15:28:43.615373 - step 8 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 16:28:43.615373 - step 9 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 17:28:43.615373 - step 10 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 18:28:43.615373 - step 11 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 19:28:43.615373 - step 12 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 20:28:43.615373 - step 13 of 48 - 10 active elements (0 deactivated)
08:28:45 INFO    opendrift:2136: 2026-03-20 21:28:43.615373 - step 14 of 48 - 10 active elements (0 deactivated)
08:28:46 INFO    opendrift:2136: 2026-03-20 22:28:43.615373 - step 15 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-20 23:28:43.615373 - step 16 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 00:28:43.615373 - step 17 of 48 - 10 active elements (0 deactivated)
08:28:46 INFO    opendrift:2136: 2026-03-21 01:28:43.615373 - step 18 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 02:28:43.615373 - step 19 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 03:28:43.615373 - step 20 of 48 - 10 active elements (0 deactivated)
08:28:46 INFO    opendrift:2136: 2026-03-21 04:28:43.615373 - step 21 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 05:28:43.615373 - step 22 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 06:28:43.615373 - step 23 of 48 - 10 active elements (0 deactivated)
08:28:46 INFO    opendrift:2136: 2026-03-21 07:28:43.615373 - step 24 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 08:28:43.615373 - step 25 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 09:28:43.615373 - step 26 of 48 - 10 active elements (0 deactivated)
08:28:46 INFO    opendrift:2136: 2026-03-21 10:28:43.615373 - step 27 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 11:28:43.615373 - step 28 of 48 - 10 active elements (0 deactivated)
08:28:46 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:46 INFO    opendrift:2136: 2026-03-21 12:28:43.615373 - step 29 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-21 13:28:43.615373 - step 30 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-21 14:28:43.615373 - step 31 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-21 15:28:43.615373 - step 32 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-21 16:28:43.615373 - step 33 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-21 17:28:43.615373 - step 34 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-21 18:28:43.615373 - step 35 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-21 19:28:43.615373 - step 36 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-21 20:28:43.615373 - step 37 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-21 21:28:43.615373 - step 38 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-21 22:28:43.615373 - step 39 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-21 23:28:43.615373 - step 40 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-22 00:28:43.615373 - step 41 of 48 - 10 active elements (0 deactivated)
08:28:47 INFO    opendrift:2136: 2026-03-22 01:28:43.615373 - step 42 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-22 02:28:43.615373 - step 43 of 48 - 10 active elements (0 deactivated)
08:28:47 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:47 INFO    opendrift:2136: 2026-03-22 03:28:43.615373 - step 44 of 48 - 10 active elements (0 deactivated)
08:28:48 INFO    opendrift:2136: 2026-03-22 04:28:43.615373 - step 45 of 48 - 10 active elements (0 deactivated)
08:28:48 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:48 INFO    opendrift:2136: 2026-03-22 05:28:43.615373 - step 46 of 48 - 10 active elements (0 deactivated)
08:28:48 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:48 INFO    opendrift:2136: 2026-03-22 06:28:43.615373 - step 47 of 48 - 10 active elements (0 deactivated)
08:28:48 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:48 INFO    opendrift:2136: 2026-03-22 07:28:43.615373 - step 48 of 48 - 10 active elements (0 deactivated)
08:28:48 WARNING opendrift.readers.basereader.structured:324: Data block from https://thredds.ucar.edu/thredds/dodsC/grib/NCEP/GFS/Global_0p25deg/Best not large enough to cover element positions within timestep. Buffer size (12) must be increased. See `Variables.set_buffer_size`.
08:28:48 INFO    opendrift:568: OpenDriftSimulation initialised (version 1.14.9 / v1.14.9-9-gcde0dcf)
08:28:48 INFO    opendrift.models.basemodel.environment:227: Fallback values will be used for the following variables which have no readers:
08:28:48 INFO    opendrift.models.basemodel.environment:230:    x_wind: 0.000000
08:28:48 INFO    opendrift.models.basemodel.environment:230:    y_wind: 0.000000
08:28:48 INFO    opendrift:1839: Storing previous values of element property lon because of condition (('general:coastline_action', 'in', ['stranding', 'previous']), 'or', ('general:seafloor_action', 'in', ['previous']))
08:28:48 INFO    opendrift:1839: Storing previous values of element property lat because of condition (('general:coastline_action', 'in', ['stranding', 'previous']), 'or', ('general:seafloor_action', 'in', ['previous']))
08:28:48 INFO    opendrift:2136: 2026-03-20 08:28:43.615373 - step 1 of 48 - 10 active elements (0 deactivated)
08:28:48 INFO    opendrift.readers:64: Opening file with xr.open_dataset
08:28:49 INFO    opendrift.readers.reader_netCDF_CF_generic:340: Detected dimensions: {'time': 'time', 'x': 'longitude', 'y': 'latitude'}
08:28:49 INFO    opendrift.readers.basereader:178: Variable x_wind will be rotated from eastward_wind
08:28:49 INFO    opendrift.readers.basereader:178: Variable y_wind will be rotated from northward_wind
08:28:50 INFO    opendrift:2136: 2026-03-20 09:28:43.615373 - step 2 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 10:28:43.615373 - step 3 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 11:28:43.615373 - step 4 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 12:28:43.615373 - step 5 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 13:28:43.615373 - step 6 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 14:28:43.615373 - step 7 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 15:28:43.615373 - step 8 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 16:28:43.615373 - step 9 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 17:28:43.615373 - step 10 of 48 - 10 active elements (0 deactivated)
08:28:51 INFO    opendrift:2136: 2026-03-20 18:28:43.615373 - step 11 of 48 - 10 active elements (0 deactivated)
08:28:52 INFO    opendrift:2136: 2026-03-20 19:28:43.615373 - step 12 of 48 - 10 active elements (0 deactivated)
08:28:52 INFO    opendrift:2136: 2026-03-20 20:28:43.615373 - step 13 of 48 - 10 active elements (0 deactivated)
08:28:52 INFO    opendrift:2136: 2026-03-20 21:28:43.615373 - step 14 of 48 - 10 active elements (0 deactivated)
08:28:52 INFO    opendrift:2136: 2026-03-20 22:28:43.615373 - step 15 of 48 - 10 active elements (0 deactivated)
08:28:52 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:52 INFO    opendrift:2136: 2026-03-20 23:28:43.615373 - step 16 of 48 - 10 active elements (0 deactivated)
08:28:52 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:52 INFO    opendrift:2136: 2026-03-21 00:28:43.615373 - step 17 of 48 - 10 active elements (0 deactivated)
08:28:52 INFO    opendrift:2136: 2026-03-21 01:28:43.615373 - step 18 of 48 - 10 active elements (0 deactivated)
08:28:52 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:52 INFO    opendrift:2136: 2026-03-21 02:28:43.615373 - step 19 of 48 - 10 active elements (0 deactivated)
08:28:52 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:52 INFO    opendrift:2136: 2026-03-21 03:28:43.615373 - step 20 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 04:28:43.615373 - step 21 of 48 - 10 active elements (0 deactivated)
08:28:53 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:53 INFO    opendrift:2136: 2026-03-21 05:28:43.615373 - step 22 of 48 - 10 active elements (0 deactivated)
08:28:53 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:53 INFO    opendrift:2136: 2026-03-21 06:28:43.615373 - step 23 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 07:28:43.615373 - step 24 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 08:28:43.615373 - step 25 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 09:28:43.615373 - step 26 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 10:28:43.615373 - step 27 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 11:28:43.615373 - step 28 of 48 - 10 active elements (0 deactivated)
08:28:53 INFO    opendrift:2136: 2026-03-21 12:28:43.615373 - step 29 of 48 - 10 active elements (0 deactivated)
08:28:54 INFO    opendrift:2136: 2026-03-21 13:28:43.615373 - step 30 of 48 - 10 active elements (0 deactivated)
08:28:54 INFO    opendrift:2136: 2026-03-21 14:28:43.615373 - step 31 of 48 - 10 active elements (0 deactivated)
08:28:54 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:54 INFO    opendrift:2136: 2026-03-21 15:28:43.615373 - step 32 of 48 - 10 active elements (0 deactivated)
08:28:54 INFO    opendrift:2136: 2026-03-21 16:28:43.615373 - step 33 of 48 - 10 active elements (0 deactivated)
08:28:54 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:54 INFO    opendrift:2136: 2026-03-21 17:28:43.615373 - step 34 of 48 - 10 active elements (0 deactivated)
08:28:54 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:54 INFO    opendrift:2136: 2026-03-21 18:28:43.615373 - step 35 of 48 - 10 active elements (0 deactivated)
08:28:54 INFO    opendrift:2136: 2026-03-21 19:28:43.615373 - step 36 of 48 - 10 active elements (0 deactivated)
08:28:54 INFO    opendrift:2136: 2026-03-21 20:28:43.615373 - step 37 of 48 - 10 active elements (0 deactivated)
08:28:54 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:54 INFO    opendrift:2136: 2026-03-21 21:28:43.615373 - step 38 of 48 - 10 active elements (0 deactivated)
08:28:55 INFO    opendrift:2136: 2026-03-21 22:28:43.615373 - step 39 of 48 - 10 active elements (0 deactivated)
08:28:55 INFO    opendrift:2136: 2026-03-21 23:28:43.615373 - step 40 of 48 - 10 active elements (0 deactivated)
08:28:55 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:55 INFO    opendrift:2136: 2026-03-22 00:28:43.615373 - step 41 of 48 - 10 active elements (0 deactivated)
08:28:55 INFO    opendrift:2136: 2026-03-22 01:28:43.615373 - step 42 of 48 - 10 active elements (0 deactivated)
08:28:55 INFO    opendrift:2136: 2026-03-22 02:28:43.615373 - step 43 of 48 - 10 active elements (0 deactivated)
08:28:55 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:55 INFO    opendrift:2136: 2026-03-22 03:28:43.615373 - step 44 of 48 - 10 active elements (0 deactivated)
08:28:55 INFO    opendrift:2136: 2026-03-22 04:28:43.615373 - step 45 of 48 - 10 active elements (0 deactivated)
08:28:55 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:55 INFO    opendrift:2136: 2026-03-22 05:28:43.615373 - step 46 of 48 - 10 active elements (0 deactivated)
08:28:55 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:55 INFO    opendrift:2136: 2026-03-22 06:28:43.615373 - step 47 of 48 - 10 active elements (0 deactivated)
08:28:56 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.
08:28:56 INFO    opendrift:2136: 2026-03-22 07:28:43.615373 - step 48 of 48 - 10 active elements (0 deactivated)
08:28:56 WARNING opendrift.readers.basereader.structured:324: Data block from https://pae-paha.pacioos.hawaii.edu/thredds/dodsC/ncep_global/NCEP_Global_Atmospheric_Model_best.ncd not large enough to cover element positions within timestep. Buffer size (7) must be increased. See `Variables.set_buffer_size`.

Some differences are expected as datasets may origin from different runs

simulations[0].plot(compare=simulations[1:], lscale='i', legend=['GRIB converted', 'netCDF CF compatible'])
OpenDrift - WindBlow 2026-03-20 08:28 to 2026-03-22 08:28 UTC (49 steps)
(<GeoAxes: title={'center': 'OpenDrift - WindBlow\n2026-03-20 08:28 to 2026-03-22 08:28 UTC (49 steps)'}>, <Figure size 1100x1005.24 with 1 Axes>)

Total running time of the script: (0 minutes 23.903 seconds)

Gallery generated by Sphinx-Gallery