J E S 2 J O B L O G 10.16.52 JOB 24 $HASP373 MCPI#FOW STARTED - INIT 6 - CLASS C - SYS TK4- 10.16.52 JOB 24 IEF403I MCPI#FOW - STARTED - TIME=10.16.52 10.16.52 JOB 24 IEFACTRT - Stepname Procstep Program Retcode 10.16.52 JOB 24 MCPI#FOW CLG GO WATFIV RC= 0000 10.16.52 JOB 24 IEF404I MCPI#FOW - ENDED - TIME=10.16.52 10.16.52 JOB 24 $HASP395 MCPI#FOW ENDED ------ JES2 JOB STATISTICS ------ 06 JAN 19 JOB EXECUTION DATE 161 CARDS READ 423 SYSOUT PRINT RECORDS 0 SYSOUT PUNCH RECORDS 0.00 MINUTES EXECUTION TIME 1 //MCPI#FOW JOB 'S322-0C4','WFJM', JOB 24 // CLASS=C,MSGCLASS=A,MSGLEVEL=(1,1), // REGION=256K,TIME=(1,0),PRTY=8 2 //CLG EXEC WATFIV 3 XXWATFIV PROC PROG=WATFIV,LIB='FUNLIB',WLIB='WATLIB', XX JB='JOBLIB',PFX='WATFIV' ********************************************************************** *** *** Name: SYS2.PROCLIB(WATFIV) *** *** Desc: execute WATFIV FORTRAN programs *** ********************************************************************** 4 XXGO EXEC PGM=&PROG 5 XXSTEPLIB DD DSN=&PFX..&JB,DISP=SHR 6 XXWATLIB DD DSN=&PFX..&LIB,DISP=SHR 7 XX DD DSN=&PFX..&WLIB,DISP=SHR 8 XXFT01F001 DD SPACE=(TRK,(20,10)),DCB=(RECFM=VS,BLKSIZE=256),UNIT=SYSDA 9 XXFT02F001 DD SPACE=(TRK,(20,10)),DCB=(RECFM=VS,BLKSIZE=256),UNIT=SYSDA 10 XXFT03F001 DD SPACE=(TRK,(20,10)),DCB=(RECFM=VS,BLKSIZE=256),UNIT=SYSDA 11 XXFT04F001 DD SPACE=(TRK,(20,10)),DCB=(RECFM=VS,BLKSIZE=256),UNIT=SYSDA 12 XXFT05F001 DD DDNAME=SYSIN 13 XXFT06F001 DD SYSOUT=*,DCB=(RECFM=FA,BLKSIZE=133) 14 XXFT07F001 DD SYSOUT=B 15 //SYSIN DD * // STMT NO. MESSAGE - 4 IEF653I SUBSTITUTION JCL - PGM=WATFIV 5 IEF653I SUBSTITUTION JCL - DSN=WATFIV.JOBLIB,DISP=SHR 6 IEF653I SUBSTITUTION JCL - DSN=WATFIV.FUNLIB,DISP=SHR 7 IEF653I SUBSTITUTION JCL - DSN=WATFIV.WATLIB,DISP=SHR IEF236I ALLOC. FOR MCPI#FOW GO CLG IEF237I 240 ALLOCATED TO STEPLIB IEF237I 191 ALLOCATED TO SYS00022 IEF237I 240 ALLOCATED TO WATLIB IEF237I 240 ALLOCATED TO IEF237I 170 ALLOCATED TO FT01F001 IEF237I 180 ALLOCATED TO FT02F001 IEF237I 190 ALLOCATED TO FT03F001 IEF237I 140 ALLOCATED TO FT04F001 IEF237I JES2 ALLOCATED TO FT05F001 IEF237I JES2 ALLOCATED TO FT06F001 IEF237I JES2 ALLOCATED TO FT07F001 IEF142I MCPI#FOW GO CLG - STEP WAS EXECUTED - COND CODE 0000 IEF285I WATFIV.JOBLIB KEPT *--------0 IEF285I VOL SER NOS= PUB000. IEF285I SYS1.UCAT.MVS KEPT *--------0 IEF285I VOL SER NOS= MVSCAT. IEF285I WATFIV.FUNLIB KEPT *--------0 IEF285I VOL SER NOS= PUB000. IEF285I WATFIV.WATLIB KEPT *--------0 IEF285I VOL SER NOS= PUB000. IEF285I SYS19006.T101652.RA000.MCPI#FOW.R0000001 DELETED *--------0 IEF285I VOL SER NOS= WORK01. IEF285I SYS19006.T101652.RA000.MCPI#FOW.R0000002 DELETED *--------0 IEF285I VOL SER NOS= WORK02. IEF285I SYS19006.T101652.RA000.MCPI#FOW.R0000003 DELETED *--------0 IEF285I VOL SER NOS= WORK03. IEF285I SYS19006.T101652.RA000.MCPI#FOW.R0000004 DELETED *--------0 IEF285I VOL SER NOS= WORK00. IEF285I JES2.JOB00024.SI0101 SYSIN IEF285I JES2.JOB00024.SO0102 SYSOUT IEF285I JES2.JOB00024.SO0103 SYSOUT IEF373I STEP /GO / START 19006.1016 IEF374I STEP /GO / STOP 19006.1016 CPU 0MIN 00.01SEC SRB 0MIN 00.00SEC VIRT 256K SYS 216K ************************************************************************************************************************************ * 1. Jobstep of job: MCPI#FOW Stepname: GO Program name: WATFIV Executed on 06.01.19 from 10.16.52 to 10.16.52 * * elapsed time 00:00:00,09 CPU-Identifier: TK4- Page-in: 0 * * CPU time 00:00:00,01 Virtual Storage used: 256K Page-out: 0 * * corr. CPU: 00:00:00,01 CPU time has been corrected by 1 / 1,0 multiplier * * * * I/O Operation * * Number of records read via DD * or DD DATA: 154 * * 240.......0 191.......0 240.......0 240.......0 170.......0 180.......0 190.......0 140.......0 DMY.......0 DMY.......0 * * DMY.......0 * * * * Charge for step (w/o SYSOUT): 0,01 * ************************************************************************************************************************************ IEF375I JOB /MCPI#FOW/ START 19006.1016 IEF376I JOB /MCPI#FOW/ STOP 19006.1016 CPU 0MIN 00.01SEC SRB 0MIN 00.00SEC $JOB MCPI#FOW,T=(1,0),P=100,CHECK C 1 2 3 4 5 6 712-------- C2345*78901234567890123456789012345678901234567890123456789012345678901234567890 C $Id: mcpi_for.f 978 2017-12-28 21:32:18Z mueller $ C C Copyright 2017- by Walter F.J. Mueller C C This program is free software; you may redistribute and/or modify C it under the terms of the GNU General Public License version 3. C See Licence.txt in distribition directory for further details. C C Revision History: C Date Rev Version Comment C 2017-12-28 978 1.1 use inverse to avoid divide by constant C 2017-08-12 938 1.0 Initial version C 2017-07-30 931 0.1 First draft C C --- function ranraw ------------------------------------------------ C C Fortran IV(1966): function syntax is: 'type FUNCTION name*precision (args) C however gfortran -std=legacy wants: 'type*precision FUNCTION name (args) 1 REAL FUNCTION RANRAW*8 (DUMMY) C 2 COMMON /DBG/IDBGRR,IDBGRN,IDBGMC 3 COMMON /RANFAC/RR32,RR32I,RDIV,RDIVI 4 COMMON /RAN/RLAST,RSEED,RSHUF(128),RANINI 5 REAL*8 RR32,RR32I,RDIV,RDIVI 6 REAL*8 RLAST,RSEED,RSHUF 7 LOGICAL RANINI C 8 REAL*8 DUMMY 9 REAL*8 RFAC,RNEW 10 INTEGER IFAC C 11 RNEW = RSEED * 69069.D0 12 RFAC = RNEW * RR32I 13 IFAC = RFAC 14 RFAC = IFAC 15 RNEW = RNEW - RFAC * RR32 16 IF (IDBGRR .NE. 0) WRITE(6,9000) RSEED,RNEW 17 RSEED = RNEW 18 RANRAW = RNEW 19 RETURN C 20 9000 FORMAT(1X,'RR: ',F12.0,1X,F12.0) 21 END C C --- function rannum ------------------------------------------------ C 22 REAL FUNCTION RANNUM*8 (DUMMY) C 23 COMMON /DBG/IDBGRR,IDBGRN,IDBGMC 24 COMMON /RANFAC/RR32,RR32I,RDIV,RDIVI 25 COMMON /RAN/RLAST,RSEED,RSHUF(128),RANINI 26 REAL*8 RR32,RR32I,RDIV,RDIVI 27 REAL*8 RLAST,RSEED,RSHUF 28 LOGICAL RANINI C 29 REAL*8 DUMMY 30 REAL*8 RANRAW 31 INTEGER I C 32 IF (RANINI) GOTO 1000 33 DO 100 I=1,128 34 RSHUF(I) = RANRAW(DUMMY) 35 100 CONTINUE 36 RANINI = .TRUE. 37 1000 CONTINUE C 38 I = RLAST * RDIVI 39 RLAST = RSHUF(I+1) 40 RSHUF(I+1) = RANRAW(DUMMY) 41 RANNUM = RLAST * RR32I 42 IF (IDBGRN .NE. 0) WRITE(6,9000) I,RLAST,RANNUM 43 RETURN C 44 9000 FORMAT(1X,'RN: ',I12,1X,F12.0,1X,F12.8) 45 END C C --- main program --------------------------------------------------- C PROGRAM MCPI 46 COMMON /DBG/IDBGRR,IDBGRN,IDBGMC 47 COMMON /RANFAC/RR32,RR32I,RDIV,RDIVI 48 COMMON /RAN/RLAST,RSEED,RSHUF(128),RANINI 49 REAL*8 RR32,RR32I,RDIV,RDIVI 50 REAL*8 RLAST,RSEED,RSHUF 51 LOGICAL RANINI C 52 INTEGER I 53 INTEGER NTRY,NHIT,NGO 54 REAL*8 PI,PIEST,PIERR 55 REAL*8 X,Y,R 56 REAL*8 DUMMY 57 REAL*8 RANNUM 58 REAL*8 RTRY,RHIT 59 DATA PI /3.141592653589793D0/ 60 DATA NTRY /0/ 61 DATA NHIT /0/ C 62 RR32 = 4294967296.D0 63 RR32I = 1./RR32 64 RDIV = 33554432.D0 65 RDIVI = 1./RDIV C 66 RSEED = 12345.D0 67 RLAST = 0.D0 68 RANINI = .FALSE. C 69 READ(5,9000,ERR=910,END=900) IDBGRR,IDBGRN,IDBGMC C 70 IF (IDBGRR.EQ.0 .AND. IDBGRN.EQ.0 .AND. IDBGMC.EQ.0) X WRITE(6,9005) C 71 100 READ(5,9010,ERR=910,END=900) NGO 72 IF (NGO .LE. 0) GOTO 900 C 73 DO 200 I=1,NGO 74 X = 2.*RANNUM(DUMMY) - 1. 75 Y = 2.*RANNUM(DUMMY) - 1. 76 R = X*X + Y*Y 77 NTRY = NTRY + 1 78 IF (R .LE. 1.) NHIT = NHIT + 1 79 IF (IDBGMC .NE. 0) WRITE(6,9030) X,Y,R,NHIT 80 200 CONTINUE C 81 RTRY = NTRY 82 RHIT = NHIT 83 PIEST = 4.* RHIT / RTRY 84 PIERR = PIEST - PI 85 IF (PIERR .LT. 0.) PIERR = -PIERR 86 WRITE(6,9020) NTRY, NHIT,PIEST,PIERR,RLAST 87 GOTO 100 C 88 900 CONTINUE C 89 STOP C 90 910 WRITE(6,9040) 91 STOP C 92 9000 FORMAT(3I10) 93 9005 FORMAT(1X,' ntry nhit pi-est', X ' pi-err seed') 94 9010 FORMAT(I10) 95 9020 FORMAT(1X,'PI: ',I12,1X,I12,1X,F12.8,1X,F12.8,1X,F12.0) 96 9030 FORMAT(1X,'MC: ',F12.8,1X,F12.8,1X,F12.8,1X,I12) 97 9040 FORMAT(1X,'conversion error, abort') C 98 END $ENTRY RR: 12345. 852656805. RR: 852656805. 3856269089. RR: 3856269089. 547813997. RR: 547813997. 2598048329. RR: 2598048329. 866408821. RR: 866408821. 211522481. RR: 211522481. 2462466493. RR: 2462466493. 3688250713. RR: 3688250713. 688235845. RR: 688235845. 3358513473. RR: 3358513473. 2278376973. RR: 2278376973. 1912389993. RR: 1912389993. 3735172629. RR: 3735172629. 3132710865. RR: 3132710865. 1344296797. RR: 1344296797. 632467065. RR: 632467065. 4050312165. RR: 4050312165. 2611066721. RR: 2611066721. 2385561005. RR: 2385561005. 482677897. RR: 482677897. 543516341. RR: 543516341. 2115989489. RR: 2115989489. 130867453. RR: 130867453. 2272920473. RR: 2272920473. 2994513541. RR: 2994513541. 3905624449. RR: 3905624449. 3564108109. RR: 3564108109. 3332410281. RR: 3332410281. 3243273045. RR: 3243273045. 1311654929. RR: 1311654929. 949116573. RR: 949116573. 446741689. RR: 446741689. 956663077. RR: 956663077. 1985183649. RR: 1985183649. 2113495277. RR: 2113495277. 3951797961. RR: 3951797961. 1561707509. RR: 1561707509. 1767267377. RR: 1767267377. 419909693. RR: 419909693. 3123403225. RR: 3123403225. 2720004037. RR: 2720004037. 1794337217. RR: 1794337217. 1795914893. RR: 1795914893. 3390236137. RR: 3390236137. 2897735829. RR: 2897735829. 2534946897. RR: 2534946897. 1905407453. RR: 1905407453. 2494454521. RR: 2494454521. 1161199205. RR: 1161199205. 2943571937. RR: 2943571937. 2998193197. RR: 2998193197. 357746953. RR: 357746953. 277442869. RR: 277442869. 2852411505. RR: 2852411505. 3060371325. RR: 3060371325. 4266541081. RR: 4266541081. 3724777733. RR: 3724777733. 2427177473. RR: 2427177473. 1557385165. RR: 1557385165. 3875000361. RR: 3875000361. 1512883669. RR: 1512883669. 1102789777. RR: 1102789777. 1637080349. RR: 1637080349. 2193590585. RR: 2193590585. 4136748965. RR: 4136748965. 2709864481. RR: 2709864481. 1545013101. RR: 1545013101. 4047403849. RR: 4047403849. 3600051829. RR: 3600051829. 3438109873. RR: 3438109873. 2363989693. RR: 2363989693. 927381081. RR: 927381081. 2436598341. RR: 2436598341. 3707255361. RR: 3707255361. 3355243277. RR: 3355243277. 4042476137. RR: 4042476137. 2550328085. RR: 2550328085. 3411759313. RR: 3411759313. 3423294557. RR: 3423294557. 1287145337. RR: 1287145337. 313221349. RR: 313221349. 135084129. RR: 135084129. 1456738989. RR: 1456738989. 1601355145. RR: 1601355145. 703413. RR: 703413. 1339392241. RR: 1339392241. 1182105085. RR: 1182105085. 3782786201. RR: 3782786201. 1809566597. RR: 1809566597. 1406974593. RR: 1406974593. 398124621. RR: 398124621. 1688818857. RR: 1688818857. 2307809365. RR: 2307809365. 3258742033. RR: 3258742033. 292330397. RR: 292330397. 326931897. RR: 326931897. 2216118821. RR: 2216118821. 1066352801. RR: 1066352801. 1822420461. RR: 1822420461. 152276937. RR: 152276937. 3535821045. RR: 3535821045. 3783306545. RR: 3783306545. 3389467965. RR: 3389467965. 1380471513. RR: 1380471513. 3807927493. RR: 3807927493. 3126676161. RR: 3126676161. 1145153933. RR: 1145153933. 2814242537. RR: 2814242537. 3877840277. RR: 3877840277. 94546257. RR: 94546257. 1865134813. RR: 1865134813. 4042290169. RR: 4042290169. 2590606181. RR: 2590606181. 2240764129. RR: 2240764129. 2486081837. RR: 2486081837. 2688872969. RR: 2688872969. 3381216821. RR: 3381216821. 2712856945. RR: 2712856945. 2073078909. RR: 2073078909. 4162418969. RR: 4162418969. 1889877509. RR: 1889877509. 3598576385. RR: 3598576385. 314916045. RR: 314916045. 1221925161. RR: 1221925161. 1041578709. RR: 1041578709. 97643921. RR: 97643921. 1069324829. RR: 1069324829. 938992185. RR: 938992185. 1245056165. RN: 0 852656805. 0.19852463 RR: 1245056165. 949059873. RN: 25 3905624449. 0.90934905 MC: -0.60295073 0.81869811 1.03381618 0 RR: 949059873. 825496685. RN: 116 3381216821. 0.78725089 RR: 825496685. 539681865. RN: 100 3535821045. 0.82324749 MC: 0.57450178 0.64649498 0.74800805 1 RR: 539681865. 3560538997. RN: 105 3126676161. 0.72798602 RR: 3560538997. 1630549425. RN: 93 3258742033. 0.75873501 MC: 0.45597205 0.51747001 0.47568572 2 RR: 1630549425. 2080766909. RN: 97 1066352801. 0.24827961 RR: 2080766909. 2588946265. RN: 31 446741689. 0.10401515 MC: -0.50344078 -0.79196969 0.88066861 3 RR: 2588946265. 3556142917. RN: 13 3132710865. 0.72939109 RR: 3556142917. 2940377921. RN: 93 1630549425. 0.37964187 MC: 0.45878217 -0.24071626 0.26842540 4 RR: 2940377921. 1434034189. RN: 48 1161199205. 0.27036276 RR: 1434034189. 1066586985. RN: 34 2113495277. 0.49208647 MC: -0.45927448 -0.01582707 0.21118355 5 RR: 1066586985. 817405973. RN: 62 1637080349. 0.38116247 RR: 817405973. 68043217. RN: 48 1434034189. 0.33388710 MC: -0.23767506 -0.33222579 0.16686341 6 RR: 68043217. 982733149. RN: 42 1795914893. 0.41814402 RR: 982733149. 3027689593. RN: 53 2852411505. 0.66412881 MC: -0.16371196 0.32825761 0.13455467 7 RR: 3027689593. 1829823973. RN: 85 1339392241. 0.31185156 RR: 1829823973. 404339041. RN: 39 3123403225. 0.72722398 MC: -0.37629688 0.45444797 0.34812230 8 RR: 404339041. 1415864237. RN: 93 2940377921. 0.68461008 RR: 1415864237. 216622729. RN: 87 3782786201. 0.88074855 MC: 0.36922017 0.76149709 0.71620135 9 PI: 10 9 3.60000000 0.45840735 3782786201. CORE USAGE OBJECT CODE= 3432 BYTES,ARRAY AREA= 1112 BYTES,TOTAL AREA AVAILABLE= 149504 BYTES DIAGNOSTICS NUMBER OF ERRORS= 0, NUMBER OF WARNINGS= 0, NUMBER OF EXTENSIONS= 0 COMPILE TIME= 0.00 SEC,EXECUTION TIME= 0.00 SEC, 10.16.52 SUNDAY 6 JAN 19 WATFIV - JAN 1976 V1L5 $STOP