diff --git a/image_analysis/structure_refinement/RefinementGPU.cpp b/image_analysis/structure_refinement/RefinementGPU.cpp index 9dd72df01..dc886f577 100644 --- a/image_analysis/structure_refinement/RefinementGPU.cpp +++ b/image_analysis/structure_refinement/RefinementGPU.cpp @@ -287,6 +287,7 @@ private: dc.grid.unit_cell = cell_; dc.grid.spacegroup = &sg_; dc.blur = blur; + dc.cutoff = REFINEMENT_DENSITY_CUTOFF; return dc; } diff --git a/image_analysis/structure_refinement/RefinementXray.cpp b/image_analysis/structure_refinement/RefinementXray.cpp index b3a014843..faba0a11d 100644 --- a/image_analysis/structure_refinement/RefinementXray.cpp +++ b/image_analysis/structure_refinement/RefinementXray.cpp @@ -38,6 +38,7 @@ gemmi::DensityCalculator Calculator(const gemmi::UnitCell &cell, c dc.grid.unit_cell = cell; dc.grid.spacegroup = &sg; dc.blur = blur; + dc.cutoff = REFINEMENT_DENSITY_CUTOFF; return dc; } diff --git a/image_analysis/structure_refinement/RefinementXray.h b/image_analysis/structure_refinement/RefinementXray.h index 642a54fe0..d7062afbf 100644 --- a/image_analysis/structure_refinement/RefinementXray.h +++ b/image_analysis/structure_refinement/RefinementXray.h @@ -159,6 +159,10 @@ private: uint64_t nvtx_; }; +// The density an atom is gridded out to, in e/A^3 of its blurred density (DensityCalculator::cutoff, 1e-5 by +// default): the radius of every atom, and with it the gather and the gradient, follow from it. +constexpr float REFINEMENT_DENSITY_CUTOFF = 1e-4f; + // The blur for a model whose smallest B may go as low as b_floor: DensityCalculator's // set_refmac_compatible_blur() for that B, on the refinement grid of d_min. double RefinementBlur(const gemmi::UnitCell &cell, const gemmi::SpaceGroup &sg, double d_min, double b_floor);