/** * Returns a random number from the distribution. */ public static double staticNextDouble(double alpha, double beta) { synchronized (shared) { return shared.nextDouble(alpha, beta); } }
/** * Constructs a Beta distribution. */ public Beta(double alpha, double beta, DoubleRandomEngine randomGenerator) { setRandomGenerator(randomGenerator); setState(alpha, beta); }
if (a > 1.0) { if (b > 1.0) return (b1prs(a, b, randomGenerator)); if (b < 1.0) return (1.0 - b01(b, a, randomGenerator)); if (b == 1.0) { return (Math.exp(Math.log(randomGenerator.raw()) / a)); return (b01(a, b, randomGenerator)); if (b < 1.0) return (b00(a, b, randomGenerator)); if (b == 1.0) { return (Math.exp(Math.log(randomGenerator.raw()) / a));
/** * Sets the uniform random number generated shared by all <b>static</b> * methods. * * @param randomGenerator * the new uniform random number generator to be shared. */ private static void xstaticSetRandomGenerator(DoubleRandomEngine randomGenerator) { synchronized (shared) { shared.setRandomGenerator(randomGenerator); } } }
Dl = D; f1 = f(x1, a, b, m); ll = x1 * (1.0 - x1) / (s * (m - x1)); // z1 = x1 - ll f2 = f(x2, a, b, m); D = x4 - m; f5 = f(x5, a, b, m); lr = x5 * (1.0 - x5) / (s * (x5 - m)); // z5 = x5 + lr f4 = f(x4, a, b, m); return (Y); if (V <= f(Y, a, b, m)) return (Y); return (Y); if (V <= f(Y, a, b, m)) return (Y);
if (a > 1.0) { if (b > 1.0) return (b1prs(a, b, randomGenerator)); if (b < 1.0) return (1.0 - b01(b, a, randomGenerator)); if (b == 1.0) { return (Math.exp(Math.log(randomGenerator.raw()) / a)); return (b01(a, b, randomGenerator)); if (b < 1.0) return (b00(a, b, randomGenerator)); if (b == 1.0) { return (Math.exp(Math.log(randomGenerator.raw()) / a));
/** * Sets the uniform random number generated shared by all <b>static</b> * methods. * * @param randomGenerator * the new uniform random number generator to be shared. */ private static void xstaticSetRandomGenerator(DoubleRandomEngine randomGenerator) { synchronized (shared) { shared.setRandomGenerator(randomGenerator); } } }
Dl = D; f1 = f(x1, a, b, m); ll = x1 * (1.0 - x1) / (s * (m - x1)); // z1 = x1 - ll f2 = f(x2, a, b, m); D = x4 - m; f5 = f(x5, a, b, m); lr = x5 * (1.0 - x5) / (s * (x5 - m)); // z5 = x5 + lr f4 = f(x4, a, b, m); return (Y); if (V <= f(Y, a, b, m)) return (Y); return (Y); if (V <= f(Y, a, b, m)) return (Y);
/** * Constructs a Beta distribution. */ public Beta(double alpha, double beta, DoubleRandomEngine randomGenerator) { setRandomGenerator(randomGenerator); setState(alpha, beta); }
/** * Returns a random number from the distribution. */ public static double staticNextDouble(double alpha, double beta) { synchronized (shared) { return shared.nextDouble(alpha, beta); } }