crystfel.git
7 days agoClean up residual CBFlib stuff master
Thomas White [Tue, 16 Apr 2019 15:25:50 +0000 (17:25 +0200)]
Clean up residual CBFlib stuff

7 days agoRecognise (if not handle) all CBF formats
Thomas White [Tue, 16 Apr 2019 13:56:50 +0000 (15:56 +0200)]
Recognise (if not handle) all CBF formats

7 days agoBasic CBF reader with byte offset decompression
Thomas White [Mon, 15 Apr 2019 16:28:54 +0000 (18:28 +0200)]
Basic CBF reader with byte offset decompression

8 days agoStrip ouf CBFlib references
Thomas White [Fri, 22 Mar 2019 12:56:49 +0000 (13:56 +0100)]
Strip ouf CBFlib references

11 days agomove-entire-detector: Add z direction
Thomas White [Fri, 12 Apr 2019 13:20:26 +0000 (15:20 +0200)]
move-entire-detector: Add z direction

13 days agocell_explorer: Exclude cells when centering type is set to grey
Thomas White [Wed, 10 Apr 2019 14:13:51 +0000 (16:13 +0200)]
cell_explorer: Exclude cells when centering type is set to grey

This is more useful than just changing the colours.  Fixes CRYS-224.

2 weeks agocell_explorer: Initialise scd.enforced_cell to NULL
Thomas White [Tue, 9 Apr 2019 14:55:39 +0000 (16:55 +0200)]
cell_explorer: Initialise scd.enforced_cell to NULL

2 weeks agocompare_reindexed_cell_parameters: Require lattice to be primitive unless csl set
Thomas White [Thu, 4 Apr 2019 08:42:28 +0000 (10:42 +0200)]
compare_reindexed_cell_parameters: Require lattice to be primitive unless csl set

2 weeks agocell_tool: Add --csl
Thomas White [Tue, 26 Mar 2019 14:13:45 +0000 (15:13 +0100)]
cell_tool: Add --csl

2 weeks agocell_explorer: Add enforcement of lattice type restrictions on cell parameters
Thomas White [Thu, 4 Apr 2019 15:40:20 +0000 (17:40 +0200)]
cell_explorer: Add enforcement of lattice type restrictions on cell parameters

2 weeks agocell_explorer: Remove accelerator from "Save histogram data" menu item
Thomas White [Thu, 4 Apr 2019 15:40:42 +0000 (17:40 +0200)]
cell_explorer: Remove accelerator from "Save histogram data" menu item

2 weeks agoFix typo
Thomas White [Wed, 3 Apr 2019 14:07:07 +0000 (16:07 +0200)]
Fix typo

2 weeks agocell_explorer: Complain about unknown centering
Thomas White [Wed, 3 Apr 2019 14:06:06 +0000 (16:06 +0200)]
cell_explorer: Complain about unknown centering

2 weeks agohdfsee: Fix crash with no geometry file
Thomas White [Wed, 3 Apr 2019 13:57:02 +0000 (15:57 +0200)]
hdfsee: Fix crash with no geometry file

2 weeks agoConsider pixel as bad if its value is NaN or infinity
Thomas White [Tue, 2 Apr 2019 13:55:51 +0000 (15:55 +0200)]
Consider pixel as bad if its value is NaN or infinity

3 weeks agocompare_reindexed_cell_parameters: Bail out when there are no candidate vectors
Thomas White [Wed, 27 Mar 2019 15:07:17 +0000 (16:07 +0100)]
compare_reindexed_cell_parameters: Bail out when there are no candidate vectors

3 weeks agoUpdate crystfel_geometry(5)
Thomas White [Fri, 29 Mar 2019 16:01:17 +0000 (17:01 +0100)]
Update crystfel_geometry(5)

4 weeks agoFix order of matrix operations in compare_reindexed_cell_parameters()
Thomas White [Tue, 26 Mar 2019 13:45:52 +0000 (14:45 +0100)]
Fix order of matrix operations in compare_reindexed_cell_parameters()

4 weeks agocell_explorer: Add option to save histogram data
Thomas White [Fri, 22 Mar 2019 16:03:38 +0000 (17:03 +0100)]
cell_explorer: Add option to save histogram data

4 weeks agoFix matrix conventions for symmetry operations
Thomas White [Wed, 20 Mar 2019 14:50:48 +0000 (15:50 +0100)]
Fix matrix conventions for symmetry operations

