ndevenish / miniapp

0 stars 1 forks source link

Spotfinder (GPU and Standalone) missing reflections #9

Open dimitrivlachos opened 3 weeks ago

dimitrivlachos commented 3 weeks ago

Even though the standalone spotfinder is meant to directly emulate what is done in dials, it does not always produce the same results. Since this is what has been used to validate the GPU spotfinder, this, too, deviates from DIALS proper.

For example, in /dls/i03/data/2024/cm37235-2/xraycentring/TestInsulin/ins_14/ins_14_24.nxs : image 3, DIALS finds multiple spots within the 4-40Å range, but both the standalone and GPU-based spotfinders do not.

dimitrivlachos commented 3 weeks ago

GPU Spotfinder:

image_00002 vs.

DIALS find_spots:

image

graeme-winter commented 3 weeks ago

I believe that this code performs the same algorithm as dials.find_spots algorithm=dispersion for the signal filtering:

https://gist.github.com/graeme-winter/16c5877e6ecde1f9a4130562ef7580a0

dimitrivlachos commented 3 weeks ago

I believe that this code performs the same algorithm as dials.find_spots algorithm=dispersion for the signal filtering:

https://gist.github.com/graeme-winter/16c5877e6ecde1f9a4130562ef7580a0

Yes, the DIALS processing was done with: dials.find_spots imported.expt disable_parallax_correction=True algorithm=dispersion d_min=4 d_max=40