20 template<
typename T =
void>
26 std::vector<double> vec{0.6121701794, 0.1207577838, 0.1690697568, 0.3017894523, 0.4360590181};
32 std::vector<float> vec{0.61217f, 0.12076f,0.16907f,0.30179f,0.43606f};
38 std::vector<std::complex<double>> vec{{0.6121701794, 0.1207577838}, {0.1690697568, 0.3017894523}};
44 std::vector<std::complex<float>> vec{{0.61217f, 0.12076f},{0.16907f,0.30179f}};
54 std::vector<T> rng_vector(5, 0.0);
57 for (
int i = 0; i <
n; ++i)
62 checkArray(rng_vector.data(), ref::vec.data(), 5);
73 std::vector<T> rng_vector(5);
75 std::vector<T> reference{0.120758, 0.301789, 0.853906, 0.297716, 0.377862};
77 for (
int i = 0; i <
n; ++i)
82 checkArray(rng_vector.data(), ref::vec.data(), 5);
93 std::vector<T> rng_vector = rng_for_test.
getRngVec(5);
94 std::vector<T> reference{0.120758, 0.301789, 0.853906, 0.297716, 0.377862};
96 for (
int i = 0; i <
n; ++i)
101 checkArray(rng_vector.data(), ref::vec.data(), 5);
113 std::vector<T> rng_vector(2);
116 for (
int i = 0; i <
n; ++i)
118 CHECK(
A[i] == ComplexApprox(
B[i]));
121 checkArray(rng_vector.data(), ref::vec.data(), 2);
134 std::vector<T> rng_vector(2);
137 for (
int i = 0; i <
n; ++i)
139 CHECK(
A[i] == ComplexApprox(
B[i]));
142 checkArray(rng_vector.data(), ref::vec.data(), 2);
158 for (
int i = 0; i <
n; ++i)
160 CHECK(
A[i] == ComplexApprox(
B[i]));
163 checkArray(rng_vector.data(), ref::vec.data(), 2);
167 TEST_CASE(
"RandomForTest_fillBufferRng_real",
"[utilities][for_testing]")
175 TEST_CASE(
"RandomForTest_fillVectorRngReal",
"[utilities][for_testing]")
183 TEST_CASE(
"RandomForTest_getVecRngReal",
"[utilities][for_testing]")
191 TEST_CASE(
"RandomForTest_fillBufferRngComplex",
"[utilities][for_testing]")
199 TEST_CASE(
"RandomForTest_fillVecRngComplex",
"[utilities][for_testing]")
207 TEST_CASE(
"RandomForTest_getVecRngComplex",
"[utilities][for_testing]")
216 TEST_CASE(
"RandomForTest_call_operator",
"[utilities][for_testing]")
219 double test = rng_for_test();
220 CHECK(test == Approx(0.6121701794));
helper functions for EinsplineSetBuilder
typename T::value_type VT
std::vector< std::complex< VT > > getRngVecComplex(int ncount)
void fillBufferRng(VT *rng_reals, size_t number)
Get a known sequence of random numbers for testing.
TEST_CASE("complex_helper", "[type_traits]")
typename T::value_type VT
void fillVecRng(std::vector< VT > &rng_reals)
std::vector< VT > getRngVec(int ncount)
CHECK(log_values[0]==ComplexApprox(std::complex< double >{ 5.603777579195571, -6.1586603331188225 }))
typename T::value_type VT
double B(double x, int k, int i, const std::vector< double > &t)
QMCTraits::FullPrecRealType value_type