// SPDX-FileCopyrightText: 2025 Filip Leonarski, Paul Scherrer Institute // SPDX-License-Identifier: GPL-3.0-only #ifndef JFJOCH_RESOLUTIONSHELLS_H #define JFJOCH_RESOLUTIONSHELLS_H #include #include #include class ResolutionShells { const float d_min, d_max; const float one_over_dmin2, one_over_dmax2; const int32_t nshells; public: ResolutionShells(float d_min, float d_max, int32_t nshells); [[nodiscard]] std::optional GetShell(float d) const; [[nodiscard]] std::vector GetShellMeanOneOverResSq() const; [[nodiscard]] std::vector GetShellMinRes() const; }; #endif //JFJOCH_RESOLUTIONSHELLS_H