-
Notifications
You must be signed in to change notification settings - Fork 102
[Crystallography] Extinction rules for differents space groups #2565
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
Conversation
Hi @kif, There was something fishy going on. The tests didn’t fail even when I deliberately broke the code for a space group. I looked into
The class Right below the
Right now, the test is silently skipped and doesn't warn about a missing critical file. This makes it easy to miss bugs — I only noticed it because I broke the logic for one of the space groups on purpose. Update: I was able to re-create |
Well the file is supposed to be cached in the Those files are all available on: I have very often tests failing in the CI because of files that could not be downloaded, there is a mechanism that ensures the checksum of the file is correct (which allows to upgrade the file when needed, enforcing the testing machine to re-download the file) ... Moreover, there is nothing related to the skipping of tests in https://github.com/silx-kit/silx/blob/main/src/silx/utils/ExternalResources.py I don't know if this is a feature introduced by pytest ... but it could be an extra reason not using it I just checked, with the file missing, the test takes 300ms (including the download) while the second run takes only 80ms. |
Thank you very much for the explanation and your help, @kif.
So maybe it doesn’t seem to be related to For reference, my cached file is located at: |
Hi Gudrun, |
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.
Very good documentation.
Next Space Groups ImplementedHi @kif Here are the next space groups. I mostly followed the ITC definitions. SG 110 was particularly tricky. If you have time, maybe you could take a look at it later. Best, |
Hi @kif |
I investigated further. sg 167:H trigonal:H R-3c:H: a = 1.1000, b = 1.1000 c= 1.2000
alpha = 90.000, beta = 90.000, gamma = 120.000
Reflection conditions:
general: hkil: -h+k+l=3n, hki0: -h+k=3n, hh(-2h)l: l=3n, h-h0l: h+l=3n, l=2n, 000l: l=6n, h-h00: h=3n Evaluating the above for the given set of indices: (False, {(1, 0, -5), (-1, 0, 5), (-1, 1, -5), (1, -1, 5), (0, 1, 5), (0, -1, -5)}) Maybe there is another rule, I am not yet aware of. |
I found the solutions for SG167, SG161, on offer two solutions for SG167. All tests green AFAIK. |
0b8bc0d
to
5da256c
Compare
for more information, see https://pre-commit.ci
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.
Impressive work. Looks great !
This PR is a work in progress for adding reflection support as discussed in #2555.
Feedback is welcome during development. I’ll mark as “Ready for review” when it's finished.