| 64 |  |  | 
| 65 |  | int nProcessors; | 
| 66 |  | MPI_Comm_size(MPI_COMM_WORLD, &nProcessors); | 
| 67 | < |  | 
| 67 | > | MPI_Comm_rank( MPI_COMM_WORLD, &myRank_); | 
| 68 |  | //In order to generate independent random number stream, the actual seed used by random | 
| 69 |  | //number generator is the seed passed to the constructor plus the number of random number | 
| 70 |  | //generators which are already created. | 
| 71 |  | int newSeed = oneSeed + nCreatedRNG_; | 
| 72 | < | mtRand_ = new MTRand(newSeed, nProcessors, worldRank); | 
| 72 | > | mtRand_ = new MTRand(newSeed, nProcessors, myRank_); | 
| 73 |  |  | 
| 74 |  | ++nCreatedRNG_; | 
| 75 |  | } | 
| 80 |  | const int masterNode = 0; | 
| 81 |  | int nProcessors; | 
| 82 |  | MPI_Comm_size(MPI_COMM_WORLD, &nProcessors); | 
| 83 | < | mtRand_ = new MTRand(nProcessors, worldRank); | 
| 83 | > | MPI_Comm_rank( MPI_COMM_WORLD, &myRank_); | 
| 84 | > | mtRand_ = new MTRand(nProcessors, myRank_); | 
| 85 |  |  | 
| 86 |  | seed();       /** @todo calling virtual function in constructor is not a good design */ | 
| 87 |  | } |