3#ifndef cMHN_UTILITY_GENERATE_THETA_H
4#define cMHN_UTILITY_GENERATE_THETA_H
36 template<pRC::Size D,
class T = pRC::Float<>>
38 pRC::Float<> const &fullness = 0.5,
T const &diagonalMean = -2,
39 T const &diagonalStd = 2,
T const &offDiagonalMean = 0,
40 T const &offDiagonalB = 0.75)
50 auto offDiagonalTheta =
55 eval(diagonal(diagonalTheta) + offDiagonal(offDiagonalTheta));
59 auto allowedPlaces = offDiagonal(
65 if(allowedPlaces(i, j) > fullness)
101 template<pRC::Size D,
class T = pRC::Float<>>
103 T const &diagonalMean = -2,
T const &diagonalStd = 2,
104 T const &offDiagonalMean = 0,
T const &offDiagonalB = 0.75)
110 return generateTheta<D>(rng, fullness, diagonalMean, diagonalStd,
111 offDiagonalMean, offDiagonalB);
pRC::Size const D
Definition CalculatePThetaTests.cpp:9
Definition type_traits.hpp:57
Definition type_traits.hpp:41
Definition threefry.hpp:24
Definition calculate_pTheta.hpp:16
static auto generateTheta(pRC::RandomEngine &rng, pRC::Float<> const &fullness=0.5, T const &diagonalMean=-2, T const &diagonalStd=2, T const &offDiagonalMean=0, T const &offDiagonalB=0.75)
Generates a random theta matrix according to given distributions, and with given fullness.
Definition generate_theta.hpp:37
static constexpr auto makeConstantSequence()
Definition sequence.hpp:402
static constexpr auto random(RandomEngine &rng, D &distribution)
Definition random.hpp:12
Size Index
Definition type_traits.hpp:21
static constexpr auto zero()
Definition zero.hpp:12