You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
16 lines
396 B
16 lines
396 B
|
4 months ago
|
import defaultSource from "./defaultSource.js";
|
||
|
|
|
||
|
|
export default (function sourceRandomPareto(source) {
|
||
|
|
function randomPareto(alpha) {
|
||
|
|
if ((alpha = +alpha) < 0) throw new RangeError("invalid alpha");
|
||
|
|
alpha = 1 / -alpha;
|
||
|
|
return function() {
|
||
|
|
return Math.pow(1 - source(), alpha);
|
||
|
|
};
|
||
|
|
}
|
||
|
|
|
||
|
|
randomPareto.source = sourceRandomPareto;
|
||
|
|
|
||
|
|
return randomPareto;
|
||
|
|
})(defaultSource);
|