aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-09-15 17:16:39 +0200
committerThomas White <taw@physics.org>2023-09-18 17:13:15 +0200
commit322af5ff0c94d69cef972be9e87df6697d9d7679 (patch)
treef6d2b1813a5add7aead1d682801463f19182cb53 /libcrystfel
parente720290743e536e8c05695d22c939cf433055336 (diff)
Use a*a instead of pow(a, 2)
Diffstat (limited to 'libcrystfel')
-rw-r--r--libcrystfel/src/predict-refine.c6
-rw-r--r--libcrystfel/src/utils.h5
2 files changed, 8 insertions, 3 deletions
diff --git a/libcrystfel/src/predict-refine.c b/libcrystfel/src/predict-refine.c
index ae638025..6ef59d44 100644
--- a/libcrystfel/src/predict-refine.c
+++ b/libcrystfel/src/predict-refine.c
@@ -770,9 +770,9 @@ static double pred_residual(struct reflpeak *rps, int n, struct detgeom *det,
res_fs = 0.0;
res_ss = 0.0;
for ( i=0; i<n; i++ ) {
- res_r += pow(r_dev(&rps[i]), 2.0);
- res_fs += pow(fs_dev(&rps[i], det), 2.0);
- res_ss += pow(ss_dev(&rps[i], det), 2.0);
+ res_r += sq(r_dev(&rps[i]));
+ res_fs += sq(fs_dev(&rps[i], det));
+ res_ss += sq(ss_dev(&rps[i], det));
}
if ( pres_r != NULL ) *pres_r = res_r;
diff --git a/libcrystfel/src/utils.h b/libcrystfel/src/utils.h
index 67940ad4..3a228b22 100644
--- a/libcrystfel/src/utils.h
+++ b/libcrystfel/src/utils.h
@@ -105,6 +105,11 @@ extern double flat_noise(gsl_rng *rng, double expected, double width);
extern double gaussian_noise(gsl_rng *rng, double expected, double stddev);
extern int poisson_noise(gsl_rng *rng, double expected);
+static inline double sq(double a)
+{
+ return a*a;
+}
+
static inline double distance(double x1, double y1, double x2, double y2)
{
return sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1));