Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update FormatSMVRigakuSaturn to recognise multi-axis crystal goniometers #617

Merged
merged 7 commits into from
Jun 12, 2023

Conversation

jamesrhester
Copy link

@jamesrhester jamesrhester commented Apr 5, 2023

As described in #616 , the FormatSMVRigakuSaturn class assumes a single-axis crystal goniometer. When there are multiple axes, and these are at non-zero positions during a scan, inter-scan relationships will be incorrect. This PR simply copies the code already present for multi-axis crystal goniometers in FormatSMVRigakuEiger and adds a check for a single axis, in which case the previous behaviour is preserved.

Closes #616 .

@codecov
Copy link

codecov bot commented Apr 5, 2023

Codecov Report

Merging #617 (ea3b252) into main (666288c) will decrease coverage by 0.06%.
The diff coverage is 0.00%.

❗ Current head ea3b252 differs from pull request most recent head 0510269. Consider uploading reports for the commit 0510269 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #617      +/-   ##
==========================================
- Coverage   39.43%   39.38%   -0.06%     
==========================================
  Files         178      178              
  Lines       15475    15495      +20     
  Branches     2603     2613      +10     
==========================================
  Hits         6103     6103              
- Misses       8812     8832      +20     
  Partials      560      560              

@graeme-winter graeme-winter self-assigned this Apr 5, 2023
Copy link
Collaborator

@graeme-winter graeme-winter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some suggestions inline but nothing serious

Only question I have is do you have any non-trivial test data e.g. where the scan axis is phi or anything? If you have an instrument could be worth collecting something with an unusual set of axis configurations just to make sure it does what you expect away from datum positions.

Otherwise change set looks good, efforts appreciated.

src/dxtbx/format/FormatSMVRigakuSaturn.py Show resolved Hide resolved
newsfragments/617.bugfix Outdated Show resolved Hide resolved
src/dxtbx/format/FormatSMVRigakuSaturn.py Outdated Show resolved Hide resolved
src/dxtbx/format/FormatSMVRigakuSaturn.py Outdated Show resolved Hide resolved
src/dxtbx/format/FormatSMVRigakuSaturn.py Outdated Show resolved Hide resolved
src/dxtbx/format/FormatSMVRigakuSaturn.py Show resolved Hide resolved
src/dxtbx/format/FormatSMVRigakuSaturn.py Show resolved Hide resolved
@jamesrhester
Copy link
Author

Only question I have is do you have any non-trivial test data e.g. where the scan axis is phi or anything? If you have an instrument could be worth collecting something with an unusual set of axis configurations just to make sure it does what you expect away from datum positions.

I don't have access to such an instrument or dataset: all I have currently is the dataset referenced in #616 (omega scanning but non-default chi axis for some scans) which I plan to check using the new checkCIF for raw data tool after generating cbfs via dials. I figure if everything is correct after that workflow then the bulk of cases for this type of instrument are covered.

@ndevenish
Copy link
Collaborator

Hi James, are you happy to be credited in the AUTHORS and CHANGELOG?

@jamesrhester
Copy link
Author

Yes, can credit me, thanks.

@ndevenish
Copy link
Collaborator

Given that Graeme had a couple of outstanding questions, I'm not going to merge this in today for DIALS 3.14. However, I'm happy for us to include it in a patch release because it's fixing an actual bug.

James.Hester and others added 3 commits April 7, 2023 10:52
@ndevenish
Copy link
Collaborator

As ever, time marches on faster than I can track it. Merging this in for 3.15 instead.

@ndevenish ndevenish enabled auto-merge (squash) June 12, 2023 08:41
@ndevenish ndevenish merged commit ca47d2d into cctbx:main Jun 12, 2023
9 of 10 checks passed
toastisme pushed a commit to toastisme/dxtbx that referenced this pull request Jul 18, 2024
…x#617)

FormatSMVRigakuSaturn class previously assumed a single-axis crystal
goniometer. When there are multiple axes, and these are at non-zero
positions during a scan, inter-scan relationships will be incorrect.

Copies the code already present for multi-axis crystal goniometers in
FormatSMVRigakuEiger and add a check for a single axis, in which case
the previous behaviour is preserved.

Closes cctbx#616 .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rigaku Saturn format assumes single-axis diffractometer even when that is false
3 participants