summaryrefslogtreecommitdiffhomepage
path: root/docs/crandom_api.md
diff options
context:
space:
mode:
authorTyge Løvset <[email protected]>2020-12-05 15:10:52 +0100
committerTyge Løvset <[email protected]>2020-12-05 15:10:52 +0100
commit17196445c8e3b0186d61abfa04cf97529233b1a2 (patch)
tree7e1bcaec45c4dde00c272857038c945fe0a97d86 /docs/crandom_api.md
parent029441f7b9128e7aeb5af3ba629287c9a709b19a (diff)
downloadSTC-modified-17196445c8e3b0186d61abfa04cf97529233b1a2.tar.gz
STC-modified-17196445c8e3b0186d61abfa04cf97529233b1a2.zip
Some text improvements. Renamed method c_default_hash16 to c_default_hash.
Diffstat (limited to 'docs/crandom_api.md')
-rw-r--r--docs/crandom_api.md49
1 files changed, 25 insertions, 24 deletions
diff --git a/docs/crandom_api.md b/docs/crandom_api.md
index 2cb3c586..d31f19c8 100644
--- a/docs/crandom_api.md
+++ b/docs/crandom_api.md
@@ -25,33 +25,34 @@ All cstr definitions and prototypes may be included in your C source file by inc
## Methods
```c
-(1) crand_rng32_t crand_rng32_init(uint64_t seed);
-(2) crand_rng32_t crand_rng32_with_seq(uint64_t seed, uint64_t seq);
-(3) uint32_t crand_i32(crand_rng32_t* rng);
-(4) float crand_f32(crand_rng32_t* rng);
-(5) crand_uniform_i32_t crand_uniform_i32_init(int32_t low, int32_t high);
-(6) int32_t crand_uniform_i32(crand_rng32_t* rng, crand_uniform_i32_t* dist);
-(7) uint32_t crand_unbiased_i32(crand_rng32_t* rng, crand_uniform_i32_t* dist);
-(8) crand_uniform_f32_t crand_uniform_f32_init(float low, float high); /* */
-(9) float crand_uniform_f32(crand_rng32_t* rng, crand_uniform_f32_t* dist);
+ 1) crand_rng32_t crand_rng32_init(uint64_t seed);
+ 2) crand_rng32_t crand_rng32_with_seq(uint64_t seed, uint64_t seq);
+ 3) uint32_t crand_i32(crand_rng32_t* rng);
+ 4) float crand_f32(crand_rng32_t* rng);
+ 5) crand_uniform_i32_t crand_uniform_i32_init(int32_t low, int32_t high);
+ 6) int32_t crand_uniform_i32(crand_rng32_t* rng, crand_uniform_i32_t* dist);
+ 7) uint32_t crand_unbiased_i32(crand_rng32_t* rng, crand_uniform_i32_t* dist);
+ 8) crand_uniform_f32_t crand_uniform_f32_init(float low, float high); /* */
+ 9) float crand_uniform_f32(crand_rng32_t* rng, crand_uniform_f32_t* dist);
```
-(1-2) PRNG 32-bit engine initializers. (3) Integer random number generator with range \[0, 2^32). (5) Integer generator with range \[low, high].
-(7) Unbiased version, see https://github.com/lemire/fastrange. (8) 32-bit float random number in range \[low, high), 23 bits resolution numbers.
+`1-2)` PRNG 32-bit engine initializers. `3)` Integer RNG with range \[0, 2^32). `4)` Float RNG with range \[0, 1).
+`5-6)` Uniform integer RNG with range \[`low`, `high`]. `7)` Unbiased version, see https://github.com/lemire/fastrange.
+`8-9)` Uniform float RNG with range \[`low`, `high`).
```c
-(1) crand_rng64_t crand_rng64_with_seq(uint64_t seed, uint64_t seq);
-(2) crand_rng64_t crand_rng64_init(uint64_t seed);
-(3) uint64_t crand_i64(crand_rng64_t* rng);
-(4) double crand_f64(crand_rng64_t* rng);
-(5) crand_uniform_i64_t crand_uniform_i64_init(int64_t low, int64_t high);
-(6) int64_t crand_uniform_i64(crand_rng64_t* rng, crand_uniform_i64_t* dist);
-(7) crand_uniform_f64_t crand_uniform_f64_init(double low, double high);
-(8) double crand_uniform_f64(crand_rng64_t* rng, crand_uniform_f64_t* dist);
-(9) crand_normal_f64_t crand_normal_f64_init(double mean, double stddev);
-(10) double crand_normal_f64(crand_rng64_t* rng, crand_normal_f64_t* dist);
+ 1) crand_rng64_t crand_rng64_with_seq(uint64_t seed, uint64_t seq);
+ 2) crand_rng64_t crand_rng64_init(uint64_t seed);
+ 3) uint64_t crand_i64(crand_rng64_t* rng);
+ 4) double crand_f64(crand_rng64_t* rng);
+ 5) crand_uniform_i64_t crand_uniform_i64_init(int64_t low, int64_t high);
+ 6) int64_t crand_uniform_i64(crand_rng64_t* rng, crand_uniform_i64_t* dist);
+ 7) crand_uniform_f64_t crand_uniform_f64_init(double low, double high);
+ 8) double crand_uniform_f64(crand_rng64_t* rng, crand_uniform_f64_t* dist);
+ 9) crand_normal_f64_t crand_normal_f64_init(double mean, double stddev);
+10) double crand_normal_f64(crand_rng64_t* rng, crand_normal_f64_t* dist);
```
-(1-2) PRNG 64-bit engine initializers. (3) Integer generator, range \[0, 2^64),
-(4) 64-bit float random numbers, 52 bit resolution. (5-8) Initializers and generators of uniform random numbers. (5) has range \[low, high].
-(7) has range \[low, high). (9-10) Initializer and generator for normal-distributed random numbers.
+`1-2)` PRNG 64-bit engine initializers. `3)` Integer generator, range \[0, 2^64). `4)` Double RNG with range \[0, 1).
+`5-6)` Uniform integer RNG with range \[`low`, `high`]. `7-8)` Uniform double RNG with range \[`low`, `high`).
+`9-10)` Normal-distributed double RNG with range [`mean`-`stddev`, `mean`+`stddev`].
The method `crand_i64(crand_rng64_t* rng)` is an extremely fast PRNG suited for parallel usage, featuring
a Weyl-sequence as part of the state. It is faster than *sfc64*, *wyhash64*, *pcg*, and the *xoroshiro*