diff options
author | Thomas White <taw@bitwiz.org.uk> | 2010-03-27 20:10:12 +0100 |
---|---|---|
committer | Thomas White <taw@bitwiz.org.uk> | 2010-03-27 20:10:12 +0100 |
commit | f15dc3d8b88c7a4a7054309fbcd5756de8a7fc0b (patch) | |
tree | f78389a5984861e3007d75fab4574eb561a27017 /src/diffraction-gpu.c | |
parent | bdd2a7b4a8a5456a023d54be6fd5d6a011314c7e (diff) |
Make it obvious, when using GPU simulation, if a required reflection is unavailable
Diffstat (limited to 'src/diffraction-gpu.c')
-rw-r--r-- | src/diffraction-gpu.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/diffraction-gpu.c b/src/diffraction-gpu.c index e142035d..91d6334f 100644 --- a/src/diffraction-gpu.c +++ b/src/diffraction-gpu.c @@ -342,7 +342,7 @@ void get_diffraction_gpu(struct gpu_context *gctx, struct image *image, /* Setup the OpenCL stuff, create buffers, load the structure factor table */ struct gpu_context *setup_gpu(int no_sfac, struct image *image, - double *intensities) + double *intensities, unsigned int *counts) { struct gpu_context *gctx; cl_uint nplat; @@ -403,7 +403,11 @@ struct gpu_context *setup_gpu(int no_sfac, struct image *image, intensities_ptr = malloc(intensities_size); if ( intensities != NULL ) { for ( i=0; i<IDIM*IDIM*IDIM; i++ ) { - intensities_ptr[i] = intensities[i]; + if ( counts[i] == 1 ) { + intensities_ptr[i] = intensities[i]; + } else { + intensities_ptr[i] = 1.0e20; + } } } else { for ( i=0; i<IDIM*IDIM*IDIM; i++ ) { |