Examples
- 1. simple
- Use of sprng without explicit initialization in the simple interface.
- 2. sprng
- Produce random integers and reals: Use of init_sprng, sprng, print_sprng, isprng.
- 3. sprng_mpi
- Use sprng to produce double precision random numbers on multiple processes.
- 4. fsprng_mpi
- Produce single precision random numbers through the use of the FLOAT_GEN macro.
- 5. seed
- Use make_sprng_seed to produce a seed using system date and time information on one process.
- 6. seed_mpi
- Use make_sprng_seed to produce seeds on multiple processes.
- 7. checkpoint
- Pack a stream and checkpoint the state of the computation.
- 8. message_mpi
- Pack a stream and pass it to another process with MPI. Also use free_sprng in the default interface.
- 9. 2streams_mpi
- Use two streams on each process. One stream is common to all the processes; the other is distinct.
- 10. spawn
- Spawn new streams from an existing one through calls to spawn_sprng.
- 11. invalidid
- Demonstrates the handling of invalid stream ID's in the interface with pointer checking.
- 12. convert
- Convert a code that uses a different Random Number Generator to use SPRNG.
- 13. subroutine
- Demonstrates SPRNG use in FORTRAN programs with subroutines.
- 14. pi-simple
- This is a simple Monte Carlo application that estimates the value of PI based on the proportion of points that fall within a circle inscribed in a square.
- 15. pi-simple_mpi
- This is a parallel version of pi-simple in which the work is divided among the available processes.