1#ifndef SCRAN_TESTS_SIMULATE_VECTOR_HPP
2#define SCRAN_TESTS_SIMULATE_VECTOR_HPP
21template<
typename Type_ =
double>
27 if constexpr(std::is_unsigned<Type_>::value) {
54 uint64_t
seed = 1234567890;
68template<
typename Type_ =
double>
70 std::mt19937_64 rng(params.
seed);
72 typename std::conditional<
73 std::is_floating_point<Type_>::value,
74 std::uniform_real_distribution<Type_>,
75 std::uniform_int_distribution<Type_>
78 std::vector<Type_> values(length);
81 for (
auto& v : values) {
85 std::uniform_real_distribution<double> nonzero(0.0, 1.0);
86 for (
auto& v : values) {
87 if (nonzero(rng) < params.
density) {
Test utilites for libscran.
Definition compare_almost_equal.hpp:11
std::vector< Type_ > simulate_vector(size_t length, const SimulationParameters< Type_ > ¶ms)
Definition simulate_vector.hpp:69
Parameters for simulate_vector().
Definition simulate_vector.hpp:22
double density
Definition simulate_vector.hpp:38
Type_ upper
Definition simulate_vector.hpp:49
uint64_t seed
Definition simulate_vector.hpp:54
Type_ lower
Definition simulate_vector.hpp:44