@@ -284,14 +284,17 @@ def from_fesom2(ds: ux.UxDataset):
284284
285285 fields : dict [str , Field | VectorField ] = {}
286286 if "U" in ds .data_vars and "V" in ds .data_vars :
287- fields ["U" ] = Field ("U" , ds ["U" ], grid , _select_uxinterpolator (ds ["U" ]))
288- fields ["V" ] = Field ("V" , ds ["V" ], grid , _select_uxinterpolator (ds ["U" ]))
287+ field_U = Field ("U" , ds ["U" ], grid , _select_uxinterpolator (ds ["U" ]))
288+ field_V = Field ("V" , ds ["V" ], grid , _select_uxinterpolator (ds ["U" ]))
289+ fields ["U" ] = field_U
290+ fields ["V" ] = field_V
289291
290292 if "W" in ds .data_vars :
291- fields ["W" ] = Field ("W" , ds ["W" ], grid , _select_uxinterpolator (ds ["U" ]))
292- fields ["UVW" ] = VectorField ("UVW" , fields ["U" ], fields ["V" ], fields ["W" ])
293+ field_W = Field ("W" , ds ["W" ], grid , _select_uxinterpolator (ds ["U" ]))
294+ fields ["W" ] = field_W
295+ fields ["UVW" ] = VectorField ("UVW" , field_U , field_V , field_W )
293296 else :
294- fields ["UV" ] = VectorField ("UV" , fields [ "U" ], fields [ "V" ] )
297+ fields ["UV" ] = VectorField ("UV" , field_U , field_V )
295298
296299 for varname in set (ds .data_vars ) - set (fields .keys ()):
297300 fields [varname ] = Field (varname , ds [varname ], grid , _select_uxinterpolator (ds [varname ]))
0 commit comments