4 weeks agoMerge branch 'tom/transformations'
Thomas White [Wed, 20 Mar 2019 09:23:29 +0000 (10:23 +0100)]
Merge branch 'tom/transformations'

5 weeks agoFormatting
Thomas White [Mon, 18 Mar 2019 16:03:58 +0000 (17:03 +0100)]
Formatting

5 weeks agohdfsee: Use a fresh detector geometry structure each time a new image is loaded
Thomas White [Mon, 18 Mar 2019 14:53:11 +0000 (15:53 +0100)]
hdfsee: Use a fresh detector geometry structure each time a new image is loaded

If the clen is a literal number, AND there's a coffset, the coffset will
be added every time the image data is loaded.  Now, it'll start from
scratch.

5 weeks agoextract-geom: Don't add extra newlines
Thomas White [Fri, 15 Mar 2019 15:01:51 +0000 (16:01 +0100)]
extract-geom: Don't add extra newlines

5 weeks agocell_transform_rational: Complain if matrix is singular
Thomas White [Wed, 13 Mar 2019 15:56:54 +0000 (16:56 +0100)]
cell_transform_rational: Complain if matrix is singular

5 weeks agodetermine_centering: Check 1,1,1 in both directions
Thomas White [Wed, 13 Mar 2019 15:10:08 +0000 (16:10 +0100)]
determine_centering: Check 1,1,1 in both directions

The original centering must be able to provide a lattice point for 1,1,1
in the new centering.  The new centering's 1,1,1 point must also map to
a lattice point in the original centering.

Note that it's no use checking 0,0,0, because it'll just be a load of
zeroes.

5 weeks agocell_tool: Reject singular transformation matrix
Thomas White [Wed, 13 Mar 2019 14:56:17 +0000 (15:56 +0100)]
cell_tool: Reject singular transformation matrix

5 weeks agocell_tool --transform: Write output cell
Thomas White [Wed, 13 Mar 2019 14:54:06 +0000 (15:54 +0100)]
cell_tool --transform: Write output cell

5 weeks agocell_tool: Accept unconventional cell
Thomas White [Wed, 13 Mar 2019 14:53:53 +0000 (15:53 +0100)]
cell_tool: Accept unconventional cell

5 weeks agovalidate_cell: Allow to tell the difference between serious problems and warnings
Thomas White [Wed, 13 Mar 2019 14:53:31 +0000 (15:53 +0100)]
validate_cell: Allow to tell the difference between serious problems and warnings

5 weeks agoRemove intmat_solve_rational
Thomas White [Wed, 13 Mar 2019 14:41:55 +0000 (15:41 +0100)]
Remove intmat_solve_rational

Not used anywhere

5 weeks agoRename m to P, to match documentation (including ITA)
Thomas White [Wed, 13 Mar 2019 14:41:38 +0000 (15:41 +0100)]
Rename m to P, to match documentation (including ITA)

5 weeks agoRename rtnl_mtx_solve and rtnl_mtx_mult to make their purpose clearer
Thomas White [Wed, 13 Mar 2019 14:41:05 +0000 (15:41 +0100)]
Rename rtnl_mtx_solve and rtnl_mtx_mult to make their purpose clearer

5 weeks agoFix matrix notation in symmetry operations
Thomas White [Wed, 13 Mar 2019 13:22:10 +0000 (14:22 +0100)]
Fix matrix notation in symmetry operations

6 weeks agoRename intmat_intvec_mult to transform_indices
Thomas White [Tue, 12 Mar 2019 13:31:49 +0000 (14:31 +0100)]
Rename intmat_intvec_mult to transform_indices

6 weeks agoGet rid of two unused functions
Thomas White [Tue, 12 Mar 2019 13:31:26 +0000 (14:31 +0100)]
Get rid of two unused functions

6 weeks agoTakeTwo: Restore correct matrix multiplication for solution
Thomas White [Mon, 11 Mar 2019 17:26:16 +0000 (18:26 +0100)]
TakeTwo: Restore correct matrix multiplication for solution

6 weeks agoTakeTwo: take change in IntegerMatrix notation into account
Thomas White [Mon, 11 Mar 2019 16:49:11 +0000 (17:49 +0100)]
TakeTwo: take change in IntegerMatrix notation into account

6 weeks agoRemove commented code
Thomas White [Mon, 11 Mar 2019 15:49:17 +0000 (16:49 +0100)]
Remove commented code

6 weeks agoGet rid of cell_transform_gsl_reciprocal()
Thomas White [Mon, 11 Mar 2019 10:53:59 +0000 (11:53 +0100)]
Get rid of cell_transform_gsl_reciprocal()

