Package cern.jet.random.engine

Examples of cern.jet.random.engine.RandomEngine.raw()


    } // end set-up

    for (;;) {
      // generate uniform number U -- U(0, p6)                               
      // case distinction corresponding to U                                 
      if ((U = gen.raw() * p6) < p2) {         // centre left     

        // immediate acceptance region R2 = [k2, m) *[0, f2),  X = k2, ... m -1
        if ((V = U - p1) < 0.0return(k2 + (int)(U/f2));
        // immediate acceptance region R1 = [k1, k2)*[0, f1),  X = k1, ... k2-1
        if ((W = V / dl) < f1 return(k1 + (int)(V/f1));
View Full Code Here


        // immediate acceptance region R1 = [k1, k2)*[0, f1),  X = k1, ... k2-1
        if ((W = V / dl) < f1 return(k1 + (int)(V/f1));

        // computation of candidate X < k2, and its counterpart Y > k2         
        // either squeeze-acceptance of X or acceptance-rejection of Y         
        Dk = (int)(dl * gen.raw()) + 1;
        if (W <= f2 - Dk * (f2 - f2/r2)) {            // quick accept of 
          return(k2 - Dk);                          // X = k2 - Dk     
        }
        if ((V = f2 + f2 - W) < 1.0) {                // quick reject of Y
          Y = k2 + Dk;
View Full Code Here

        // immediate acceptance region R4 = [k4+1, k5+1)*[0, f5)               
        if ((W = V / dr) < f5 return(k5 - (int)(V/f5));

        // computation of candidate X > k4, and its counterpart Y < k4         
        // either squeeze-acceptance of X or acceptance-rejection of Y         
        Dk = (int)(dr * gen.raw()) + 1;
        if (W <= f4 - Dk * (f4 - f4*r4)) {             // quick accept of 
          return(k4 + Dk);                           // X = k4 + Dk     
        }
        if ((V = f4 + f4 - W) < 1.0) {                 // quick reject of Y
          Y = k4 - Dk;
View Full Code Here

          if (V <= f(Y, l_my, c_pm))  return(Y);    // final accept of Y
        }
        X = k4 + Dk;
      }
      else {
        W = gen.raw();
        if (U < p5)  {                                  // expon. tail left
          Dk = (int)(1.0 - Math.log(W)/ll);
          if ((X = k1 - Dk) < 0continue;          // 0 <= X <= k1 - 1
          W *= (U - p4) * ll;                        // W -- U(0, h(x)) 
          if (W <= f1 - Dk * (f1 - f1/r1))  return(X); // quick accept of X
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.