#include <stl_function.h>
Inheritance diagram for subtractive_rng:


Public Methods | |
| unsigned int | operator() (unsigned int limit) |
| void | initialize (unsigned int seed) |
| subtractive_rng (unsigned int seed) | |
| subtractive_rng () | |
Private Attributes | |
| unsigned int | table [55] |
| size_t | index1 |
| size_t | index2 |
|
|
Definition at line 400 of file stl_function.h. References initialize.
00400 { initialize(seed); }
|
|
|
Definition at line 401 of file stl_function.h. References initialize.
00401 { initialize(161803398u); }
|
|
|
Definition at line 381 of file stl_function.h. References index1, index2, and table. Referenced by subtractive_rng.
00382 {
00383 unsigned int k = 1;
00384 table[54] = seed;
00385 size_t i;
00386 for (i = 0; i < 54; i++) {
00387 size_t ii = (21 * (i + 1) % 55) - 1;
00388 table[ii] = k;
00389 k = seed - k;
00390 seed = table[ii];
00391 }
00392 for (int loop = 0; loop < 4; loop++) {
00393 for (i = 0; i < 55; i++)
00394 table[i] = table[i] - table[(1 + i + 30) % 55];
00395 }
00396 index1 = 0;
00397 index2 = 31;
00398 }
|
|
|
Definition at line 374 of file stl_function.h. References index1, index2, and table.
|
|
|
Definition at line 371 of file stl_function.h. Referenced by initialize, and operator(). |
|
|
Definition at line 372 of file stl_function.h. Referenced by initialize, and operator(). |
|
|
Definition at line 370 of file stl_function.h. Referenced by initialize, and operator(). |
| Documentation generated on Thu May 2 15:03:46 2002 |
Generated with doxygen 1.2.12 by Dimitri van Heesch , 1997-2001 |