time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

generators.js (1303B)


      1 export const generateFloatRange = (min, max) => Math.random() * (max - min) + min;
      2 export const generateIntRange = (min, max) => Math.floor(generateFloatRange(min, max));
      3 export const generateIntMin = (min) => generateIntRange(min, 100);
      4 export const generateInt = () => generateIntMin(-100);
      5 const generatePositiveInt = () => generateIntMin(1);
      6 export const generateNormal = () => `normal(${generateInt()}, ${generatePositiveInt()})`;
      7 export const generateBeta = () => `beta(${generatePositiveInt()}, ${generatePositiveInt()})`;
      8 export const generateLognormal = () => `lognormal(${generateInt()}, ${generatePositiveInt()})`;
      9 export const generateExponential = () => `exponential(${generatePositiveInt()})`;
     10 export const generateUniform = () => {
     11     const a = generateInt();
     12     const b = generateIntMin(a + 1);
     13     return `uniform(${a}, ${b})`;
     14 };
     15 export const generateTriangular = () => {
     16     const a = generateInt();
     17     const b = generateIntMin(a + 1);
     18     const c = generateIntMin(b + 1);
     19     return `triangular(${a}, ${b}, ${c})`;
     20 };
     21 export const distributions = {
     22     normal: generateNormal,
     23     beta: generateBeta,
     24     lognormal: generateLognormal,
     25     exponential: generateExponential,
     26     triangular: generateTriangular,
     27     uniform: generateUniform,
     28 };
     29 //# sourceMappingURL=generators.js.map