-
Notifications
You must be signed in to change notification settings - Fork 5
Move aperture at the start of rotation #1409
Conversation
…position as first thing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@@ -264,6 +283,13 @@ def rotation_scan( | |||
def rotation_scan_plan_with_stage_and_cleanup( | |||
params: RotationScan, | |||
): | |||
assert composite.aperture_scatterguard.aperture_positions is not None | |||
yield from move_aperture( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Must: I think this should probably go in or next to setup_sample_environment
. We should be staging the detector as the first thing we do then asynchronously moving this into the correct place, we then only need to wait for it to have finished moving just before we do rotation_scan_plan
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah good point!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apologies, another couple of comments
src/hyperion/parameters/rotation.py
Outdated
@@ -44,6 +45,7 @@ class RotationScan( | |||
default=IspybExperimentType.ROTATION | |||
) | |||
transmission_frac: float | |||
selected_aperture: AperturePositionGDANames |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should: I think every diffraction experiment should have aperture so this should go in DiffractionExperiment
. However, I also think it should be optional and default to whatever the beamline is already set up with like for demand_energy
. Do you agree @dperl-dls?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
David and I talked about this a bit yesterday - GridCommon
uses DiffractionExperiment
. Since the grid scans determine the aperture, why should the aperture be an input parameter?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, your way works fine too, happy with that
After discussion with @DominicOram , this PR should now do the following:
|
Also, selected_aperture has a default of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great, thank you! I think I'm happy to merge w/o the GDA changes being done yet
) * Add new parameter selected_aperture, rotation scan moves to aperture position as first thing * Add function to convert from gda aperture name to aperture position * move aperture during setup_sample_environment * XRC uses parameter for aperture change, made optional for rotations * Aperture selection can be none, added tests
Fixes #1336
Link to dodal PR (if required): DiamondLightSource/dodal#573
(remember to update
setup.cfg
with the dodal commit tag if you need it for tests to pass!)Not to be merged until the WIP GDA changes are done
To test: