27 #ifdef _LOW_MEMORY_STRUCTS_
33 using uint_t =
unsigned short;
46 #ifdef _LOW_MEMORY_STRUCTS_
47 return std::fmaf(x, y, z);
49 return std::fma(x, y, z);
59 constexpr
static const double Unity_D = 1.;
60 constexpr
static const float Unity_F = 1.;
61 #ifdef _LOW_MEMORY_STRUCTS_
66 constexpr
static const double Zero_D = 0.;
67 constexpr
static const float Zero_F = 0.;
68 #ifdef _LOW_MEMORY_STRUCTS_
96 #define _noexcept_ noexcept
105 #if defined(__GNUC__)
106 #define _restrict_ __restrict__
116 #define _TH2PolyOverflowBins_ 9
126 #define _MaCh3_Safe_Include_Start_ \
127 _Pragma("GCC diagnostic push") \
128 _Pragma("GCC diagnostic ignored \"-Wuseless-cast\"") \
129 _Pragma("GCC diagnostic ignored \"-Wfloat-conversion\"") \
130 _Pragma("GCC diagnostic ignored \"-Wold-style-cast\"") \
131 _Pragma("GCC diagnostic ignored \"-Wformat-nonliteral\"") \
132 _Pragma("GCC diagnostic ignored \"-Wswitch-enum\"") \
133 _Pragma("GCC diagnostic ignored \"-Wconversion\"") \
134 _Pragma("GCC diagnostic ignored \"-Wshadow\"") \
135 _Pragma("GCC diagnostic ignored \"-Wsuggest-override\"")
136 #if defined(__GNUC__) && __GNUC__ >= 13
137 _Pragma(
"GCC diagnostic ignored \"-Wdangling-reference\"")
140 #define _MaCh3_Safe_Include_End_ \
141 _Pragma("GCC diagnostic pop")
144 #if defined(__clang__) || defined(__INTEL_LLVM_COMPILER)
145 #undef _MaCh3_Safe_Include_Start_
146 #define _MaCh3_Safe_Include_Start_ \
147 _Pragma("clang diagnostic push") \
148 _Pragma("clang diagnostic ignored \"-Wfloat-conversion\"") \
149 _Pragma("clang diagnostic ignored \"-Wold-style-cast\"") \
150 _Pragma("clang diagnostic ignored \"-Wformat-nonliteral\"") \
151 _Pragma("clang diagnostic ignored \"-Wswitch-enum\"") \
152 _Pragma("clang diagnostic ignored \"-Wconversion\"") \
153 _Pragma("clang diagnostic ignored \"-Wshadow\"") \
154 _Pragma("clang diagnostic ignored \"-Wdeprecated-literal-operator\"") \
155 _Pragma("clang diagnostic ignored \"-Wsuggest-override\"")
156 #undef _MaCh3_Safe_Include_End_
157 #define _MaCh3_Safe_Include_End_ \
158 _Pragma("clang diagnostic pop")
Main namespace for MaCh3 software.
constexpr static const double DefSplineKnotUpBound
Default value for spline knot capping, default mean not capping is being applied.
constexpr static const double _LARGE_LOGL_
Large Likelihood is used it parameter go out of physical boundary, this indicates in MCMC that such s...
constexpr static const double _BAD_DOUBLE_
Default value used for double initialisation.
constexpr static const double Zero_D
constexpr static const double DefSplineKnotLowBound
Default value for spline knot capping, default mean not capping is being applied.
constexpr static const float Unity_F
constexpr static const double KinematicLowBound
When parameter has no bound this serves as it. Lowest possible value the system.
constexpr static const char * float_t_str_repr
constexpr static const double KinematicUpBound
When parameter has no bound this serves as it. Highest possible value the system.
constexpr static const float_t Unity
constexpr static const float_t Zero
constexpr static const int UnderOverFlowBin
Mark bin which is overflow or underflow in MaCh3 binning.
constexpr static const int _BAD_INT_
Default value used for int initialisation.
constexpr static const float Zero_F
constexpr T fmaf_t(T x, T y, T z)
Function template for fused multiply-add.
constexpr static const double _LOW_MC_BOUND_
MC prediction lower bound in bin to identify problematic binning definitions and handle LogL calculat...
constexpr static const double _DEFAULT_RETURN_VAL_
constexpr static const double Unity_D
Some commonly used variables to which we set pointers to.