It's confusing to have matrices acting on both real and reciprocal
vectors.  Let's standardise instead on transformations always applying
to real-space cells.

It was only used in one place.

6 weeks agoChange matrix notation to match ITA chapter 5.1
Thomas White [Sat, 9 Mar 2019 10:42:55 +0000 (11:42 +0100)]
Change matrix notation to match ITA chapter 5.1

6 weeks agotests/transformation_check: Tidy up and be louder
Thomas White [Sat, 9 Mar 2019 10:39:37 +0000 (11:39 +0100)]
tests/transformation_check: Tidy up and be louder

6 weeks agocell_tool: Improve messages
Thomas White [Sat, 9 Mar 2019 10:39:14 +0000 (11:39 +0100)]
cell_tool: Improve messages

6 weeks agoAdd a comment
Thomas White [Sat, 9 Mar 2019 10:38:49 +0000 (11:38 +0100)]
Add a comment

6 weeks agoSingle point of truth for matrix memory layout
Thomas White [Sat, 9 Mar 2019 10:37:34 +0000 (11:37 +0100)]
Single point of truth for matrix memory layout

6 weeks agoFix typo
Thomas White [Sat, 9 Mar 2019 10:35:48 +0000 (11:35 +0100)]
Fix typo

6 weeks agocell_tool: Add documentation for --transform
Thomas White [Wed, 6 Mar 2019 16:23:00 +0000 (17:23 +0100)]
cell_tool: Add documentation for --transform

6 weeks agoAdd remaining centering types and finalise centering determination
Thomas White [Wed, 6 Mar 2019 16:04:47 +0000 (17:04 +0100)]
Add remaining centering types and finalise centering determination

6 weeks agoAutomatic centering determination after transformation
Thomas White [Thu, 24 Jan 2019 10:58:22 +0000 (11:58 +0100)]
centering determination after transformation

6 weeks agocell_tool: Implement --cell-choices
Thomas White [Fri, 22 Feb 2019 13:50:37 +0000 (14:50 +0100)]
cell_tool: Implement --cell-choices

6 weeks agocell_tool: Add --transform
Thomas White [Thu, 21 Feb 2019 15:15:06 +0000 (16:15 +0100)]
cell_tool: Add --transform

6 weeks agoInitial centering determination
Thomas White [Fri, 22 Feb 2019 10:42:29 +0000 (11:42 +0100)]
Initial centering determination

6 weeks agoMore tidying up of cell comparison
Thomas White [Wed, 6 Mar 2019 13:42:13 +0000 (14:42 +0100)]
More tidying up of cell comparison

6 weeks agoFind the best cell match, not just the first one
Thomas White [Wed, 6 Mar 2019 13:03:23 +0000 (14:03 +0100)]
Find the best cell match, not just the first one

6 weeks agoTidy up cell comparison
Thomas White [Wed, 6 Mar 2019 11:00:27 +0000 (12:00 +0100)]
Tidy up cell comparison

6 weeks agoKeep track of the "un-centering" matrix, as well as the "centering"
Thomas White [Wed, 6 Mar 2019 10:40:37 +0000 (11:40 +0100)]
Keep track of the "un-centering" matrix, as well as the "centering"

This makes it easy to reverse the transformation, if required, which it
is when comparing centered cells.

6 weeks agoAdd rtnl_mtx_identity()
Thomas White [Tue, 5 Mar 2019 13:16:26 +0000 (14:16 +0100)]
Add rtnl_mtx_identity()

6 weeks agoNew way of doing cell comparisons, similar to match_cell()
Thomas White [Thu, 28 Feb 2019 09:53:43 +0000 (10:53 +0100)]
New way of doing cell comparisons, similar to match_cell()

6 weeks agoFix tolerances (again)
Thomas White [Thu, 28 Feb 2019 09:53:11 +0000 (10:53 +0100)]
Fix tolerances (again)

6 weeks agoConsider fractional cell lengths during comparison
Thomas White [Tue, 26 Feb 2019 12:18:40 +0000 (13:18 +0100)]
Consider fractional cell lengths during comparison

This is WAY too slow.  Need another algorithm.

6 weeks agocell_tool --find-ambi: Work without -y
Thomas White [Fri, 22 Feb 2019 14:25:09 +0000 (15:25 +0100)]
cell_tool --find-ambi: Work without -y

It's not super-helpful, but the manual say it works, so...

