-
Notifications
You must be signed in to change notification settings - Fork 14
Description
Raised by Dmitriy Yadykin in https://jira.iter.org/browse/IMAS-5795?focusedId=2644629&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-2644629
Issue is _tor --> _phi renaming was listed as NBC but not a destructive change because it affects active IDSs (_tor fields were kept in 3.42.0 and subsequent DD versions). So if an IDS is created directly in v3.42.0, with a _tor field, this is not converted into _phi, and we loose this info when _tor disappear in v4.
If the IDS was created in v3.41 or older, then the NBC transformation applies (whether we convert to 3.42 or 4.0 does not matter, what matters is to cross the 3.42 version).
Not sure what is the best way to fix this: dd4 specific rule or a change of the normal NBC transformation in such special case?
This stub shows the problem
import imas
from imas.ids_convert import convert_ids
fact341 = imas.IDSFactory("3.41.0")
fact342 = imas.IDSFactory("3.42.0")
eq341 = fact341.equilibrium()
eq341.ids_properties.homogeneous_time=1
eq341.time = [0.0]
eq341.time_slice.resize(1)
eq341.time_slice[0].profiles_1d.j_tor = [0.3,0.2,0.1]
eq341.time_slice[0].profiles_1d.psi = [1.,0.5,0.]
eq342 = fact342.equilibrium()
eq342.ids_properties.homogeneous_time=1
eq342.time = [0.0]
eq342.time_slice.resize(1)
eq342.time_slice[0].profiles_1d.j_tor = [0.3,0.2,0.1]
eq342.time_slice[0].profiles_1d.psi = [1.,0.5,0.]
eq4from341 = convert_ids(eq341,"4.0.0")
print(f"3.41.0 --> 4.0.0: j_phi={eq4from341.time_slice[0].profiles_1d.j_phi.value}")
eq4from342 = convert_ids(eq342,"4.0.0")
print(f"3.42.0 --> 4.0.0: j_phi={eq4from342.time_slice[0].profiles_1d.j_phi.value}")
eq342from341 = convert_ids(eq341,"3.42.0")
print(f"3.41.0 --> 3.42.0: j_phi={eq342from341.time_slice[0].profiles_1d.j_phi.value}")