aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-07-28Avoid repetitive codeThomas White
2023-07-28Fix incorrectly-sized arrayThomas White
2023-07-28align_detector: Set up Millepede steering file for specified refinement levelThomas White
2023-07-28Implement data_template_group_info()Thomas White
2023-07-28Re-define geometry group labelling schemeThomas White
The old version was totally broken. The serial numbers have to contain the complete hierarchy information, otherwise they aren't unique.
2023-07-28Rotation centre coordinates need to be in metres (not pixels)Thomas White
2023-07-28Add rotation gradients for MilleThomas White
2023-07-28Add detgeom_group_centerThomas White
2023-07-28Fix iterate() for prediction refinementThomas White
I was confused when I wrote acd0de4e4a21, and completely broke the maths. To fix it, I copied the guts of iterate() back from the old version and re-created the intermediate steps - switching x/y to fs/ss, calculating fs/ss gradients together and the hooks for Minv.
2023-07-28Redefine ray vector without trigonometryThomas White
This makes the gradients very simple!
2023-07-28Implement rotation gradients (with test)Thomas White
2023-07-28Move rotate2d to utilsThomas White
2023-07-28Rename tests/gradient_panel_move.c -> tests/gradient_check.cThomas White
Because it does all types of gradient.
2023-07-28Add tests for unit cell parametersThomas White
2023-07-28Separate gradients into "panel" and "physics" partsThomas White
2023-07-28Factorise matrix operationsThomas White
This makes the code much clearer. Note that two opposing sign errors have been fixed in the gradient calculation.
2023-07-28Unify panel position gradient tests into one fileThomas White
2023-07-28Add show_vector()Thomas White
2023-07-28Implement panel x gradientsThomas White
2023-07-28Calculate panel MinvsThomas White
2023-07-28Calculate fs and ss gradients together, SPOT panel number, add matrix hooksThomas White
2023-07-28Add tests/gradient_cell_asxThomas White
2023-07-28Simplified gradient testThomas White
prediction_gradient_check was out of control - it had option processing, as well as bugs of its own! This replaces it with something much simpler.
2023-07-28r_gradient: Re-order parameters to match {fs,ss}_gradientThomas White
2023-07-28Trim the list of geometric parametersThomas White
2023-07-28Don't refine detector at all, in prediction refinementThomas White
Following the advice in https://doi.org/10.1107/S2059798318009191
2023-07-28Remove a #defineThomas White
2023-07-28Reduce scope of rv[]Thomas White
2023-07-28Move gradients to predict-refineThomas White
Makes sense for the _dev and _gradient functions to be in the same place.,
2023-07-28Initial conversion of Millepede code to fs/ss gradientsThomas White
2023-07-28Put residual into metresThomas White
2023-07-28Remove z-component and x/y trackingThomas White
2023-07-28Add detgeom_translate_detector_mThomas White
2023-07-28Initial re-parameterisation of prediction refinement with fs/ss coordinatesThomas White
The gradients need to be updated.
2023-07-28detgeom: Add panel group center coordinatesThomas White
2023-07-28Avoid segfault if geometry file doesn't have groupsThomas White
2023-07-28Fix horribly confusing rotation labelsThomas White
2023-07-28z-rotation gradientsThomas White
2023-07-28indexamajig: Set all group translation gradientsThomas White
2023-07-28Add HAVE_MILLEPEDE to config.h.inThomas White
Library and programs both need this.
2023-07-28detgeom: Add references from children to parentsThomas White
This allows us to start from the panel and work upwards to the top-level group, which makes hierarchical gradient calculation much easier.
2023-07-28Move Mille stuff to separate fileThomas White
2023-07-28Fix incorrect sign of clen gradientThomas White
2023-07-28Remove excitation error termsThomas White
2023-07-28Add clen refinementThomas White
2023-07-28Remove debugging messagesThomas White
2023-07-28adjust_detector: Don't show hierarchyThomas White
Too much console spam...
2023-07-28Fix incorrect rotationsThomas White
2023-07-28adjust_detector: Fix incorrect y shiftThomas White
2023-07-28Rename top-level panel group to 'all'Thomas White
Rationale: 'top' sounds kind of geometrical