fix(cont-grid): add extra point in lines to include endpoint
This commit is contained in:
@@ -141,12 +141,13 @@ class ContGrid(ScanBase):
|
||||
or setting up the devices.
|
||||
"""
|
||||
self._check_motor_inputs()
|
||||
frames_per_trigger = int(
|
||||
np.ceil(np.abs(self.fast_end - self.fast_start) / self.fast_step_size)
|
||||
)
|
||||
self._cont_motor_params["num_lines"] = int(
|
||||
np.ceil(np.abs(self.stepper_stop - self.stepper_start) / self.stepper_step_size)
|
||||
)
|
||||
frames_per_trigger = (
|
||||
int(np.ceil(np.abs(self.fast_end - self.fast_start) / self.fast_step_size)) + 1
|
||||
) # include last point
|
||||
self._cont_motor_params["num_lines"] = (
|
||||
int(np.ceil(np.abs(self.stepper_stop - self.stepper_start) / self.stepper_step_size))
|
||||
+ 1
|
||||
) # include last point
|
||||
positions = position_generators.nd_grid_positions(
|
||||
[
|
||||
(self.fast_start, self.fast_end, frames_per_trigger),
|
||||
|
||||
@@ -115,11 +115,23 @@ def test_cont_grid_prepare_scan_keeps_generated_positions_stable(v4_scan_assembl
|
||||
|
||||
scan.prepare_scan()
|
||||
|
||||
assert np.array_equal(scan.positions, np.array([[1.0, -2.0], [1.0, 2.0]]))
|
||||
assert scan.scan_info.frames_per_trigger == 2
|
||||
assert scan._cont_motor_params["num_lines"] == 2
|
||||
assert scan.scan_info.additional_scan_parameters["num_lines"] == 2
|
||||
assert np.array_equal(scan.positions, np.array([[1.0, -2.0], [1.0, 0.0], [1.0, 2.0]]))
|
||||
assert scan.scan_info.frames_per_trigger == 3
|
||||
assert scan._cont_motor_params["num_lines"] == 3
|
||||
assert scan.scan_info.additional_scan_parameters["num_lines"] == 3
|
||||
assert np.array_equal(
|
||||
scan.scan_info.additional_scan_parameters["computed_positions"],
|
||||
np.array([[-1.0, -2.0], [1.0, -2.0], [-1.0, 2.0], [1.0, 2.0]]),
|
||||
np.array(
|
||||
[
|
||||
[-1.0, -2.0],
|
||||
[0.0, -2.0],
|
||||
[1.0, -2.0],
|
||||
[-1.0, 0.0],
|
||||
[0.0, 0.0],
|
||||
[1.0, 0.0],
|
||||
[-1.0, 2.0],
|
||||
[0.0, 2.0],
|
||||
[1.0, 2.0],
|
||||
]
|
||||
),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user