lumiera_/wiki
Ichthyostega bdb2f12b80 Library: RandomDraw - use dynamic quantiser
For sake of simplicity, since this whole exercise is a byproduct,
the mapping calculations are done in doubles. To get even distribution
of values and a good randomisation, it is thus necessary to break
down the size_t hash value in a first step (size_t can be 64bit
and random numbers would be subject to rounding errors otherwise)

The choice of this quantiser is tricky; it must be a power of two
to guarantee even distribution, and if chosen to close to the grid
of the result values, with lower probabilities we'd fail to cover
some of the possible result values.  If chosen to large, then
of course we'd run danger of producing correlated numbers on
consecutive picks.

Attempting to use 4 bits of headroom above the log-2 of the
required value range. For example, 10-step values would use
a quantiser of 128, which looks like a good compromise.
The following tests will show how good this choice holds up.
2023-11-21 19:50:22 +01:00
..
draw Job-Planning: new draft - organise the overall planning process 2023-04-17 04:51:38 +02:00
DIR_INFO update some DIR_INFO entries 2011-04-05 00:44:30 +02:00
empty.html TiddlyWiki: bugfix for Firefox Quantum -- use HTML5 web storage instead of a Cookie 2018-10-20 02:07:10 +02:00
InterfaceConcept_Varga.mm Lumiera GUI thoughts -- Mindmap to complement the Interface concept PDF 2015-04-26 23:22:42 +02:00
renderengine.html Scheduler: processing of peak loads works 2023-11-01 04:24:44 +01:00
thinkPad.ichthyo.mm Library: RandomDraw - use dynamic quantiser 2023-11-21 19:50:22 +01:00
uml better use doc/devel/uml... 2007-06-21 02:57:49 +02:00
workflow.mm DOC: expand concept map 2014-10-25 01:56:44 +02:00