Generates rationals in (0, 1]
| 16 | |
| 17 | // Generates rationals in (0, 1] |
| 18 | static float getFloat01(uint num) { |
| 19 | // Conversion to floats adapted from Random123 |
| 20 | constexpr float factor = |
| 21 | ((1.0f) / |
| 22 | (static_cast<float>(std::numeric_limits<unsigned int>::max()) + |
| 23 | (1.0f))); |
| 24 | constexpr float half_factor = ((0.5f) * factor); |
| 25 | |
| 26 | return sycl::fma(static_cast<float>(num), factor, half_factor); |
| 27 | } |
| 28 | |
| 29 | // Generates rationals in (-1, 1] |
| 30 | static float getFloatNegative11(uint num) { |
no test coverage detected