|
|
1.1 root 1: C***********************************************************************00010827
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 00020827
6: C***** FM827 00030827
7: C***** YDFOR - (202) 00040827
8: C***** 00050827
9: C***********************************************************************00060827
10: C***** GENERAL PURPOSE ANS REF 00070827
11: C***** TEST DOUBLE PRECISION TRIGONOMETRIC FORMULA 15.3 00080827
12: C***** TABLE 5 00090827
13: CBB** ********************** BBCCOMNT **********************************00100827
14: C**** 00110827
15: C**** 1978 FORTRAN COMPILER VALIDATION SYSTEM 00120827
16: C**** VERSION 2.0 00130827
17: C**** 00140827
18: C**** 00150827
19: C**** SUGGESTIONS AND COMMENTS SHOULD BE FORWARDED TO 00160827
20: C**** GENERAL SERVICES ADMINISTRATION 00170827
21: C**** FEDERAL SOFTWARE TESTING CENTER 00180827
22: C**** 5203 LEESBURG PIKE, SUITE 1100 00190827
23: C**** FALLS CHURCH, VA. 22041 00200827
24: C**** 00210827
25: C**** (703) 756-6153 00220827
26: C**** 00230827
27: CBE** ********************** BBCCOMNT **********************************00240827
28: C***** 00250827
29: C***** S P E C I F I C A T I O N S SEGMENT 202 00260827
30: DOUBLE PRECISION AVD, BVD, CVD, DVD, PIVD, DVCORR 00270827
31: C***** 00280827
32: CBB** ********************** BBCINITA **********************************00290827
33: C**** SPECIFICATION STATEMENTS 00300827
34: C**** 00310827
35: CHARACTER ZVERS*13, ZVERSD*17, ZDATE*17, ZPROG*5, ZCOMPL*20, 00320827
36: 1 ZNAME*20, ZTAPE*10, ZPROJ*13, REMRKS*31, ZTAPED*13 00330827
37: CBE** ********************** BBCINITA **********************************00340827
38: CBB** ********************** BBCINITB **********************************00350827
39: C**** INITIALIZE SECTION 00360827
40: DATA ZVERS, ZVERSD, ZDATE 00370827
41: 1 /'VERSION 2.0 ', '82/08/02*18.33.46', '*NO DATE*TIME'/ 00380827
42: DATA ZCOMPL, ZNAME, ZTAPE 00390827
43: 1 /'*NONE SPECIFIED*', '*NO COMPANY NAME*', '*NO TAPE*'/ 00400827
44: DATA ZPROJ, ZTAPED, ZPROG 00410827
45: 1 /'*NO PROJECT*', '*NO TAPE DATE', 'XXXXX'/ 00420827
46: DATA REMRKS /' '/ 00430827
47: C**** THE FOLLOWING 9 COMMENT LINES (CZ01, CZ02, ...) CAN BE REPLACED 00440827
48: C**** FOR IDENTIFYING THE TEST ENVIRONMENT 00450827
49: C**** 00460827
50: CZ01 ZVERS = 'VERSION OF THE COMPILER VALIDATION SYSTEM' 00470827
51: CZ02 ZVERSD = 'CREATION DATE/TIME OF THE COMPILER VALIDATION SYSTEM' 00480827
52: CZ03 ZPROG = 'PROGRAM NAME' 00490827
53: ZDATE = '07-Nov-85 ' *RP
54: ZCOMPL = 'CCI 5.2 ' *RP
55: ZPROJ = 'TC-85- -410' *RP
56: ZNAME = ' ' *RP
57: ZTAPE = ' ' *RP
58: ZTAPED = '850703 ' *RP
59: C 00560827
60: IVPASS = 0 00570827
61: IVFAIL = 0 00580827
62: IVDELE = 0 00590827
63: IVINSP = 0 00600827
64: IVTOTL = 0 00610827
65: IVTOTN = 0 00620827
66: ICZERO = 0 00630827
67: C 00640827
68: C I01 CONTAINS THE LOGICAL UNIT NUMBER FOR THE CARD READER. 00650827
69: I01 = 05 00660827
70: C I02 CONTAINS THE LOGICAL UNIT NUMBER FOR THE PRINTER. 00670827
71: I02 = 06 00680827
72: C 00690827
73: I01 = 5 00700827
74: C THE CX010 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I01 = 5 00710827
75: CX011 REPLACED BY FEXEC X-011 CONTROL CARD. CX011 IS FOR SYSTEMS 00720827
76: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX010. 00730827
77: C 00740827
78: I02 = 6 00750827
79: C THE CX020 CARD IS FOR OVERRIDING THE PROGRAM DEFAULT I02= 6 00760827
80: CX021 REPLACED BY FEXEC X-021 CONTROL CARD. CX021 IS FOR SYSTEMS 00770827
81: C REQUIRING ADDITIONAL STATEMENTS FOR FILES ASSOCIATED WITH CX020. 00780827
82: C 00790827
83: CBE** ********************** BBCINITB **********************************00800827
84: NUVI = I02 00810827
85: IVTOTL = 10 00820827
86: ZPROG = 'FM827' 00830827
87: CBB** ********************** BBCHED0A **********************************00840827
88: C**** 00850827
89: C**** WRITE REPORT TITLE 00860827
90: C**** 00870827
91: WRITE (I02, 90002) 00880827
92: WRITE (I02, 90006) 00890827
93: WRITE (I02, 90007) 00900827
94: WRITE (I02, 90008) ZVERS, ZVERSD 00910827
95: WRITE (I02, 90009) ZPROG, ZPROG 00920827
96: WRITE (I02, 90010) ZDATE, ZCOMPL 00930827
97: CBE** ********************** BBCHED0A **********************************00940827
98: C***** 00950827
99: C***** HEADER FOR SEGMENT 202 00960827
100: WRITE(NUVI,20200) 00970827
101: 20200 FORMAT(1H , / 35H YDFOR - (202) INTRINSIC FUNCTIONS// 00980827
102: 1 41H DOUBLE PRECISION TRIGONOMETRIC FORMULAE// 00990827
103: 2 17H ANS REF. - 15.3) 01000827
104: CBB** ********************** BBCHED0B **********************************01010827
105: C**** WRITE DETAIL REPORT HEADERS 01020827
106: C**** 01030827
107: WRITE (I02,90004) 01040827
108: WRITE (I02,90004) 01050827
109: WRITE (I02,90013) 01060827
110: WRITE (I02,90014) 01070827
111: WRITE (I02,90015) IVTOTL 01080827
112: CBE** ********************** BBCHED0B **********************************01090827
113: C***** 01100827
114: PIVD = 3.1415926535897932384626434D0 01110827
115: C***** 01120827
116: CT001* TEST 1 LN(EXP(X)) = X 01130827
117: IVTNUM = 1 01140827
118: BVD = 17.5D0 01150827
119: AVD = DLOG(DEXP(1.75D0)) - BVD / 10.0D0 01160827
120: IF (AVD + 0.5000000000D-09) 20010, 10010, 40010 01170827
121: 40010 IF (AVD - 0.5000000000D-09) 10010, 10010, 20010 01180827
122: 10010 IVPASS = IVPASS + 1 01190827
123: WRITE (NUVI, 80002) IVTNUM 01200827
124: GO TO 0011 01210827
125: 20010 IVFAIL = IVFAIL + 1 01220827
126: DVCORR = 0.0D+00 01230827
127: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01240827
128: 0011 CONTINUE 01250827
129: CT002* TEST 2 SIN**2 + COS**2 = 1 01260827
130: IVTNUM = 2 01270827
131: BVD = 10.0D0 / 4.0D0 01280827
132: CVD = DSIN(BVD) ** 2 01290827
133: DVD = DCOS(BVD) ** 2 01300827
134: AVD = CVD + DVD - 1.0D0 01310827
135: IF (AVD + 0.5000000000D-09) 20020, 10020, 40020 01320827
136: 40020 IF (AVD - 0.5000000000D-09) 10020, 10020, 20020 01330827
137: 10020 IVPASS = IVPASS + 1 01340827
138: WRITE (NUVI, 80002) IVTNUM 01350827
139: GO TO 0021 01360827
140: 20020 IVFAIL = IVFAIL + 1 01370827
141: DVCORR = 0.0D+00 01380827
142: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01390827
143: 0021 CONTINUE 01400827
144: CT003* TEST 3 SIN(2X) = 2*SIN(X)*COS(X) 01410827
145: IVTNUM = 3 01420827
146: BVD = 8.5D0 01430827
147: CVD = BVD * (-0.5D0) 01440827
148: AVD = (DSIN(-4.25D0) * DCOS(CVD)) * 2.0D0 - DSIN(-8.5D0) 01450827
149: IF (AVD + 0.5000000000D-09) 20030, 10030, 40030 01460827
150: 40030 IF (AVD - 0.5000000000D-09) 10030, 10030, 20030 01470827
151: 10030 IVPASS = IVPASS + 1 01480827
152: WRITE (NUVI, 80002) IVTNUM 01490827
153: GO TO 0031 01500827
154: 20030 IVFAIL = IVFAIL + 1 01510827
155: DVCORR = 0.0D+00 01520827
156: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01530827
157: 0031 CONTINUE 01540827
158: CT004* TEST 4 ARCSIN(X) = ARCCOS(1 - X**2) 01550827
159: IVTNUM = 4 01560827
160: AVD = DASIN(-0.875D0) + DACOS(DSQRT(1.0D0 - (0.875D0) ** 2)) 01570827
161: IF (AVD + 0.5000000000D-09) 20040, 10040, 40040 01580827
162: 40040 IF (AVD - 0.5000000000D-09) 10040, 10040, 20040 01590827
163: 10040 IVPASS = IVPASS + 1 01600827
164: WRITE (NUVI, 80002) IVTNUM 01610827
165: GO TO 0041 01620827
166: 20040 IVFAIL = IVFAIL + 1 01630827
167: DVCORR = 0.0D+00 01640827
168: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01650827
169: 0041 CONTINUE 01660827
170: CT005* TEST 5 TAN(X)**2 - 1 = -COS(2X)/COS(X)**2 01670827
171: IVTNUM = 5 01680827
172: BVD = 7.0D0 01690827
173: AVD = DCOS(1.75D0) / DCOS(BVD / 8.0D0) ** 2 01700827
174: 1 + DTAN(0.875D0) ** 2 - 1.0D0 01710827
175: IF (AVD + 0.5000000000D-09) 20050, 10050, 40050 01720827
176: 40050 IF (AVD - 0.5000000000D-09) 10050, 10050, 20050 01730827
177: 10050 IVPASS = IVPASS + 1 01740827
178: WRITE (NUVI, 80002) IVTNUM 01750827
179: GO TO 0051 01760827
180: 20050 IVFAIL = IVFAIL + 1 01770827
181: DVCORR = 0.0D+00 01780827
182: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01790827
183: 0051 CONTINUE 01800827
184: CT006* TEST 6 ATAN(X/Y) = ATAN2(X,Y), Y>0 01810827
185: IVTNUM = 6 01820827
186: BVD = 12.0D0 01830827
187: CVD = DATAN2(BVD / 4.0D0, BVD / 3.0D0) 01840827
188: AVD = CVD - DATAN(0.75D0) 01850827
189: IF (AVD + 0.5000000000D-09) 20060, 10060, 40060 01860827
190: 40060 IF (AVD - 0.5000000000D-09) 10060, 10060, 20060 01870827
191: 10060 IVPASS = IVPASS + 1 01880827
192: WRITE (NUVI, 80002) IVTNUM 01890827
193: GO TO 0061 01900827
194: 20060 IVFAIL = IVFAIL + 1 01910827
195: DVCORR = 0.0D+00 01920827
196: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 01930827
197: 0061 CONTINUE 01940827
198: CT007* TEST 7 SQRT(X)**2 = X 01950827
199: IVTNUM = 7 01960827
200: AVD = DSQRT(9.125D0) ** 2 - 9.125D0 01970827
201: IF (AVD + 0.5000000000D-09) 20070, 10070, 40070 01980827
202: 40070 IF (AVD - 0.5000000000D-09) 10070, 10070, 20070 01990827
203: 10070 IVPASS = IVPASS + 1 02000827
204: WRITE (NUVI, 80002) IVTNUM 02010827
205: GO TO 0071 02020827
206: 20070 IVFAIL = IVFAIL + 1 02030827
207: DVCORR = 0.0D+00 02040827
208: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02050827
209: 0071 CONTINUE 02060827
210: CT008* TEST 8 LN(X) = LN(10) * LOG10(X) 02070827
211: IVTNUM = 8 02080827
212: BVD = 62.5D0 / 1000.0D0 02090827
213: AVD = DLOG10(BVD) * DLOG(10.0D0) - DLOG(0.0625D0) 02100827
214: IF (AVD + 0.5000000000D-09) 20080, 10080, 40080 02110827
215: 40080 IF (AVD - 0.5000000000D-09) 10080, 10080, 20080 02120827
216: 10080 IVPASS = IVPASS + 1 02130827
217: WRITE (NUVI, 80002) IVTNUM 02140827
218: GO TO 0081 02150827
219: 20080 IVFAIL = IVFAIL + 1 02160827
220: DVCORR = 0.0D+00 02170827
221: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02180827
222: 0081 CONTINUE 02190827
223: CT009* TEST 9 COSH**2 - SINH**2 = 1 02200827
224: IVTNUM = 9 02210827
225: BVD = 0.125D0 02220827
226: CVD = DSINH(2.125D0) 02230827
227: DVD = DCOSH(2.0D0 + BVD) 02240827
228: AVD = DVD ** 2 - CVD ** 2 - DCOSH(0.0D0) 02250827
229: IF (AVD + 0.5000000000D-09) 20090, 10090, 40090 02260827
230: 40090 IF (AVD - 0.5000000000D-09) 10090, 10090, 20090 02270827
231: 10090 IVPASS = IVPASS + 1 02280827
232: WRITE (NUVI, 80002) IVTNUM 02290827
233: GO TO 0091 02300827
234: 20090 IVFAIL = IVFAIL + 1 02310827
235: DVCORR = 0.0D+00 02320827
236: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02330827
237: 0091 CONTINUE 02340827
238: CT010* TEST 10 TANH(X) = 1 - 2/(EXP(2X)+1) 02350827
239: IVTNUM = 10 02360827
240: BVD = 5.0D0 02370827
241: CVD = 2.0D0 02380827
242: DVD = DLOG10(BVD * CVD) - DSQRT(4.0D0) / 02390827
243: 1 (DEXP(2.0D0 * (BVD - CVD)) + DCOS(0.0D0)) 02400827
244: AVD = DVD - DTANH(3.0D0) 02410827
245: IF (AVD + 0.5000000000D-09) 20100, 10100, 40100 02420827
246: 40100 IF (AVD - 0.5000000000D-09) 10100, 10100, 20100 02430827
247: 10100 IVPASS = IVPASS + 1 02440827
248: WRITE (NUVI, 80002) IVTNUM 02450827
249: GO TO 0101 02460827
250: 20100 IVFAIL = IVFAIL + 1 02470827
251: DVCORR = 0.0D+00 02480827
252: WRITE (NUVI, 80031) IVTNUM, AVD, DVCORR 02490827
253: 0101 CONTINUE 02500827
254: C***** 02510827
255: CBB** ********************** BBCSUM0 **********************************02520827
256: C**** WRITE OUT TEST SUMMARY 02530827
257: C**** 02540827
258: IVTOTN = IVPASS + IVFAIL + IVDELE + IVINSP 02550827
259: WRITE (I02, 90004) 02560827
260: WRITE (I02, 90014) 02570827
261: WRITE (I02, 90004) 02580827
262: WRITE (I02, 90020) IVPASS 02590827
263: WRITE (I02, 90022) IVFAIL 02600827
264: WRITE (I02, 90024) IVDELE 02610827
265: WRITE (I02, 90026) IVINSP 02620827
266: WRITE (I02, 90028) IVTOTN, IVTOTL 02630827
267: CBE** ********************** BBCSUM0 **********************************02640827
268: CBB** ********************** BBCFOOT0 **********************************02650827
269: C**** WRITE OUT REPORT FOOTINGS 02660827
270: C**** 02670827
271: WRITE (I02,90016) ZPROG, ZPROG 02680827
272: WRITE (I02,90018) ZPROJ, ZNAME, ZTAPE, ZTAPED 02690827
273: WRITE (I02,90019) 02700827
274: CBE** ********************** BBCFOOT0 **********************************02710827
275: CBB** ********************** BBCFMT0A **********************************02720827
276: C**** FORMATS FOR TEST DETAIL LINES 02730827
277: C**** 02740827
278: 80000 FORMAT (1H ,2X,I3,4X,7HDELETED,32X,A31) 02750827
279: 80002 FORMAT (1H ,2X,I3,4X,7H PASS ,32X,A31) 02760827
280: 80004 FORMAT (1H ,2X,I3,4X,7HINSPECT,32X,A31) 02770827
281: 80008 FORMAT (1H ,2X,I3,4X,7H FAIL ,32X,A31) 02780827
282: 80010 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,15X,10HCOMPUTED= , 02790827
283: 1I6,/,1H ,15X,10HCORRECT= ,I6) 02800827
284: 80012 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02810827
285: 1E12.5,/,1H ,16X,10HCORRECT= ,E12.5) 02820827
286: 80018 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02830827
287: 1A21,/,1H ,16X,10HCORRECT= ,A21) 02840827
288: 80020 FORMAT (1H ,16X,10HCOMPUTED= ,A21,1X,A31) 02850827
289: 80022 FORMAT (1H ,16X,10HCORRECT= ,A21,1X,A31) 02860827
290: 80024 FORMAT (1H ,16X,10HCOMPUTED= ,I6,16X,A31) 02870827
291: 80026 FORMAT (1H ,16X,10HCORRECT= ,I6,16X,A31) 02880827
292: 80028 FORMAT (1H ,16X,10HCOMPUTED= ,E12.5,10X,A31) 02890827
293: 80030 FORMAT (1H ,16X,10HCORRECT= ,E12.5,10X,A31) 02900827
294: 80050 FORMAT (1H ,48X,A31) 02910827
295: CBE** ********************** BBCFMT0A **********************************02920827
296: CBB** ********************** BBCFMAT1 **********************************02930827
297: C**** FORMATS FOR TEST DETAIL LINES - FULL LANGUAGE 02940827
298: C**** 02950827
299: 80031 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 02960827
300: 1D17.10,/,1H ,16X,10HCORRECT= ,D17.10) 02970827
301: 80033 FORMAT (1H ,16X,10HCOMPUTED= ,D17.10,10X,A31) 02980827
302: 80035 FORMAT (1H ,16X,10HCORRECT= ,D17.10,10X,A31) 02990827
303: 80037 FORMAT (1H ,16X,10HCOMPUTED= ,1H(,E12.5,2H, ,E12.5,1H),6X,A31) 03000827
304: 80039 FORMAT (1H ,16X,10HCORRECT= ,1H(,E12.5,2H, ,E12.5,1H),6X,A31) 03010827
305: 80041 FORMAT (1H ,16X,10HCOMPUTED= ,1H(,F12.5,2H, ,F12.5,1H),6X,A31) 03020827
306: 80043 FORMAT (1H ,16X,10HCORRECT= ,1H(,F12.5,2H, ,F12.5,1H),6X,A31) 03030827
307: 80045 FORMAT (1H ,2X,I3,4X,7H FAIL ,/,1H ,16X,10HCOMPUTED= , 03040827
308: 11H(,F12.5,2H, ,F12.5,1H)/,1H ,16X,10HCORRECT= , 03050827
309: 21H(,F12.5,2H, ,F12.5,1H)) 03060827
310: CBE** ********************** BBCFMAT1 **********************************03070827
311: CBB** ********************** BBCFMT0B **********************************03080827
312: C**** FORMAT STATEMENTS FOR PAGE HEADERS 03090827
313: C**** 03100827
314: 90002 FORMAT (1H1) 03110827
315: 90004 FORMAT (1H ) 03120827
316: 90006 FORMAT (1H ,20X,31HFEDERAL SOFTWARE TESTING CENTER) 03130827
317: 90007 FORMAT (1H ,19X,34HFORTRAN COMPILER VALIDATION SYSTEM) 03140827
318: 90008 FORMAT (1H ,21X,A13,A17) 03150827
319: 90009 FORMAT (1H ,/,2H *,A5,6HBEGIN*,12X,15HTEST RESULTS - ,A5,/) 03160827
320: 90010 FORMAT (1H ,8X,16HTEST DATE*TIME= ,A17,15H - COMPILER= ,A20) 03170827
321: 90013 FORMAT (1H ,8H TEST ,10HPASS/FAIL ,6X,17HDISPLAYED RESULTS, 03180827
322: 1 7X,7HREMARKS,24X) 03190827
323: 90014 FORMAT (1H ,46H----------------------------------------------, 03200827
324: 1 33H---------------------------------) 03210827
325: 90015 FORMAT (1H ,48X,17HTHIS PROGRAM HAS ,I3,6H TESTS,/) 03220827
326: C**** 03230827
327: C**** FORMAT STATEMENTS FOR REPORT FOOTINGS 03240827
328: C**** 03250827
329: 90016 FORMAT (1H ,/,2H *,A5,4HEND*,14X,14HEND OF TEST - ,A5,/) 03260827
330: 90018 FORMAT (1H ,A13,13X,A20,7H * ,A10,1H/, 03270827
331: 1 A13) 03280827
332: 90019 FORMAT (1H ,26HFOR OFFICIAL USE ONLY ,35X,15HCOPYRIGHT 1982) 03290827
333: C**** 03300827
334: C**** FORMAT STATEMENTS FOR RUN SUMMARY 03310827
335: C**** 03320827
336: 90020 FORMAT (1H ,21X,I5,13H TESTS PASSED) 03330827
337: 90022 FORMAT (1H ,21X,I5,13H TESTS FAILED) 03340827
338: 90024 FORMAT (1H ,21X,I5,14H TESTS DELETED) 03350827
339: 90026 FORMAT (1H ,21X,I5,25H TESTS REQUIRE INSPECTION) 03360827
340: 90028 FORMAT (1H ,21X,I5,4H OF ,I3,15H TESTS EXECUTED) 03370827
341: CBE** ********************** BBCFMT0B **********************************03380827
342: C***** 03390827
343: C***** END OF TEST SEGMENT 202 03400827
344: STOP 03410827
345: END 03420827
346: 03430827
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.