gafusion / omas

Ordered Multidimensional Array Structure
http://gafusion.github.io/omas
MIT License
30 stars 15 forks source link

generating odx from kineticEFITtime generated ods #138

Closed jmcclena closed 3 years ago

jmcclena commented 3 years ago

I'm trying to generate an odx from the kineticEFITtime generated ods (/cscratch/mcclenaghanj/tmp/ods.h5) but I am running into the following error:


OMFIT['odx'] = ods_2_odx(OMFIT['kineticEFITtime']['OUTPUTS']['ods'])

Traceback (most recent call last):
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/OMFIT-source/omfit/classes/OMFITx.py", line 4189, in manage_user_errors
    tmp=command(**kw)
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/OMFIT-source/omfit/utils_tk.py", line 1063, in GlobLoc_tk
    return py.run(_relLoc=self.namespace, _OMFITscriptsDict=False, _OMFITconsoleDict=True, noGUI=None)
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/OMFIT-source/omfit/classes/omfit_python.py", line 1082, in run
    result = self.__run__(**kw)
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/OMFIT-source/omfit/classes/omfit_python.py", line 931, in __run__
    self, userDict=kw, inputDict=_relLoc, persistentDict=OMFITconsoleDict, runDict={}, prerun=prerun, postrun=postrun
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/OMFIT-source/omfit/classes/omfit_python.py", line 129, in f_locked
    return f(*args, **kw)
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/OMFIT-source/omfit/classes/omfit_python.py", line 362, in execGlobLoc
    exec(compile(execString, filename, "exec"), GlobLoc)
  File "/local-scratch/mcclenaghanj/OMFIT/OMFIT_2020-12-22_11_24_10_134745/project/OMFIT command box #21", line 1, in <module>
    OMFIT['odx'] = ods_2_odx(OMFIT['kineticEFITtime']['OUTPUTS']['ods'])
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/omas/omas_ds.py", line 131, in ods_2_odx
    return ODX(ods.dataset())
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/omas/omas_core.py", line 1729, in dataset
    DS.update(self[ds].dataset(homogeneous=homogeneous))
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/omas/omas_core.py", line 1800, in dataset
    DS[fukey] = xarray.DataArray(data, dims=coordinates[fukey])
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/xarray/core/dataset.py", line 1292, in __setitem__
    self.update({key: value})
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/xarray/core/dataset.py", line 3638, in update
    merge_result = dataset_update_method(self, other)
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/xarray/core/merge.py", line 937, in dataset_update_method
    combine_attrs="override",
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/xarray/core/merge.py", line 592, in merge_core
    coerced, join=join, copy=False, indexes=indexes, fill_value=fill_value
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/xarray/core/alignment.py", line 412, in deep_align
    fill_value=fill_value,
  File "/fusion/projects/codes/atom/omfit_v3/atom_SATURN_GCC/miniconda3/lib/python3.7/site-packages/xarray/core/alignment.py", line 320, in align
    % (dim, unlabeled_sizes, labeled_size)
ValueError: arguments without labels along dimension '__core_profiles_measured_:_1_index1__' cannot be aligned because they have different dimension size(s) {97} than the size of the aligned dimension labels: 155```
orso82 commented 3 years ago

Note to self, this can also be reproduced by setting ods = ODS().sample(homogeneous_time=True)

https://github.com/gafusion/omas/commit/e2450134efa7956cce43694fcfd95c83bc842ddb#diff-7dd5aa81c2a666def69babf2dd62e605394dbf2bfbcff258ad1670adc9d3713dR81-R85

orso82 commented 3 years ago

This issue should be now resolved with the latest versions of OMAS. @jmcclena let me know if you still have problems.