DMSC Integration Testing

Last updated: September 25, 2026 08:04:50

Test: nexusfiles-scipp|magic|magic_read_choppers_to_disk_choppers|overlap_chopper

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f6a113eb470>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022383.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f6a6bd045e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f6a14265800>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:141: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f8f3babba70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022303.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f8f93d745e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f8f3bf1d800>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:141: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fb2c6145910>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022253.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fb320ae45e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fb2c8c71800>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:141: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f492c1439e0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022203.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f4985acc5e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f492de7bf60>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:141: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f04a77e4590>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022193.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f04ffbb05e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f04a8411800>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:141: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7ff89bdbb440>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022113.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7ff8efff6e80>
check_disk_chopper = <function _check_disk_chopper at 0x7ff89c2358a0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f18d9b2f500>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022073.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f1931bc85e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f18d9ffd940>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f75a33035c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022063.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f75fa9505e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f75a312d940>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f018bcc3920>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022063.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f01e40d05e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f018c5b5a80>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f7cb82ca9c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022043.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f7d0f7f2e80>
check_disk_chopper = <function _check_disk_chopper at 0x7f7cbba558a0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f9a975de870>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022043.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f9a99ddd580>
check_disk_chopper = <function _check_disk_chopper at 0x7f9a9812d620>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fe855eae0c0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022043.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fe85819d580>
check_disk_chopper = <function _check_disk_chopper at 0x7fe8565794e0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fbdfce4f890>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022033.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fbdff311580>
check_disk_chopper = <function _check_disk_chopper at 0x7fbdfd4c5620>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f789c0795b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022023.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f78a1cf1580>
check_disk_chopper = <function _check_disk_chopper at 0x7f78a00b1620>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7ff7d2adfaa0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00022023.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7ff7d4f31580>
check_disk_chopper = <function _check_disk_chopper at 0x7ff7d30cd4e0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f9762455160>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021973.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f97648dd4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f9762ded580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f374018f620>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021909.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f3798980540>
check_disk_chopper = <function _check_disk_chopper at 0x7f374083d580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:141: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:30: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fa043fff080>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021909.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fa04682d4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fa044f89580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7ff3964c2750>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021899.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7ff3989314e0>
check_disk_chopper = <function _check_disk_chopper at 0x7ff396ae5580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f5faf5b2db0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021839.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f5fb17994e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f5faff21440>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f3c92fbf4a0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021699.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f3c951f54e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f3c937d1580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fee0a202cf0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021559.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fee0c6f54e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fee0b059440>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f0a120f4380>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021519.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f0a145d94e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f0a12a9d580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f8e553baf00>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021419.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f8e578c14e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f8e56029440>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f2dcd7b4260>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021269.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f2dcfb314e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f2dce069580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fd5e6235d90>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00021129.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fd5e87354e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fd5e6d3d440>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f32a78dc590>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020989.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f32a9d314e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f32a7ed9440>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f0c3f6b7b30>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020909.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f0c41fbd4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f0c40169580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f81ed6688f0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020899.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f81ef9dd4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f81edd79580>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f73b9e2dc10>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020899.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f73bc1ed4e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f73bad5d440>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f8e6320f260>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020889.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f8e930ea3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f8e6383b7e0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f91a670b6b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020699.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f91d090e3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f91a6e977e0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fee8b20b170>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020569.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7feeb5bea3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fee8ba237e0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7f7c7e468d70>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020413.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7f7ca8fce3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7f7c7ea9b6a0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:352: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:686: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fa13020f6b0>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020273.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fa1612e23e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fa1307f56c0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:343: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError

View job log here


scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError
Full output
chopper_name = 'overlap_chopper'
workflow = <sciline.pipeline.Pipeline object at 0x7fe590107980>
coda_nexus_file_path = PosixPath('/ess/data/coda/999999/raw/coda_magic_999999_00020200.hdf')
to_disk_choppers = <function _to_disk_choppers at 0x7fe5bb5ca3e0>
check_disk_chopper = <function _check_disk_chopper at 0x7fe58fc296c0>

    @pytest.mark.parametrize(
        "chopper_name",
        [
            "bandwidth_chopper",
            "overlap_chopper",
            "pulse_shape_chopper_1",
            "pulse_shape_chopper_2",
        ],
    )
    def test_magic_read_choppers_to_disk_choppers(
        chopper_name: str,
        workflow: sciline.Pipeline,
        coda_nexus_file_path: Path,
        to_disk_choppers: Callable,
        check_disk_chopper: Callable,
    ) -> None:
        workflow[Filename[SampleRun]] = coda_nexus_file_path
        choppers = workflow.compute(RawChoppers[SampleRun])
    
>       disk_choppers = to_disk_choppers({chopper_name: choppers[chopper_name]})
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

tests/nexusfiles-scipp/magic/magic_load_nexus_test.py:149: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/nexusfiles-scipp/conftest.py:89: in _to_disk_choppers
    key: DiskChopper.from_nexus(
.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:343: in from_nexus
    frequency = _get_0d_variable(chopper, 'rotation_speed_setpoint')
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

dg = {'beam_position': <scipp.Variable> ()    float64            [deg]  0, 'type': <DiskChopperType.single: 'Chopper type s...             [m]  (0, 0, -14.5), 'transform': <scipp.Variable> ()  translation3              [m]  (-0, -0, -14.5), ...}
name = 'rotation_speed_setpoint'

    def _get_0d_variable(
        dg: Mapping[str, sc.Variable | sc.DataArray], name: str
    ) -> sc.Variable:
        if (val := dg.get(name)) is None:
            raise ValueError(f"Chopper field '{name}' is missing")
    
        msg = (
            "Chopper field '{name}' must be a scalar variable, {got}. "
            "See the chopper user-guide for more information: "
            "https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html"
        )
    
        if isinstance(val, sc.DataArray):
            val = val.data
        if not isinstance(val, sc.Variable):
            raise TypeError(msg.format(name=name, got=f'got a {type(val)}'))
        val = val.squeeze()
        if val.ndim != 0:
>           raise sc.DimensionError(
                msg.format(name=name, got=f'got a {val.ndim}d variable')
            )
E           scipp._scipp.core.DimensionError: Chopper field 'rotation_speed_setpoint' must be a scalar variable, got a 1d variable. See the chopper user-guide for more information: https://scipp.github.io/scippneutron/user-guide/chopper/processing-nexus-choppers.html

.tox/nexusfiles-scipp-magic/lib/python3.12/site-packages/scippneutron/chopper/disk_chopper.py:676: DimensionError