diff options
-rw-r--r-- | libcrystfel/src/predict-refine.c | 6 | ||||
-rw-r--r-- | libcrystfel/src/utils.h | 5 |
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)); |