Skip to content
Snippets Groups Projects
Commit 6583c3f9 authored by Nils Brüggemann's avatar Nils Brüggemann
Browse files

pyicon_calc_xr.py: Fixed a bug where input grid dataset ds_tg was modified by convert_tgrid_data.

parent 45f9530a
No related branches found
No related tags found
No related merge requests found
......@@ -5,13 +5,13 @@ from itertools import product
def convert_tgrid_data(
ds_tg, check_previous_conversion=True, set_dim_order=None, old_dim_behaviour=None
ds_tg_in, check_previous_conversion=True, set_dim_order=None, old_dim_behaviour=None
):
"""Convert xarray grid file to grid file compatible with pyicon function.
Parameters
----------
ds_tg : xr.Dataset
ds_tg_in : xr.Dataset
raw, unprocessed tgrid
check_previous_conversion : bool
......@@ -44,6 +44,10 @@ def convert_tgrid_data(
Then convert by:
ds_IcD = pyic.convert_tgrid_data(ds_tg)
"""
# make deep copy of ds_tg_in to avoid glaobal modifications if during this function call
ds_tg = ds_tg_in.copy(deep=True)
if old_dim_behaviour is None:
warnings.warn(
"The default behaviour for convert_tgrid has recently \
......@@ -195,6 +199,7 @@ def convert_tgrid_data(
ds_IcD[variable] = ds_IcD[variable].rename(dim_name_remappings[variable])
ds_IcD.attrs["converted_tgrid"] = True
ds_tg.attrs["converted_tgrid"] = True
if set_dim_order is None:
standard_order = ["cell", "vertex", "edge", "nc", "nv", "ne", "cart", ...]
......@@ -400,8 +405,6 @@ def xr_calc_2dlocal_from_3d(ds_IcD, p_vn_c):
uo = u2 * cosLon - u1 * sinLon
vo = -(u1 * cosLon + u2 * sinLon) * sinLat + u3 * cosLat
uo = u2 * cosLon - u1 * sinLon
vo = -(u1 * cosLon + u2 * sinLon) * sinLat + u3 * cosLat
return uo, vo
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment