Age | Commit message (Collapse) | Author |
|
While compiling CrystFEL using musl, this error message popped up:
In file included from ../libcrystfel/src/indexers/pinkindexer.c:36:
x86_64-unknown-linux-musl/sys-include/sys/errno.h:1:2:
warning: #warning redirecting incorrect #include <sys/errno.h> to <errno.h> [-Wcpp]
1 | #warning redirecting incorrect #include <sys/errno.h> to <errno.h>
| ^~~~~~~
So I removed sys/errno.h completely (since I couldn't figure out where
it was used in the file anyways), and the result still compiled.
|
|
In some rare cases, the cell changes from right to left handed during
the vector refinement stage of asdf, while ending up at an apparently
correct indexing solution. This commit just flips the axis round when
necessary, in the same way that asdf already does in an earlier stage.
I haven't done a proper survey, but I can say that the image I used to
isolate and test this issue had very low resolution while still being
what we would call "indexable". The left-handed cells appeared for six
out of the 12173 hits in that run, or slightly below 0.05%. So, it's
rare but not totally impossible.
|
|
It's hardly needed for re-use, and invites problems with the volume
going out of sync with the vectors. Better just to calculate it when
needed.
|
|
This also gets rid of crystal_copy_deep. From now on, all crystal_copy
calls also copy the UnitCell.
|
|
|
|
A little clearer than fftw_malloc(*sizeof)
|
|
This is only needed to reset FFTW to a "pristine" state, which is not
required here, and possibly even detrimental.
|
|
We don't need to fish out the arrays and use FFTW's "new array
execution" functions: http://fftw.org/fftw3_doc/New_002darray-Execute-Functions.html
|
|
|
|
Previously, it was possible for the search to run over the part of the
array initialised by FFTW.
|
|
Co-authored-by: Alexandra Tolstikova <alexandra.tolstikova@desy.de>
Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/76
|
|
This adds an optional fast mode for asdf indexing, which is around 3
times faster with only a few percent lower success rate.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
'changed' is initialised to zero, so there's no way this check can fail.
|
|
|
|
|
|
|
|
|
|
Making them opaque seemed like a nice idea, because all the indexers
could take care of their own command-line arguments. However, it
doesn't work at all when indexing is run via the API.
|
|
Prompted by the article linked below, for each FIXME/TODO I've either
referenced an issue in the tracker, or removed it if it's not worth
fixing.
https://schleiss.io/plotting-source-code-todos-for-open-source-projects
|
|
This removes some old stub code. There doesn't seem to be a big need
for doing what the FIXME suggests.
|
|
This removes the big potential for confusion, which has happened several
times (see e.g. 095cbebaf6). It also fixes in-tree builds with CMake
(but seriously, always use out-of-tree builds).
Fixes #2.
|
|
|
|
This isn't necessary after all, for the same reason that im-sandbox
doesn't need escaping: it can count off the fields where spaces aren't
allowed, and anything left is the filename. I was over-thinking things.
|
|
|
|
|
|
Unfortunately, PinkIndexer needs the real camera length for its centre
refinement. Giving a fake value and scaling the resulting shift does
not work - the indexing rate drops with even a small error.
Ideally, this would work in the same way as --wavelength-estimate, by
using a static value from the geometry file if it's given. However,
this is rather complicated to implement because of the way all the units
stuff is implemented. Therefore, this is left as an improvement for the
future.
|
|
|
|
The FIXMEs have both already been fixed.
|
|
|
|
There is presumably an MPSD that also needs to be added.
|
|
|
|
Significant change: the solution file must now come with the lattice
type, centering and (if applicable) unique axis information at the end
of each line, e.g. 'cI' (cubic I), 'mAb' (monoclinic A, unique axis b).
|
|
This give FromFile its own private command-lien option processing, like
the other indexers. It removes the ability to auto-generate the
solution filename, but I don't think there's a way to do that without
breaking abstractions.
|
|
|
|
|
|
|
|
It's only used for some error messages, and it doesn't compile anyway.
|
|
Everything should use the per-crystal detector shift now.
|
|
|
|
|
|
Also adds to meson.build
|
|
This is a more general replacement for --pinkIndexer-thread-count.
|