METIS now stores the equilibrium as a rectangular (R, Z) grid and associated values as 1d flattened arrays on WEST.
In [6]: multi = tf.imas2tofu.MultiIDSLoader(ids=['bolometer'], shot=54178, get=False)
In [7]: multi.add_ids_synthdiag('bolometer', user='CB165101', shot=54178, run=13, tokamak='west')
Getting ids [occ] tokamak user version shot run refshot refrun
-------------- ----- ------- ----------- ------- ----- --- ------- ------
core_sources [0] west CB165101 3 54178 13 -1 -1
equilibrium [0] " " " " " " "
bolometer [0] west imas_public 3 54178 0 -1 -1
pulse_schedule [0] " " " " " " "
wall [0] " " " " " " "
In [8]: sig = multi.calc_signal('bolometer')
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py:486: RuntimeWarning: divide by zero encountered in true_divide
return np.sqrt(phi / np.nanmax(phi, axis=1)[:,None])
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py:486: RuntimeWarning: invalid value encountered in true_divide
return np.sqrt(phi / np.nanmax(phi, axis=1)[:,None])
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py:486: RuntimeWarning: invalid value encountered in sqrt
return np.sqrt(phi / np.nanmax(phi, axis=1)[:,None])
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py:1969: RuntimeWarning: invalid value encountered in greater
out[ii][np.abs(out[ii]) > 1.e30] = np.nan
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py:2095: UserWarning: The following data could not be retrieved:
- equilibrium:
2dmeshFaces : list index out of range
warnings.warn(msg)
---------------------------------------------------------------------------
Exception Traceback (most recent call last)
<ipython-input-8-4e709dfb4d67> in <module>()
----> 1 sig = multi.calc_signal('bolometer')
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py in calc_signal(self, ids, dsig, tlim, t, res, quant, ref1d, ref2d, q2dR, q2dPhi, q2dZ, Brightness, interp_t, indch, indch_auto, Name, occ_cam, occ_plasma, config, dextra, t0, datacls, geomcls, bck, fallback_X, nan, pos, plot, plot_compare, plot_plasma)
3508 plasma = self.to_Plasma2D(tlim=tlim, dsig=dsig, t0=t0,
3509 Name=None, occ=occ_plasma, config=cam.config, out=object,
-> 3510 plot=False, dextra=dextra, nan=True, pos=None)
3511
3512 # Intermediate computation if necessary
/Home/DV226270/ToFu_All/tofu_git/tofu/tofu/imas2tofu/_core.py in to_Plasma2D(self, tlim, dsig, t0, Name, occ, config, out, plot, plot_sig, plot_X, bck, dextra, nan, pos, shapeRZ)
2907 + "\t- '2dmeshR' and '2dmeshZ'\n"
2908 + "\t- '2dmeshNodes' and '2dmeshFaces'")
-> 2909 raise Exception(msg)
2910
2911 # Nodes / Faces case
Exception: 2d mesh shall be provided either via:
- '2dmeshR' and '2dmeshZ'
- '2dmeshNodes' and '2dmeshFaces'
METIS now stores the equilibrium as a rectangular (R, Z) grid and associated values as 1d flattened arrays on WEST.
example: