aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-06-27 15:45:21 +0200
committerThomas White <taw@physics.org>2023-07-28 13:22:05 +0200
commit4977cb7c384f9339037353f31abf0a6a8fd2aea7 (patch)
tree37ff1804a7d5153d7760a9b61ceb4a9285b4f5bb /libcrystfel/src
parent505a385d5d58373ef0627b8944bb78d17e347c8a (diff)
r_gradient: Re-order parameters to match {fs,ss}_gradient
Diffstat (limited to 'libcrystfel/src')
-rw-r--r--libcrystfel/src/predict-refine.c12
-rw-r--r--libcrystfel/src/predict-refine.h4
2 files changed, 8 insertions, 8 deletions
diff --git a/libcrystfel/src/predict-refine.c b/libcrystfel/src/predict-refine.c
index d8547710..e2adacf5 100644
--- a/libcrystfel/src/predict-refine.c
+++ b/libcrystfel/src/predict-refine.c
@@ -72,7 +72,7 @@ double ss_dev(struct reflpeak *rp, struct detgeom *det)
}
-double r_gradient(UnitCell *cell, int k, Reflection *refl, struct image *image)
+double r_gradient(int param, Reflection *refl, UnitCell *cell, double wavelength)
{
double asx, asy, asz;
double bsx, bsy, bsz;
@@ -91,10 +91,10 @@ double r_gradient(UnitCell *cell, int k, Reflection *refl, struct image *image)
zl = hs*asz + ks*bsz + ls*csz;
tl = sqrt(xl*xl + yl*yl);
- phi = angle_between_2d(tl, zl+1.0/image->lambda, 0.0, 1.0); /* 2theta */
+ phi = angle_between_2d(tl, zl+1.0/wavelength, 0.0, 1.0); /* 2theta */
azi = atan2(yl, xl); /* azimuth */
- switch ( k ) {
+ switch ( param ) {
case GPARAM_ASX :
return - hs * sin(phi) * cos(azi);
@@ -134,7 +134,7 @@ double r_gradient(UnitCell *cell, int k, Reflection *refl, struct image *image)
}
- ERROR("No r gradient defined for parameter %i\n", k);
+ ERROR("No r gradient defined for parameter %i\n", param);
abort();
}
@@ -550,8 +550,8 @@ static int iterate(struct reflpeak *rps, int n, UnitCell *cell, struct image *im
w = rps[i].Ih;
for ( k=0; k<num_params; k++ ) {
- gradients[k] = r_gradient(cell, rv[k], rps[i].refl,
- image);
+ gradients[k] = r_gradient(rv[k], rps[i].refl, cell,
+ image->lambda);
}
for ( k=0; k<num_params; k++ ) {
diff --git a/libcrystfel/src/predict-refine.h b/libcrystfel/src/predict-refine.h
index 8a2f6ef0..6d15f1e9 100644
--- a/libcrystfel/src/predict-refine.h
+++ b/libcrystfel/src/predict-refine.h
@@ -77,8 +77,8 @@ extern double fs_dev(struct reflpeak *rp, struct detgeom *det);
extern double ss_dev(struct reflpeak *rp, struct detgeom *det);
-extern double r_gradient(UnitCell *cell, int k, Reflection *refl,
- struct image *image);
+extern double r_gradient(int param, Reflection *refl, UnitCell *cell,
+ double wavelength);
extern double fs_gradient(int param, Reflection *refl, UnitCell *cell,
struct detgeom_panel *p);