|
|
1.1 ! root 1: C***********************************************************************00010826 ! 2: C DATE***82/08/02*18.33.46 ! 3: C OWNER PRE/850703/TC-85- -410/ /FSTC/278FCVS*F78UBP20/ ! 4: C AUDIT FCVS78 V2.0 ! 5: C***** FORTRAN 77 00020826 ! 6: C***** FM826 00030826 ! 7: C***** YDTANH - (200) 00040826 ! 8: C***** 00050826 ! 9: C***********************************************************************00060826 ! 10: C***** GENERAL PURPOSE ANS REF 00070826 ! 11: C***** TEST INTRINSIC FUNCTION DTANH 15.3 00080826 ! 12: C***** TABLE 5 00090826 ! 13: C***** 00100826 ! 14: CBB** ********************** BBCCOMNT **********************************00110826 ! 15: C**** 00120826 ! 16: C**** 1978 FORTRAN COMPILER VALIDATION SYSTEM 00130826 ! 17: C**** VERSION 2.0 00140826 ! 18: C**** 00150826 ! 19: C**** 00160826 ! 20: C**** SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO 00170826 ! 21: C**** GENERAL SERVICES ADMINISTRATION 00180826 ! 22: C**** FEDERAL SOFTWARE TESTING CENTER 00190826 ! 23: C**** 5203 LEESBURG PIKE, SUITE 1100 00200826 ! 24: C**** FALLS CHURCH, VA. 22041 00210826 ! 25: C**** 00220826 ! 26: C**** (703) 756-6153 00230826 ! 27: C**** 00240826 ! 28: CBE** ********************** BBCCOMNT **********************************00250826 ! 29: C***** 00260826 ! 30: C***** S P E C I F I C A T I O N S SEGMENT 200 00270826 ! 31: DOUBLE PRECISION AVD, BVD, DVCORR 00280826 ! 32: C***** 00290826 ! 33: CBB** ********************** BBCINITA **********************************00300826 ! 34: C**** SPECIFICATION STATEMENTS 00310826 ! 35: C**** 00320826 ! 36: CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20, 00330826 ! 37: 1 ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13 00340826 ! 38: CBE** ********************** BBCINITA **********************************00350826 ! 39: CBB** ********************** BBCINITB **********************************00360826 ! 40: C**** INITIALIZE SECTION 00370826 ! 41: DATA ZVERS, ZVERSD, ZDATE 00380826 ! 42: 1 /'VERSION 2.0 ', '82/08/02*18.33.46', '*NO DATE*TIME'/ 00390826 ! 43: DATA ZCOMPL, ZNAME, ZTAPE 00400826 ! 44: 1 /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/ 00410826 ! 45: DATA ZPROJ, ZTAPED, ZPROG 00420826 ! 46: 1 /'*NO PROJECT*', '*NO TAPE DATE', 'XXXXX'/ 00430826 ! 47: DATA REMRKS /' '/ 00440826 ! 48: C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED 00450826 ! 49: C**** FOR IDENTIFYING THE TEST ENVIRONMENT 00460826 ! 50: C**** 00470826 ! 51: CZ01 ZVERS = 'VERSION OF THE COMPILER VALIDATION SYSTEM' 00480826 ! 52: CZ02 ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM' 00490826 ! 53: CZ03 ZPROG = 'PROGRAM NAME' 00500826 ! 54: ZDATE = '07-Nov-85 ' *RP ! 55: ZCOMPL = 'CCI 5.2 ' *RP ! 56: ZPROJ = 'TC-85- -410' *RP ! 57: ZNAME = ' ' *RP ! 58: ZTAPE = ' ' *RP ! 59: ZTAPED = '850703 ' *RP ! 60: C 00570826 ! 61: IVPASS = 0 00580826 ! 62: IVFAIL = 0 00590826 ! 63: IVDELE = 0 00600826 ! 64: IVINSP = 0 00610826 ! 65: IVTOTL = 0 00620826 ! 66: IVTOTN = 0 00630826 ! 67: ICZERO = 0 00640826 ! 68: C 00650826 ! 69: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00660826 ! 70: I01 = 05 00670826 ! 71: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00680826 ! 72: I02 = 06 00690826 ! 73: C 00700826 ! 74: I01 = 5 00710826 ! 75: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00720826 ! 76: CX011 REPLACED BY FEXEC X-011 CONTROL CARD. CX011 IS FOR SYSTEMS 00730826 ! 77: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010. 00740826 ! 78: C 00750826 ! 79: I02 = 6 00760826 ! 80: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6 00770826 ! 81: CX021 REPLACED BY FEXEC X-021 CONTROL CARD. CX021 IS FOR SYSTEMS 00780826 ! 82: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020. 00790826 ! 83: C 00800826 ! 84: CBE** ********************** BBCINITB **********************************00810826 ! 85: NUVI = I02 00820826 ! 86: IVTOTL = 9 00830826 ! 87: ZPROG = 'FM826' 00840826 ! 88: CBB** ********************** BBCHED0A **********************************00850826 ! 89: C**** 00860826 ! 90: C**** WRITE REPORT TITLE 00870826 ! 91: C**** 00880826 ! 92: WRITE (I02, 90002) 00890826 ! 93: WRITE (I02, 90006) 00900826 ! 94: WRITE (I02, 90007) 00910826 ! 95: WRITE (I02, 90008) ZVERS, ZVERSD 00920826 ! 96: WRITE (I02, 90009) ZPROG, ZPROG 00930826 ! 97: WRITE (I02, 90010) ZDATE, ZCOMPL 00940826 ! 98: CBE** ********************** BBCHED0A **********************************00950826 ! 99: C***** 00960826 ! 100: C***** HEADER FOR SEGMENT 200 00970826 ! 101: WRITE(NUVI,20000) 00980826 ! 102: 20000 FORMAT(1H , / 36H YDTANH - (200) INTRINSIC FUNCTIONS// 00990826 ! 103: 1 46H DTANH (DOUBLE PRECISION HYPERBOLIC TANGENT)// 01000826 ! 104: 2 17H ANS REF. - 15.3) 01010826 ! 105: CBB** ********************** BBCHED0B **********************************01020826 ! 106: C**** WRITE DETAIL REPORT HEADERS 01030826 ! 107: C**** 01040826 ! 108: WRITE (I02,90004) 01050826 ! 109: WRITE (I02,90004) 01060826 ! 110: WRITE (I02,90013) 01070826 ! 111: WRITE (I02,90014) 01080826 ! 112: WRITE (I02,90015) IVTOTL 01090826 ! 113: CBE** ********************** BBCHED0B **********************************01100826 ! 114: C***** 01110826 ! 115: CT001* TEST 1 TEST AT ZERO (0.0) 01120826 ! 116: IVTNUM = 1 01130826 ! 117: BVD = 0.0D0 01140826 ! 118: AVD = DTANH(BVD) 01150826 ! 119: IF (AVD + 0.5000000000D-09) 20010, 10010, 40010 01160826 ! 120: 40010 IF (AVD - 0.5000000000D-09) 10010, 10010, 20010 01170826 ! 121: 10010 IVPASS = IVPASS + 1 01180826 ! 122: WRITE (NUVI, 80002) IVTNUM 01190826 ! 123: GO TO 0011 01200826 ! 124: 20010 IVFAIL = IVFAIL + 1 01210826 ! 125: DVCORR = 0.00000000000000000000D+00 01220826 ! 126: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01230826 ! 127: 0011 CONTINUE 01240826 ! 128: CT002* TEST 2 A NEGATIVE ARGUMENT 01250826 ! 129: IVTNUM = 2 01260826 ! 130: AVD = DTANH(-2.5D0) 01270826 ! 131: IF (AVD + 0.9866142987D+00) 20020, 10020, 40020 01280826 ! 132: 40020 IF (AVD + 0.9866142976D+00) 10020, 10020, 20020 01290826 ! 133: 10020 IVPASS = IVPASS + 1 01300826 ! 134: WRITE (NUVI, 80002) IVTNUM 01310826 ! 135: GO TO 0021 01320826 ! 136: 20020 IVFAIL = IVFAIL + 1 01330826 ! 137: DVCORR = -0.98661429815143028888D+00 01340826 ! 138: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01350826 ! 139: 0021 CONTINUE 01360826 ! 140: CT003* TEST 3 A VARIABLE SUPPLIED AS AN ARGUMENT 01370826 ! 141: IVTNUM = 3 01380826 ! 142: BVD = 4.75D0 01390826 ! 143: AVD = DTANH(BVD) 01400826 ! 144: IF (AVD - 0.9998503070D+00) 20030, 10030, 40030 01410826 ! 145: 40030 IF (AVD - 0.9998503081D+00) 10030, 10030, 20030 01420826 ! 146: 10030 IVPASS = IVPASS + 1 01430826 ! 147: WRITE (NUVI, 80002) IVTNUM 01440826 ! 148: GO TO 0031 01450826 ! 149: 20030 IVFAIL = IVFAIL + 1 01460826 ! 150: DVCORR = 0.99985030754497877538D+00 01470826 ! 151: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01480826 ! 152: 0031 CONTINUE 01490826 ! 153: CT004* TEST 4 A POSITIVE REAL NUMBER SUPPLIED AS AN ARGUMENT 01500826 ! 154: IVTNUM = 4 01510826 ! 155: AVD = DTANH(15.125D0) 01520826 ! 156: IF (AVD - 0.9999999995D+00) 20040, 10040, 40040 01530826 ! 157: 40040 IF (AVD - 0.1000000001D+01) 10040, 10040, 20040 01540826 ! 158: 10040 IVPASS = IVPASS + 1 01550826 ! 159: WRITE (NUVI, 80002) IVTNUM 01560826 ! 160: GO TO 0041 01570826 ! 161: 20040 IVFAIL = IVFAIL + 1 01580826 ! 162: DVCORR = 0.99999999999985424552D+00 01590826 ! 163: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01600826 ! 164: 0041 CONTINUE 01610826 ! 165: CT005* TEST 5 TEST WITH LARGE VALUES 01620826 ! 166: IVTNUM = 5 01630826 ! 167: BVD = 10.0D0 ** 2 01640826 ! 168: AVD = DTANH(BVD) 01650826 ! 169: IF (AVD - 0.9999999995D+00) 20050, 10050, 40050 01660826 ! 170: 40050 IF (AVD - 0.1000000001D+01) 10050, 10050, 20050 01670826 ! 171: 10050 IVPASS = IVPASS + 1 01680826 ! 172: WRITE (NUVI, 80002) IVTNUM 01690826 ! 173: GO TO 0051 01700826 ! 174: 20050 IVFAIL = IVFAIL + 1 01710826 ! 175: DVCORR = 1.0000000000000000000D+00 01720826 ! 176: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01730826 ! 177: 0051 CONTINUE 01740826 ! 178: CT006* TEST 6 TEST WITH LARGE VALUES 01750826 ! 179: IVTNUM = 6 01760826 ! 180: BVD = -100.0D0 * 10.0D0 01770826 ! 181: AVD = DTANH(BVD) 01780826 ! 182: IF (AVD + 0.1000000001D+01) 20060, 10060, 40060 01790826 ! 183: 40060 IF (AVD + 0.9999999995D+00) 10060, 10060, 20060 01800826 ! 184: 10060 IVPASS = IVPASS + 1 01810826 ! 185: WRITE (NUVI, 80002) IVTNUM 01820826 ! 186: GO TO 0061 01830826 ! 187: 20060 IVFAIL = IVFAIL + 1 01840826 ! 188: DVCORR = -1.0000000000000000000D+00 01850826 ! 189: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01860826 ! 190: 0061 CONTINUE 01870826 ! 191: CT007* TEST 7 AN ARGUMENT OF HIGH MAGNITUDE 01880826 ! 192: IVTNUM = 7 01890826 ! 193: BVD = 3.0D+36 01900826 ! 194: AVD = DTANH(BVD) 01910826 ! 195: IF (AVD - 0.9999999995D+00) 20070, 10070, 40070 01920826 ! 196: 40070 IF (AVD - 0.1000000001D+01) 10070, 10070, 20070 01930826 ! 197: 10070 IVPASS = IVPASS + 1 01940826 ! 198: WRITE (NUVI, 80002) IVTNUM 01950826 ! 199: GO TO 0071 01960826 ! 200: 20070 IVFAIL = IVFAIL + 1 01970826 ! 201: DVCORR = 1.0000000000000000000D+00 01980826 ! 202: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01990826 ! 203: 0071 CONTINUE 02000826 ! 204: CT008* TEST 8 AN ARGUMENT OF LOW MAGNITUDE 02010826 ! 205: IVTNUM = 8 02020826 ! 206: BVD = -1.0D-15 02030826 ! 207: AVD = DTANH(BVD) 02040826 ! 208: IF (AVD + 0.1000000001D-14) 20080, 10080, 40080 02050826 ! 209: 40080 IF (AVD + 0.9999999995D-15) 10080, 10080, 20080 02060826 ! 210: 10080 IVPASS = IVPASS + 1 02070826 ! 211: WRITE (NUVI, 80002) IVTNUM 02080826 ! 212: GO TO 0081 02090826 ! 213: 20080 IVFAIL = IVFAIL + 1 02100826 ! 214: DVCORR = -1.0000000000000000000D-15 02110826 ! 215: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02120826 ! 216: 0081 CONTINUE 02130826 ! 217: CT009* TEST 9 THE FUNCTION APPLIED TWICE 02140826 ! 218: IVTNUM = 9 02150826 ! 219: AVD = DTANH(0.5D0) * DTANH(0.75D0) 02160826 ! 220: IF (AVD - 0.2935132281D+00) 20090, 10090, 40090 02170826 ! 221: 40090 IF (AVD - 0.2935132285D+00) 10090, 10090, 20090 02180826 ! 222: 10090 IVPASS = IVPASS + 1 02190826 ! 223: WRITE (NUVI, 80002) IVTNUM 02200826 ! 224: GO TO 0091 02210826 ! 225: 20090 IVFAIL = IVFAIL + 1 02220826 ! 226: DVCORR = 0.293513228313886504621D+00 02230826 ! 227: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02240826 ! 228: 0091 CONTINUE 02250826 ! 229: C***** 02260826 ! 230: CBB** ********************** BBCSUM0 **********************************02270826 ! 231: C**** WRITE OUT TEST SUMMARY 02280826 ! 232: C**** 02290826 ! 233: IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP 02300826 ! 234: WRITE (I02, 90004) 02310826 ! 235: WRITE (I02, 90014) 02320826 ! 236: WRITE (I02, 90004) 02330826 ! 237: WRITE (I02, 90020) IVPASS 02340826 ! 238: WRITE (I02, 90022) IVFAIL 02350826 ! 239: WRITE (I02, 90024) IVDELE 02360826 ! 240: WRITE (I02, 90026) IVINSP 02370826 ! 241: WRITE (I02, 90028) IVTOTN, IVTOTL 02380826 ! 242: CBE** ********************** BBCSUM0 **********************************02390826 ! 243: CBB** ********************** BBCFOOT0 **********************************02400826 ! 244: C**** WRITE OUT REPORT FOOTINGS 02410826 ! 245: C**** 02420826 ! 246: WRITE (I02,90016) ZPROG, ZPROG 02430826 ! 247: WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED 02440826 ! 248: WRITE (I02,90019) 02450826 ! 249: CBE** ********************** BBCFOOT0 **********************************02460826 ! 250: CBB** ********************** BBCFMT0A **********************************02470826 ! 251: C**** FORMATS FOR TEST DETAIL LINES 02480826 ! 252: C**** 02490826 ! 253: 80000 FORMAT (1H ,2X,I3,4X,7HDELETED,32X,A31) 02500826 ! 254: 80002 FORMAT (1H ,2X,I3,4X,7H PASS ,32X,A31) 02510826 ! 255: 80004 FORMAT (1H ,2X,I3,4X,7HINSPECT,32X,A31) 02520826 ! 256: 80008 FORMAT (1H ,2X,I3,4X,7H FAIL ,32X,A31) 02530826 ! 257: 80010 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,15X,10HCOMPUTED= , 02540826 ! 258: 1I6,/,1H ,15X,10HCORRECT= ,I6) 02550826 ! 259: 80012 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02560826 ! 260: 1E12.5,/,1H ,16X,10HCORRECT= ,E12.5) 02570826 ! 261: 80018 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02580826 ! 262: 1A21,/,1H ,16X,10HCORRECT= ,A21) 02590826 ! 263: 80020 FORMAT (1H ,16X,10HCOMPUTED= ,A21,1X,A31) 02600826 ! 264: 80022 FORMAT (1H ,16X,10HCORRECT= ,A21,1X,A31) 02610826 ! 265: 80024 FORMAT (1H ,16X,10HCOMPUTED= ,I6,16X,A31) 02620826 ! 266: 80026 FORMAT (1H ,16X,10HCORRECT= ,I6,16X,A31) 02630826 ! 267: 80028 FORMAT (1H ,16X,10HCOMPUTED= ,E12.5,10X,A31) 02640826 ! 268: 80030 FORMAT (1H ,16X,10HCORRECT= ,E12.5,10X,A31) 02650826 ! 269: 80050 FORMAT (1H ,48X,A31) 02660826 ! 270: CBE** ********************** BBCFMT0A **********************************02670826 ! 271: CBB** ********************** BBCFMAT1 **********************************02680826 ! 272: C**** FORMATS FOR TEST DETAIL LINES - FULL LANGUAGE 02690826 ! 273: C**** 02700826 ! 274: 80031 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02710826 ! 275: 1D17.10,/,1H ,16X,10HCORRECT= ,D17.10) 02720826 ! 276: 80033 FORMAT (1H ,16X,10HCOMPUTED= ,D17.10,10X,A31) 02730826 ! 277: 80035 FORMAT (1H ,16X,10HCORRECT= ,D17.10,10X,A31) 02740826 ! 278: 80037 FORMAT (1H ,16X,10HCOMPUTED= ,1H(,E12.5,2H, ,E12.5,1H),6X,A31) 02750826 ! 279: 80039 FORMAT (1H ,16X,10HCORRECT= ,1H(,E12.5,2H, ,E12.5,1H),6X,A31) 02760826 ! 280: 80041 FORMAT (1H ,16X,10HCOMPUTED= ,1H(,F12.5,2H, ,F12.5,1H),6X,A31) 02770826 ! 281: 80043 FORMAT (1H ,16X,10HCORRECT= ,1H(,F12.5,2H, ,F12.5,1H),6X,A31) 02780826 ! 282: 80045 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02790826 ! 283: 11H(,F12.5,2H, ,F12.5,1H)/,1H ,16X,10HCORRECT= , 02800826 ! 284: 21H(,F12.5,2H, ,F12.5,1H)) 02810826 ! 285: CBE** ********************** BBCFMAT1 **********************************02820826 ! 286: CBB** ********************** BBCFMT0B **********************************02830826 ! 287: C**** FORMAT STATEMENTS FOR PAGE HEADERS 02840826 ! 288: C**** 02850826 ! 289: 90002 FORMAT (1H1) 02860826 ! 290: 90004 FORMAT (1H ) 02870826 ! 291: 90006 FORMAT (1H ,20X,31HFEDERAL SOFTWARE TESTING CENTER) 02880826 ! 292: 90007 FORMAT (1H ,19X,34HFORTRAN COMPILER VALIDATION SYSTEM) 02890826 ! 293: 90008 FORMAT (1H ,21X,A13,A17) 02900826 ! 294: 90009 FORMAT (1H ,/,2H *,A5,6HBEGIN*,12X,15HTEST RESULTS - ,A5,/) 02910826 ! 295: 90010 FORMAT (1H ,8X,16HTEST DATE*TIME= ,A17,15H - COMPILER= ,A20) 02920826 ! 296: 90013 FORMAT (1H ,8H TEST ,10HPASS/FAIL ,6X,17HDISPLAYED RESULTS, 02930826 ! 297: 1 7X,7HREMARKS,24X) 02940826 ! 298: 90014 FORMAT (1H ,46H----------------------------------------------, 02950826 ! 299: 1 33H---------------------------------) 02960826 ! 300: 90015 FORMAT (1H ,48X,17HTHIS PROGRAM HAS ,I3,6H TESTS,/) 02970826 ! 301: C**** 02980826 ! 302: C**** FORMAT STATEMENTS FOR REPORT FOOTINGS 02990826 ! 303: C**** 03000826 ! 304: 90016 FORMAT (1H ,/,2H *,A5,4HEND*,14X,14HEND OF TEST - ,A5,/) 03010826 ! 305: 90018 FORMAT (1H ,A13,13X,A20,7H * ,A10,1H/, 03020826 ! 306: 1 A13) 03030826 ! 307: 90019 FORMAT (1H ,26HFOR OFFICIAL USE ONLY ,35X,15HCOPYRIGHT 1982) 03040826 ! 308: C**** 03050826 ! 309: C**** FORMAT STATEMENTS FOR RUN SUMMARY 03060826 ! 310: C**** 03070826 ! 311: 90020 FORMAT (1H ,21X,I5,13H TESTS PASSED) 03080826 ! 312: 90022 FORMAT (1H ,21X,I5,13H TESTS FAILED) 03090826 ! 313: 90024 FORMAT (1H ,21X,I5,14H TESTS DELETED) 03100826 ! 314: 90026 FORMAT (1H ,21X,I5,25H TESTS REQUIRE INSPECTION) 03110826 ! 315: 90028 FORMAT (1H ,21X,I5,4H OF ,I3,15H TESTS EXECUTED) 03120826 ! 316: CBE** ********************** BBCFMT0B **********************************03130826 ! 317: C***** 03140826 ! 318: C***** END OF TEST SEGMENT 200 03150826 ! 319: STOP 03160826 ! 320: END 03170826 ! 321: 03180826
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.