1 #ifndef HOPS_CHORDSTEPDISTRIBUTIONS_HPP
2 #define HOPS_CHORDSTEPDISTRIBUTIONS_HPP
4 #include "../../RandomNumberGenerator/RandomNumberGenerator.hpp"
10 template<
typename RealType =
double>
14 typename std::uniform_real_distribution<RealType>::param_type params(lowerLimit, upperLimit);
15 return uniformRealDistribution(randomNumberGenerator, params);
23 std::uniform_real_distribution<RealType> uniformRealDistribution;
26 template<
typename RealType =
double>
30 RealType upperLimit) {
31 return truncatedNormalDistribution(randomNumberGenerator, {stepSize, lowerLimit, upperLimit});
37 RealType upperLimit) {
38 return truncatedNormalDistribution(randomNumberGenerator, {m_sigma, lowerLimit, upperLimit});
46 stepSize = newStepSize;
50 return truncatedNormalDistribution.inverseNormalization({m_sigma, m_lowerBound, m_upperBound});
54 return truncatedNormalDistribution.probabilityDensity(x, m_sigma, m_lowerBound, m_upperBound);
58 RealType stepSize = 1.;
63 #endif //HOPS_CHORDSTEPDISTRIBUTIONS_HPP