Package umontreal.iro.lecuyer.util

Examples of umontreal.iro.lecuyer.util.BitMatrix$IncompatibleDimensionException


      //computes the state transition matrices

      System.out.println("Creating the WELL512 state transition matrices.");

      //the state transition matrices
      BitMatrix STp0, STpw, STpz;

      BitVector[] bv = new BitVector[512];
      WELL512 well;
      int[] vect = new int[R];

      for(int i = 0; i < 512; i++) {
         well = new WELL512(i);

         well.nextValue();
         for(int j = 0; j < R; j++)
            vect[j] = well.state[(well.state_i + j) & MASK];

         bv[i] = new BitVector(vect, 512);
      }

      STp0 = (new BitMatrix(bv)).transpose();

      STpw = STp0.power2e(200);
      STpz = STpw.power2e(150);


      try {
         FileOutputStream fos = new FileOutputStream(args[0]);
View Full Code Here


      //computes the state transition matrices

      System.out.println("Creating the GenF2w32 state transition matrices.");

      //the state transition matrices
      BitMatrix STp0, STpw, STpz;

      BitVector[] bv = new BitVector[800];
      GenF2w32 gen;
      int[] vect = new int[R];

      for(int i = 0; i < 800; i++) {
         gen = new GenF2w32(i);

         gen.nextValue();
         for(int j = 0; j < R; j++)
            vect[j] = gen.state[(j + R - 1) % R];

         bv[i] = new BitVector(vect, 800);
      }

      STp0 = (new BitMatrix(bv)).transpose();

      STpw = STp0.power2e(w);
      STpz = STpw.power2e(v);


      try {
         FileOutputStream fos = new FileOutputStream(args[0]);
View Full Code Here

      System.out.println("Creating the WELL1024 state " +
                         "transition matrices.");

      //the state transition matrices
      BitMatrix STp0, STpw, STpz;

      BitVector[] bv = new BitVector[1024];
      WELL1024 well;
      int[] vect = new int[R];

      for(int i = 0; i < 1024; i++) {
         well = new WELL1024(i);

         well.nextValue();
         for(int j = 0; j < R; j++)
            vect[j] = well.state[(well.state_i + j) & MASK];

         bv[i] = new BitVector(vect, 1024);
      }

      STp0 = (new BitMatrix(bv)).transpose();

      STpw = STp0.power2e(400);
      STpz = STpw.power2e(300);


      try {
         FileOutputStream fos = new FileOutputStream(args[0]);
View Full Code Here

      //computes the state transition matrices
      System.out.println("Creating the WELL607 state transition matrices.");

      //the state transition matrices
      BitMatrix STp0, STpw, STpz;

      BitVector[] bv = new BitVector[NUM_BITS];

      int[] state = new int[BUFFER_SIZE];
      int[] vect = new int[R];

      int z0, z1, z2;

      for(int i = 0; i < NUM_BITS; i++) {
         //state is a unit vector
         for(int j = 0; j < BUFFER_SIZE; j++)
            state[j] = 0;
         state[i / W] = 1 << (i % W);


         //advance one state of the recurrence (state_i = 0)
         z0 = (state[R1] & MASKL) | (state[R2] & MASKU);
         z1 = (state[0]^(state[0]>>>19)) ^ (state[M1]^(state[M1]>>>11));
         z2 = (state[M2]^(state[M2]<<(14))) ^ state[M3];
         state[0]      = z1 ^ z2;
         state[BUFFER_SIZE - 1] = (z0^(z0>>>18)) ^
                                  z1 ^ (state[0]^(state[0]<<5));


         //put the state vector in vect (state_i = -1)
         for(int j = 0; j < R; j++)
            vect[j] = state[(j - 1) & MASK_STATE];

         bv[i] = new BitVector(vect, NUM_BITS);
      }

      STp0 = (new BitMatrix(bv)).transpose();

      STpw = STp0.power2e(w);
      STpz = STpw.power2e(v);

      try {
         FileOutputStream fos = new FileOutputStream(args[0]);
         ObjectOutputStream oos = new ObjectOutputStream(fos);
View Full Code Here

TOP

Related Classes of umontreal.iro.lecuyer.util.BitMatrix$IncompatibleDimensionException

Copyright © 2018 www.massapicom. 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.