seedsMLCG README FILE
version 2005-03-10
by Andreu Badal & Josep Sempau
Universitat Politecnica de Catalunya
CONTENTS:
0. COPYRIGHT AND DISCLAIMER
1. PURPOSE OF THIS SOFTWARE PACKAGE
2. WHERE DO I GET THE LATEST UPDATE?
3. WHO DO I COMPLAIN TO?
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
0. COPYRIGHT AND DISCLAIMER
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c c
c clonEasy c
c Copyright (c) 2004 c
c Universitat Politecnica de Catalunya c
c c
c Permission to use, copy, modify and re-distribute unaltered copies c
c of this software package and its documentation for any purpose is c
c hereby granted without fee, provided that this copyright notice c
c appears in all copies. The Universitat Politecnica de Catalunya c
c makes no representations about the suitability of this software for c
c any purpose. It is provided "as is" without express or implied c
c warranty. c
c c
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
1. PURPOSE OF THIS SOFTWARE PACKAGE
The program "seedsMLCG" calculates initialization values that produce disjoint,
consecutive sequences of pseudo-random numbers. The calculated values initiate
the generator in distant positions of the random number cycle (sequence splitting
technique) and can be used, for instance, on a parallel Monte Carlo simulation.
On execution, the user is prompted to introduce the modulus and multiplier of a
multiplicative linear congruential generator (MLCG) and the separation (that is,
the number of intermediate random values) to be jumped between consecutive seeds.
Since long integers with sign are usually restricted to 32 bits, input separation
is limited to 2^{31}-1. For this reason, the program also allows the user to input
the separation as the exponent of a power of 10 to efficiently split the sequence
of generators with a very long period. Negative distances can be entered to jump
the sequence backwards with the aid of the Extended Euclidean algorithm.
This capability may be useful for debugging purposes; for instance, to reproduce
a certain past history.
The FORTRAN 77 source code of seedsMLCG is accompanied by some sample input files.
The files "seedsMLCG_1.in" and "seedsMLCG_2.in" contain the parameters that define
the two MLCGs employed by RANECU (the generator used in PENELOPE, for example).
These files are read by the program by redirecting the keyboard input with the
'<' sign from the system command line. The generation of each seed takes a few
microseconds on a modern computer.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
2. WHERE DO I GET THE LATEST UPDATE?
seedsMLCG can be freely downloaded from
http://www.upc.es/inte/downloads/seedsMLCG.htm
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
3. WHO DO I COMPLAIN TO?
Report bugs, problems, praises and complaints to andreu.badal@upc.edu
>>>> EOF >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>