aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-07-13 15:20:10 +0200
committerThomas White <taw@physics.org>2023-07-28 13:22:05 +0200
commit2501aedda111feaf139f9d8e94c4ab36926e93e3 (patch)
tree574491d1ccd540b921e81c224a89ff7cfb676b25 /libcrystfel/src
parent56345fe5b8d0e34e0791f7ef7d0ae22f69bbce01 (diff)
Rotation centre coordinates need to be in metres (not pixels)
Diffstat (limited to 'libcrystfel/src')
-rw-r--r--libcrystfel/src/predict-refine.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/libcrystfel/src/predict-refine.c b/libcrystfel/src/predict-refine.c
index d5838e06..4a228dc1 100644
--- a/libcrystfel/src/predict-refine.c
+++ b/libcrystfel/src/predict-refine.c
@@ -283,12 +283,12 @@ int fs_ss_gradient_panel(int param, Reflection *refl, UnitCell *cell,
}
-/* Returns dfs_refl/dP and fss_refl/dP, where P = any parameter
- * fs_refl is the fast scan position of refl in panel 'p',
+/* Returns the gradient of fs_dev and ss_dev w.r.t. any parameter.
+ * cx,cy,cz are the rotation axis coordinates (only 2 in use at any time)
* in metres (not pixels) */
int fs_ss_gradient(int param, Reflection *refl, UnitCell *cell,
struct detgeom_panel *p, gsl_matrix *Minv,
- double cx, double cy, double cz,
+ double cxm, double cym, double czm,
float *fsg, float *ssg)
{
signed int h, k, l;
@@ -351,7 +351,10 @@ int fs_ss_gradient(int param, Reflection *refl, UnitCell *cell,
} else {
return fs_ss_gradient_panel(param, refl, cell, p,
Minv, fs, ss, mu, t,
- cx, cy, cz, fsg, ssg);
+ cxm/p->pixel_pitch,
+ cym/p->pixel_pitch,
+ czm/p->pixel_pitch,
+ fsg, ssg);
}
}