Last change
on this file since 3005 was 2403, checked in by cmv, 22 years ago |
Creation du module de code source de MINUIT (CERNLIB) extrait par CMV
cmv 11/06/2003
|
File size:
912 bytes
|
Line | |
---|
1 | *
|
---|
2 | * $Id: mnrn15.F,v 1.1.1.1 2003-06-11 14:18:29 cmv Exp $
|
---|
3 | *
|
---|
4 | * $Log: not supported by cvs2svn $
|
---|
5 | * Revision 1.1.1.1 1996/03/07 14:31:31 mclareni
|
---|
6 | * Minuit
|
---|
7 | *
|
---|
8 | *
|
---|
9 | #include "minuit/pilot.h"
|
---|
10 | SUBROUTINE MNRN15(VAL,INSEED)
|
---|
11 | #include "minuit/d506dp.inc"
|
---|
12 | C This is a super-portable random number generator.
|
---|
13 | C It should not overflow on any 32-bit machine.
|
---|
14 | C The cycle is only ~10**9, so use with care!
|
---|
15 | C Note especially that VAL must not be undefined on input.
|
---|
16 | C Set Default Starting Seed
|
---|
17 | PARAMETER (THREE=3.0)
|
---|
18 | DATA ISEED/12345/
|
---|
19 | IF (VAL .EQ. THREE) GO TO 100
|
---|
20 | C
|
---|
21 | INSEED = ISEED
|
---|
22 | K = ISEED/53668
|
---|
23 | ISEED = 40014*(ISEED-K*53668) - K*12211
|
---|
24 | IF (ISEED .LT. 0) ISEED = ISEED + 2147483563
|
---|
25 | VAL = REAL(ISEED) * 4.656613E-10
|
---|
26 | RETURN
|
---|
27 | C "entry" to set seed, flag is VAL=3.
|
---|
28 | 100 ISEED = INSEED
|
---|
29 | RETURN
|
---|
30 | END
|
---|
Note:
See
TracBrowser
for help on using the repository browser.