6 weeks agoBetter handling of multiple symop error
Thomas White [Mon, 18 Feb 2019 16:07:08 +0000 (17:07 +0100)]
Better handling of multiple symop error

6 weeks agoImplement parse_symmetry_operations
Thomas White [Mon, 18 Feb 2019 15:56:52 +0000 (16:56 +0100)]
Implement parse_symmetry_operations

6 weeks agoBe clear about whether functions need rational or integer transformations
Thomas White [Mon, 18 Feb 2019 15:04:28 +0000 (16:04 +0100)]
Be clear about whether functions need rational or integer transformations

6 weeks agoAdd rtnl_mtx_det() and rtnl_mtx_mult()
Thomas White [Mon, 18 Feb 2019 14:35:01 +0000 (15:35 +0100)]
Add rtnl_mtx_det() and rtnl_mtx_mult()

6 weeks agoSymmetry operation parser using Flex/Bison
Thomas White [Mon, 11 Feb 2019 17:15:32 +0000 (18:15 +0100)]
Symmetry operation parser using Flex/Bison

6 weeks agoAdd new rational number library
Thomas White [Mon, 29 Oct 2018 09:05:24 +0000 (10:05 +0100)]
Add new rational number library

6 weeks agoUse IntegerMatrix for all unit cell transformations
Thomas White [Thu, 25 Oct 2018 14:48:36 +0000 (16:48 +0200)]
Use IntegerMatrix for all unit cell transformations

Get rid of UnitCellTransformation, a thin wrapper which didn't do
anything.

6 weeks agoget_hkl --reindex: Check that the user provides only one reindexing operation
Thomas White [Mon, 18 Feb 2019 15:57:08 +0000 (16:57 +0100)]
get_hkl --reindex: Check that the user provides only one reindexing operation

6 weeks agoSimplify the output of cell_print()
Thomas White [Wed, 20 Feb 2019 16:06:53 +0000 (17:06 +0100)]
Simplify the output of cell_print()

6 weeks agocell_tool --rings: Add --highres
Thomas White [Thu, 21 Feb 2019 15:14:30 +0000 (16:14 +0100)]
cell_tool --rings: Add --highres

6 weeks agocell_tool: Fix length tolerance units
Thomas White [Fri, 26 Oct 2018 14:04:55 +0000 (16:04 +0200)]
cell_tool: Fix length tolerance units

6 weeks agoChange horribly confusing names of unit cell comparison functions
Thomas White [Tue, 23 Oct 2018 12:18:40 +0000 (14:18 +0200)]
Change horribly confusing names of unit cell comparison functions

cells_are_similar -> compare_cell_parameters_and_orientation
compare_cells -> compare_reindexed_cell_parameters_and_orientation
cell_tool.c:cells_the_same -> cellutils.c:compare_cell_parameters

All comparisons now done in real space, checking that centering is the
same, and without uncentering anything.

6 weeks agocell_tool: Don't uncenter cells before comparison
Thomas White [Tue, 23 Oct 2018 09:19:15 +0000 (11:19 +0200)]
cell_tool: Don't uncenter cells before comparison

6 weeks agocell_tool: Check --tolerance has the right number of commas
Thomas White [Tue, 16 Oct 2018 07:50:24 +0000 (09:50 +0200)]
cell_tool: Check --tolerance has the right number of commas

6 weeks agoDon't use within_tolerance for angles
Thomas White [Tue, 16 Oct 2018 07:50:15 +0000 (09:50 +0200)]
Don't use within_tolerance for angles

6 weeks agoRemove cells_are_similar() from API
Thomas White [Mon, 15 Oct 2018 14:01:47 +0000 (16:01 +0200)]
Remove cells_are_similar() from API

There are two functions with this name.  Avoid confusion.

