- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
%% Generates a Normal-distributed random variable using Box-Muller method
%% from: https://github.com/basho/basho_stats/blob/develop/src/basho_stats_rv.erl
-spec rnd_normal(integer(), integer()) -> non_neg_integer().
rnd_normal(Mean, Sigma) ->
Rv1 = random:uniform(),
Rv2 = random:uniform(),
Rho = math:sqrt(-2 * math:log(1-Rv2)),
abs(trunc(Rho * math:cos(2 * math:pi() * Rv1) * Sigma + Mean)).
А что с ним? Вроде похоже на формулу с википедии.
> Normal-distributed random variable
Что-то тут ня так...
Правда в отличие от питона, аннотации типов действительно статически проверяются.
-подобную дичь.
Что-то мне это няпоминает... А, точня!
auto foo(T A) -> std::enable_if_t<std::is_integral<T>> {}
Какой ордеринг )))