From eac6ae7c88b6f74a7a9e5fc19796b897ad6ff630 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Wed, 2 Feb 2011 22:56:21 +0100 Subject: Decide once only on which reflections are scalable --- src/hrs-scaling.c | 29 +++++++++++++++++++++++------ src/image.h | 2 ++ 2 files changed, 25 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/hrs-scaling.c b/src/hrs-scaling.c index d0e0d589..809298a7 100644 --- a/src/hrs-scaling.c +++ b/src/hrs-scaling.c @@ -52,8 +52,8 @@ static double s_uha(signed int hat, signed int kat, signed int lat, double ic, sigi; signed int ha, ka, la; - if ( !spots[hi].valid ) continue; - if ( spots[hi].p < 0.1 ) continue; + if ( !spots[hi].scalable ) continue; + get_asymm(spots[hi].h, spots[hi].k, spots[hi].l, &ha, &ka, &la, sym); if ( ha != hat ) continue; @@ -92,8 +92,8 @@ static double s_vha(signed int hat, signed int kat, signed int lat, double ic, sigi; signed int ha, ka, la; - if ( !spots[hi].valid ) continue; - if ( spots[hi].p < 0.1 ) continue; + if ( !spots[hi].scalable ) continue; + get_asymm(spots[hi].h, spots[hi].k, spots[hi].l, &ha, &ka, &la, sym); if ( ha != hat ) continue; @@ -303,8 +303,7 @@ static double *lsq_intensities(struct image *images, int n, signed int ha, ka, la; - if ( !images[m].cpeaks[a].valid ) continue; - if ( images[m].cpeaks[a].p < 0.1 ) continue; + if ( !images[m].cpeaks[a].scalable ) continue; /* Correct reflection? */ get_asymm(images[m].cpeaks[a].h, @@ -362,6 +361,24 @@ double *scale_intensities(struct image *images, int n, const char *sym, /* Start with all scale factors equal */ for ( m=0; m