[Bug]: `main` branch not properly renaming original variables to target derived variable key
Opened this issue · 1 comments
What happened?
rename()
is not properly renaming original variable names to target derived variable keys. This bug has not been causing any issues in e3sm_diags
and we don't write out files to netCDF (parameter.save_to_netcdf=False
by default). This is a low priority issue and can be addressed when desired.
Technical Info
-
rename()
-- notice how it just returns whatever is passed to it (new_name
)
e3sm_diags/e3sm_diags/derivations/acme.py
Lines 19 to 21 in 43f5f74
-
Example
rename()
reference in derived vars dictionary -- the intended behavior is to rename "rsdt" to "SOLIN"
e3sm_diags/e3sm_diags/derivations/acme.py
Lines 674 to 676 in 43f5f74
-
Call to
rename()
-- notice that a cdms2.TransientVariable is being passed torename()
here.rename()
will just return that object without doing anything.
e3sm_diags/e3sm_diags/driver/utils/dataset.py
Lines 381 to 386 in 43f5f74
What did you expect to happen? Are there are possible answers you came across?
rename()
should update the .id
of the cdms2.TransientVariable
to the target key
Example:
def rename(var: cdms2.TransientVariable, target_key: str) -> cdms2.TransientVariable:
var.id = target_key
return var
Minimal Complete Verifiable Example (MVCE)
No response
Relevant log output
No response
Anything else we need to know?
No response
Environment
main
branch and all previous versions of e3sm_diags
that used rename()
@chengzhuzhang FYI