From 067f84342e356cab6a64630ddd3c234ba6ac603d Mon Sep 17 00:00:00 2001 From: Thomas White Date: Sat, 18 Sep 2010 23:05:56 +0200 Subject: Set rounding mode, use lrint() instead of rint() --- src/peaks.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/peaks.c') diff --git a/src/peaks.c b/src/peaks.c index 229037f7..fdf5b961 100644 --- a/src/peaks.c +++ b/src/peaks.c @@ -21,6 +21,7 @@ #include #include #include +#include #include "image.h" #include "utils.h" @@ -464,6 +465,7 @@ int find_projected_peaks(struct image *image, UnitCell *cell) cell_get_cartesian(cell, &ax, &ay, &az, &bx, &by, &bz, &cx, &cy, &cz); + fesetround(1); /* Round towards nearest */ for ( x=0; xwidth; x++ ) { for ( y=0; yheight; y++ ) { @@ -481,9 +483,9 @@ int find_projected_peaks(struct image *image, UnitCell *cell) kd = q.u * bx + q.v * by + q.w * bz; ld = q.u * cx + q.v * cy + q.w * cz; - h = (signed int)rint(hd); - k = (signed int)rint(kd); - l = (signed int)rint(ld); + h = lrint(hd); + k = lrint(kd); + l = lrint(ld); dh = hd - h; dk = kd - k; -- cgit v1.2.3