6 weeks agocell_tool: Add --compare (doesn't seem to work yet for some reason)
Thomas White [Mon, 1 Oct 2018 15:26:12 +0000 (17:26 +0200)]
cell_tool: Add --compare (doesn't seem to work yet for some reason)

6 weeks agoFix tolerances
Thomas White [Mon, 1 Oct 2018 15:21:24 +0000 (17:21 +0200)]
Fix tolerances

6 weeks agocell_tool: Improve option processing
Thomas White [Mon, 1 Oct 2018 15:00:56 +0000 (17:00 +0200)]
cell_tool: Improve option processing

6 weeks agoShow the actual number of orders
Thomas White [Mon, 1 Oct 2018 15:00:36 +0000 (17:00 +0200)]
Show the actual number of orders

6 weeks agocell_tool: Use libcrystfel cells_are_similar() function
Thomas White [Mon, 1 Oct 2018 15:00:17 +0000 (17:00 +0200)]
cell_tool: Use libcrystfel cells_are_similar() function

6 weeks agocell_tool: Add --rings
Thomas White [Mon, 1 Oct 2018 12:25:36 +0000 (14:25 +0200)]
cell_tool: Add --rings

6 weeks agocell_tool --uncenter: Write unit cell to file
Thomas White [Thu, 27 Sep 2018 12:19:03 +0000 (14:19 +0200)]
cell_tool --uncenter: Write unit cell to file

6 weeks agocell_tool: Add --uncenter
Thomas White [Thu, 27 Sep 2018 09:13:43 +0000 (11:13 +0200)]
cell_tool: Add --uncenter

6 weeks agoInitial cell_tool (implementing find_ambi only)
Thomas White [Tue, 25 Sep 2018 13:51:16 +0000 (15:51 +0200)]
Initial cell_tool (implementing find_ambi only)

6 weeks agoindexamajig: Status message improvements
Thomas White [Thu, 7 Mar 2019 15:42:09 +0000 (16:42 +0100)]
indexamajig: Status message improvements

1. Show the number of hits
2. Keep producing updates while the last patterns are being processed
3. Don't duplicate the code for displaying the status messages

6 weeks agoRemove old debug message
Thomas White [Thu, 7 Mar 2019 15:41:53 +0000 (16:41 +0100)]
Remove old debug message

6 weeks agoindexamajig: Rename --min-gradient to --min-squared-gradient
Thomas White [Wed, 6 Mar 2019 14:11:17 +0000 (15:11 +0100)]
indexamajig: Rename --min-gradient to --min-squared-gradient

The eventual aim of this is to deprecate the "--min-gradient" option,
resolving the long-standing confusion about whether this option is the
gradient or the squared gradient.

6 weeks agoturbo-index-slurm: Comment out --nice value
Thomas White [Wed, 6 Mar 2019 14:02:25 +0000 (15:02 +0100)]
turbo-index-slurm: Comment out --nice value

It's not needed as long as the queue implements proper fair sharing
between users.

7 weeks agocheck-{near-bragg,peak-detection}: Give better errors
Thomas White [Tue, 5 Mar 2019 09:28:03 +0000 (10:28 +0100)]
check-{near-bragg,peak-detection}: Give better errors

7 weeks agopartialator: Fix two small memory leaks
Thomas White [Fri, 1 Mar 2019 16:25:09 +0000 (17:25 +0100)]
partialator: Fix two small memory leaks

7 weeks agopartialator: Check for failed minimiser setup in write_grid()
Thomas White [Fri, 1 Mar 2019 14:34:31 +0000 (15:34 +0100)]
partialator: Check for failed minimiser setup in write_grid()

7 weeks agopartialator: Fix string overruns in write_grid()
Thomas White [Fri, 1 Mar 2019 14:34:04 +0000 (15:34 +0100)]
partialator: Fix string overruns in write_grid()

7 weeks agocrystal_copy(): Make new copy of notes if non-NULL
Thomas White [Thu, 28 Feb 2019 15:57:13 +0000 (16:57 +0100)]
crystal_copy(): Make new copy of notes if non-NULL

7 weeks agopartialator: Avoid double-free of stuff_from_stream and filename
Thomas White [Thu, 28 Feb 2019 14:58:25 +0000 (15:58 +0100)]
partialator: Avoid double-free of stuff_from_stream and filename

7 weeks agoDon't mask out entire image if bad pixel map can't be loaded
Thomas White [Fri, 1 Mar 2019 13:07:54 +0000 (14:07 +0100)]
Don't mask out entire image if bad pixel map can't be loaded

2 months agoscripts/plot-contourmap: Specify colours of contour lines
Thomas White [Fri, 8 Feb 2019 15:33:07 +0000 (16:33 +0100)]
scripts/plot-contourmap: Specify colours of contour lines

2 months agoAdd a comment to CMakeLists.txt
Thomas White [Fri, 8 Feb 2019 15:32:56 +0000 (16:32 +0100)]
Add a comment to CMakeLists.txt

2 months agoMake sure of string length in get_event_string()
Thomas White [Wed, 30 Jan 2019 16:05:32 +0000 (17:05 +0100)]
Make sure of string length in get_event_string()