|
191 | 191 | ), |
192 | 192 | }, |
193 | 193 | ), |
| 194 | + "ds_NEMO_MOI_V": xr.Dataset( |
| 195 | + # NEMO model dataset (V component) as serviced by Mercator Ocean International |
| 196 | + { |
| 197 | + "vomecrty": ( |
| 198 | + ["deptht", "y", "x"], |
| 199 | + np.random.rand(Z, Y, X, dtype="float64"), |
| 200 | + { |
| 201 | + "units": "m s-1", |
| 202 | + "valid_min": -10.0, |
| 203 | + "valid_max": 10.0, |
| 204 | + "long_name": "Meridional velocity", |
| 205 | + "unit_long": "Meters per second", |
| 206 | + "standard_name": "sea_water_y_velocity", |
| 207 | + "short_name": "vomecrty", |
| 208 | + "online_operation": "N/A", |
| 209 | + "interval_operation": 86400, |
| 210 | + "interval_write": 86400, |
| 211 | + "associate": "time_counter deptht nav_lat nav_lon", |
| 212 | + }, |
| 213 | + ), |
| 214 | + }, |
| 215 | + coords={ |
| 216 | + "nav_lon": ( |
| 217 | + ["y, x"], |
| 218 | + np.tile(np.linspace(-179, 179, X, endpoint=False), (Y, 1)), # note that this is not curvilinear |
| 219 | + { |
| 220 | + "units": "degrees_east", |
| 221 | + "valid_min": -179.99984754002182, |
| 222 | + "valid_max": 179.999842386314, |
| 223 | + "long_name": "Longitude", |
| 224 | + "nav_model": "Default grid", |
| 225 | + "standard_name": "longitude", |
| 226 | + }, |
| 227 | + ), |
| 228 | + "nav_lat": ( |
| 229 | + ["y, x"], |
| 230 | + np.tile(np.linspace(-75, 85, Y).reshape(-1, 1), (1, X)), # note that this is not curvilinear |
| 231 | + { |
| 232 | + "units": "degrees_north", |
| 233 | + "valid_min": -77.0104751586914, |
| 234 | + "valid_max": 89.9591064453125, |
| 235 | + "long_name": "Latitude", |
| 236 | + "nav_model": "Default grid", |
| 237 | + "standard_name": "latitude", |
| 238 | + }, |
| 239 | + ), |
| 240 | + "x": ( |
| 241 | + ["x"], |
| 242 | + np.arange(X, dtype="int32"), |
| 243 | + { |
| 244 | + "standard_name": "projection_x_coordinate", |
| 245 | + "axis": "X", |
| 246 | + "units": "1", |
| 247 | + }, |
| 248 | + ), |
| 249 | + "y": ( |
| 250 | + ["y"], |
| 251 | + np.arange(Y, dtype="int32"), |
| 252 | + { |
| 253 | + "standard_name": "projection_y_coordinate", |
| 254 | + "axis": "Y", |
| 255 | + "units": "1", |
| 256 | + }, |
| 257 | + ), |
| 258 | + "time_counter": ( |
| 259 | + [], |
| 260 | + np.empty(0, dtype="datetime64[ns]"), |
| 261 | + { |
| 262 | + "standard_name": "time", |
| 263 | + "long_name": "Time axis", |
| 264 | + "axis": "T", |
| 265 | + "time_origin": "1950-JAN-01 00:00:00", |
| 266 | + }, |
| 267 | + ), |
| 268 | + "deptht": ( |
| 269 | + ["deptht"], |
| 270 | + np.linspace(1, 5500, Z, dtype="float64"), |
| 271 | + { |
| 272 | + "units": "m", |
| 273 | + "positive": "down", |
| 274 | + "valid_min": 0.4940253794193268, |
| 275 | + "valid_max": 5727.91650390625, |
| 276 | + "long_name": "Vertical T levels", |
| 277 | + "standard_name": "depth", |
| 278 | + "axis": "Z", |
| 279 | + }, |
| 280 | + ), |
| 281 | + }, |
| 282 | + ), |
194 | 283 | } |
0 commit comments