View source code
Display the source code in std/random.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Function std.random.uniformDistribution
Generates a uniform probability distribution of size n
, i.e., an
array of size n
of positive numbers of type F
that sum to
1
. If useThis
is provided, it is used as storage.
F[] uniformDistribution(F)
(
size_t n,
F[] useThis = null
)
if (isFloatingPoint!F);
Example
import std .algorithm .iteration : reduce;
import std .math : approxEqual;
auto a = uniformDistribution(5);
writeln(a .length); // 5
assert(approxEqual(reduce!"a + b"(a), 1));
a = uniformDistribution(10, a);
writeln(a .length); // 10
assert(approxEqual(reduce!"a + b"(a), 1));
Authors
Andrei Alexandrescu Masahiro Nakagawa (Xorshift random generator) Joseph Rushton Wakeling (Algorithm D for random sampling) Ilya Yaroshenko (Mersenne Twister implementation, adapted from mir-random)
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.