From 9bf3eaac8d5172868fc0cc85186a872f5644d201 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Tue, 19 Apr 2016 19:29:43 +0200 Subject: check_hkl: Calculate resolution of reflection with asymmetric indices for both possible and measured reflections Previously, it used whichever indices it found first. This made the resolutions different enough to fall into different bins, and screwed up the completeness (fortunately, rarely). --- src/check_hkl.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/check_hkl.c') diff --git a/src/check_hkl.c b/src/check_hkl.c index def986c9..c7afb6cc 100644 --- a/src/check_hkl.c +++ b/src/check_hkl.c @@ -501,7 +501,8 @@ static void plot_shells(RefList *list, UnitCell *cell, const SymOpList *sym, signed int hs, ks, ls; int bin; - d = 2.0 * resolution(cell, h, k, l); + get_asymm(sym, h, k, l, &hs, &ks, &ls); + d = 2.0 * resolution(cell, hs, ks, ls); if ( forbidden_reflection(cell, h, k, l) ) continue; @@ -514,7 +515,6 @@ static void plot_shells(RefList *list, UnitCell *cell, const SymOpList *sym, } if ( bin == -1 ) continue; - get_asymm(sym, h, k, l, &hs, &ks, &ls); if ( find_refl(counted, hs, ks, ls) != NULL ) continue; add_refl(counted, hs, ks, ls); @@ -530,7 +530,7 @@ static void plot_shells(RefList *list, UnitCell *cell, const SymOpList *sym, refl != NULL; refl = next_refl(refl, iter) ) { - signed int h, k, l; + signed int h, k, l, hs, ks, ls; double d, val, esd; int bin; int j; @@ -538,7 +538,8 @@ static void plot_shells(RefList *list, UnitCell *cell, const SymOpList *sym, get_indices(refl, &h, &k, &l); if ( forbidden_reflection(cell, h, k, l) ) continue; - d = resolution(cell, h, k, l) * 2.0; + get_asymm(sym, h, k, l, &hs, &ks, &ls); + d = resolution(cell, hs, ks, ls) * 2.0; val = get_intensity(refl); esd = get_esd_intensity(refl); -- cgit v1.2.3