small reorg, comment purpose of functions

This commit is contained in:
NunoSempere 2023-07-22 19:24:00 +02:00
parent 04070a934e
commit 36249ebf39

View File

@ -28,6 +28,7 @@ uint32_t xorshift32(uint32_t* seed)
}
// Distribution & sampling functions
// Unit distributions
float sample_unit_uniform(uint32_t* seed)
{
// samples uniform from [0,1] interval.
@ -43,11 +44,13 @@ float sample_unit_normal(uint32_t* seed)
return z;
}
// Composite distributions
float sample_uniform(float from, float to, uint32_t* seed)
{
return sample_unit_uniform(seed) * (to - from) + from;
}
float sample_normal(float mean, float sigma, uint32_t* seed)
{
return (mean + sigma * sample_unit_normal(seed));
@ -60,6 +63,9 @@ float sample_lognormal(float logmean, float logsigma, uint32_t* seed)
float sample_to(float low, float high, uint32_t* seed)
{
// Given a (positive) 90% confidence interval,
// returns a sample from a lognormal
// with a matching 90% c.i.
const float NORMAL95CONFIDENCE = 1.6448536269514722;
float loglow = logf(low);
float loghigh = logf(high);