C***** PART7 *****************************************************H0002700 C***** H0002705 C***** ANSI FORTRAN (X3.9-1966) TEST PROGRAMS H0002710 C***** H0002715 C***** PREPARED BY THE NATIONAL BUREAU OF STANDARDS VERSION 3 H0002720 C***** H0002725 C***** JUNE 1973 H0002730 C***** H0002735 C***** PART 7 OF 14 PARTS H0002740 C***** H0002745 C***** SEGMENTS INCLUDED H0002750 C***** H0002755 C***** EXPON - 080 EXP H0002760 C***** H0002765 C***** DEXPO - 081 DEXP H0002770 C***** H0002775 C***** CEXPO - 082 CEXP H0002780 C***** H0002785 C***** LOGTM - 083 ALOG H0002790 C***** H0002795 C***** DPLOG - 084 DLOG H0002800 C***** H0002805 C***** CXLOG - 085 CLOG H0002810 C***** H0002815 C***** COLOG - 086 ALOG10 H0002820 C***** H0002825 C***** DCLOG - 087 DLOG10 H0002830 C***** H0002835 C***** SINUS - 088 SIN H0002840 C***** H0002845 C***** DPSIN - 089 DSIN H0002850 C***** H0002855 C***** CSICO - 090 CSIN (AND CCOS) H0002860 C***** H0002865 C***** COSNS - 091 COS H0002870 C***** H0002875 C***** DPCOS - 092 DCOS H0002880 C***** H0012700 C***** THE FOLLOWING SPECIFICATIONS ARE TO BE USED ONLY WHEN SEGMENTS H0012705 C***** 080,081,082,083,084,085,086,087,088,089,090,091,092 H0012710 C***** ARE RUN AS ONE MAIN PROGRAM. H0012715 C***** H0012720 DIMENSION L1I (10) H0012725 DOUBLE PRECISION AVD, BVD, CVD, DVD, EVD, FVD, GVD, XVD, PIVD H0012730 COMPLEX EP1C(30), AVC, BVC H0012735 C***** H0012740 C***** END OF SPECIFICATIONS FOR SEGMENTS H0012745 C***** 080,081,082,083,084,085,086,087,088,089,090,091,092 H0012750 C***********************************************************************H0800010 C***** H0800020 C***** EXPON - 080 H0800030 C***** H0800040 C***********************************************************************H0800050 C***** GENERAL PURPOSE ASA REFH0800060 C***** .TO TEST BASIC EXTERNAL FUNCTION - EXP - EXPONENTIAL 8.3.3 H0800070 C***** .USED IN SIMPLE ARITHMETIC EXPRESSIONS TABLE 4H0800080 C***** .INTRINSIC FUNCTIONS ABS AND SIGN ASSUMED WORKING H0800090 C***** ARGUMENTS ARE POWERS OF 2 H0800100 C***** H0800110 C***** S P E C I F I C A T I O N S SEGMENT 080 H0800120 C***** H0012755 C***** WHEN EXECUTING ONLY SEGMENT 080, REMOVE THE PRECEDING H0012760 C***** SPECIFICATIONS. THIS SEGMENT HAS NO SPECIFICATIONS. H0012765 C***** H0800130 C***** I N P U T - O U T P U T T A P E ASSIGNMENT STATEMENTS H0800140 IRVI = 5 H0072700 NUVI = 6 H0072705 C***** IDENTIFY THE SOURCE OF THE TEST PROGRAMS H0072710 WRITE(NUVI,0071) H0072715 0071 FORMAT (41H1 F O R T R A N T E S T P R O G R A M S// H0072720 1 42H PREPARED BY NATIONAL BUREAU OF STANDARDS// H0072725 3 37H FOR USE ON LARGE FORTRAN PROCESSORS // H0072730 4 42H IN ACCORDANCE WITH ASA FORTRAN X3.9-1966// H0072735 5 23H VERSION 3 PART 7 ///) H0072740 C***** 3 OF 6 INPUT CARDS IDENTIFY THE USERS SYSTEM AND COMPILER H0072745 C PREPARED BY USER H0072750 C READ, NO LIST H0072755 C PREPARED BY USER H0072760 C READ, NO LIST H0072765 C PREPARED BY USER H0072770 C READ, NO LIST H0072775 C READ(IRVI,0070) H0072780 C READ(IRVI,0072) H0072785 C READ(IRVI,0073) H0072790 0070 FORMAT(40H BASED ON ASA FORTRAN X3.9-1966 /) H0072795 0072 FORMAT(40H TEST PROGRAMS /) H0072800 0073 FORMAT(40H FORTRAN COMPILER /) H0072805 WRITE(NUVI,0070) H0072810 WRITE(NUVI,0072) H0072815 WRITE(NUVI,0073) H0072820 WRITE(NUVI,800) H0800150 800 FORMAT(15H1 EXPON - (080)//31H BASIC EXTERNAL FUNCTION -EXP- H0800160 1//26H (EXPONENTIAL -TYPE REAL) H0800170 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0800180 3 HOLLERITH INFORMATION//9H RESULTS) H0800190 C***** HEADER FOR SEGMENT 080 WRITTEN H0800200 C***** ARGUMENT RANGE FROM -16.0 TO +16.0 H0800210 AVS = -16.0 H0800220 CVS = 4.0 H0800230 BVS = EXP(AVS) H0800240 WRITE (NUVI,801) BVS H0800250 BVS = EXP(2. * CVS + AVS) H0800260 WRITE (NUVI,802) BVS H0800270 BVS = EXP(AVS + (3. * CVS)) H0800280 WRITE (NUVI, 803) BVS H0800290 BVS = EXP(ABS(AVS) + AVS) H0800300 WRITE (NUVI, 804) BVS H0800310 BVS = EXP(-AVS / CVS) H0800320 WRITE (NUVI, 805) BVS H0800330 BVS = EXP(SIGN(AVS + CVS * 2.0, CVS)) H0800340 WRITE (NUVI, 806) BVS H0800350 BVS = EXP(CVS + ABS(AVS) - 4.0) H0800360 WRITE(NUVI, 807) BVS H0800370 WRITE (NUVI, 808) H0800380 801 FORMAT( 9H0 X=-16.0,5X,25H0.1125351747192591145E-06/E27.7) H0800390 802 FORMAT( 9H0 X= -8.0,5X,25H0.3354626279025118388E-03/E27.7) H0800400 803 FORMAT( 9H0 X= -4.0,5X,25H0.1831563888873418029E-01/E27.7) H0800410 804 FORMAT( 9H0 X= 0.0,5X,25H0.1000000000000000000E+01/E27.7) H0800420 805 FORMAT( 9H0 X= 4.0,5X,25H0.5459815003314423908E+02/E27.7) H0800430 806 FORMAT( 9H0 X= 8.0,5X,25H0.2980957987041728275E+04/E27.7) H0800440 807 FORMAT( 9H0 X= 16.0,5X,25H0.8886110520507872637E+07/E27.7) H0800450 808 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0800460 1 PRINTED TO ,8H7 DIGITS) H0800470 C***** END OF TEST SEGMENT 080 H0800480 C***** WHEN EXECUTING ONLY SEGMENT 080, THE STOP AND END CARDS H0800490 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0800500 C***** IN COLUMNS 1 AND 2 REMOVED. H0800510 C= STOP H0800520 C= END H0800530 C***********************************************************************H0810010 C***** H0810020 C***** DEXPO - 081 H0810030 C***** H0810040 C***********************************************************************H0810050 C***** GENERAL PURPOSE H0810060 C***** .TO TEST BASIC EXTERNAL FUNCTION - DEXP - EXPONENTIAL ASA REFH0810070 C***** USED IN SIMPLE ARITHMETIC EXPRESSIONS -SAME AS 8.3.3 H0810080 C***** SEGMENT 080 EXCEPT DOUBLE PRECISION TABLE 4H0810090 C***** INTRINSIC FUNCTIONS DABS AND DSIGN ASSUMED WORKING H0810100 C***** ARGUMENTS RANGE FROM -16.0D0 TO +16.0D0, POWERS OF 2 H0810110 C***** H0810120 C***** S P E C I F I C A T I O N S SEGMENT 081 H0810130 C***** H0012770 C***** WHEN EXECUTING ONLY SEGMENT 081, THE SPECIFICATION STATEMENTS H0012775 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0012780 C***** IN COLUMNS 1 AND 2 REMOVED. H0012785 C***** H0012790 C= DOUBLE PRECISION AVD, BVD, CVD H0012795 C***** H0012800 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0810140 C***** H0072825 C***** WHEN EXECUTING ONLY SEGMENT 081, THE FOLLOWING STATEMENT H0072830 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072835 C= NUVI = 6 H0072840 C***** H0072845 810 FORMAT(15H1 DEXPO - (081)//32H BASIC EXTERNAL FUNCTION -DEXP- H0810150 1//38H (EXPONENTIAL -TYPE DOUBLE PRECISION) H0810160 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0810170 3 HOLLERITH INFORMATION//9H RESULTS) H0810180 WRITE (NUVI, 810) H0810190 C***** HEADER FOR SEGMENT 081 WRITTEN H0810200 AVD = -16.0D0 H0810210 CVD = 4.0D0 H0810220 BVD = DEXP(AVD) H0810230 WRITE (NUVI, 811) BVD H0810240 BVD = DEXP(2. * CVD + AVD) H0810250 WRITE (NUVI, 812) BVD H0810260 BVD = DEXP(AVD + (3. * CVD)) H0810270 WRITE (NUVI, 813) BVD H0810280 BVD = DEXP(DABS(AVD) + AVD) H0810290 WRITE( NUVI, 814) BVD H0810300 BVD = DEXP(-AVD / CVD) H0810310 WRITE (NUVI, 815) BVD H0810320 BVD = DEXP(DSIGN(AVD + CVD * 2.0D0, CVD)) H0810330 WRITE (NUVI, 816) BVD H0810340 BVD = DEXP(CVD + DABS(AVD) - 4.0) H0810350 WRITE (NUVI, 817) BVD H0810360 WRITE (NUVI, 818) H0810370 811 FORMAT( 9H0 X=-16.0,5X,25H0.1125351747192591145D-06/D34.14) H0810380 812 FORMAT( 9H0 X= -8.0,5X,25H0.3354626279025118388D-03/D34.14) H0810390 813 FORMAT( 9H0 X= -4.0,5X,25H0.1831563888873418029D-01/D34.14) H0810400 814 FORMAT( 9H0 X= 0.0,5X,25H0.1000000000000000000D+01/D34.14) H0810410 815 FORMAT( 9H0 X= 4.0,5X,25H0.5459815003314423908D+02/D34.14) H0810420 816 FORMAT( 9H0 X= 8.0,5X,25H0.2980957987041728275D+04/D34.14) H0810430 817 FORMAT( 9H0 X= 16.0,5X,25H0.8886110520507872637D+07/D34.14) H0810440 818 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0810450 A PRINTED TO ,9H14 DIGITS) H0810460 C***** END OF TEST SEGMENT 081 H0810470 C***** WHEN EXECUTING ONLY SEGMENT 081, THE STOP AND END CARDS H0810480 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0810490 C***** IN COLUMNS 1 AND 2 REMOVED. H0810500 C= STOP H0810510 C= END H0810520 C***********************************************************************H0820010 C****** H0820020 C***** CEXPO - (082) H0820030 C****** H0820040 C***********************************************************************H0820050 C***** GENERAL PURPOSE ASA REF.H0820060 C***** .TO TEST THE BASIC EXTERNAL FUNCTION- CEXP 8.3.3 H0820070 C***** .TESTING RANGE EXTENDS FROM 0 TO 16 FOR MODULUS (TABLE 4)H0820080 C***** AND ARGUMENT, VARIES BY STEPS OF PI/3 MAGNITUDE H0820090 C***** .INTRINSIC FUNCTIONS CMPLX, SNGL, MOD ASSUMED WORKING H0820100 C***** H0820110 C***** S P E C I F I C A T I O N S SEGMENT 082 H0820120 C***** H0012805 C***** WHEN EXECUTING ONLY SEGMENT 082, THE SPECIFICATION STATEMENTS H0012810 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0012815 C***** IN COLUMNS 1 AND 2 REMOVED. H0012820 C***** H0012825 C= COMPLEX EP1C(30), AVC, BVC H0012830 C= DOUBLE PRECISION AVD, BVD H0012835 C***** H0012840 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0820130 C***** H0072850 C***** WHEN EXECUTING ONLY SEGMENT 082, THE FOLLOWING STATEMENT H0072855 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072860 C= NUVI = 6 H0072865 C***** H0072870 WRITE(NUVI,820) H0820140 820 FORMAT(15H1 CEXPO - (082)//32H BASIC EXTERNAL FUNCTION -CEXP- H0820150 1// 29H (EXPONENTIAL -TYPE COMPLEX)//27H ASA REF.- 8.3.3 (TABLE 4H0820160 2)//20H (COMPLEX ARGUMENT)/8X,15HEXPECTED RESULT /8X,15HFUNCTION RH0820170 3ESULT) H0820180 C***** LOG OF 10 H0820190 BVD = 2.3025850929940D0 H0820200 C***** SINE OF 60 DEGREES H0820210 AVD = .86602540378444D0 H0820220 C***** INITIALIZE EP1C (EXPECTED VALUES) H0820230 EP1C(1) = CMPLX(0.5E-7,SNGL(-AVD*1.D-7)) H0820240 EP1C(2) = CMPLX(2.5E-7,SNGL(-AVD*5.D-7)) H0820250 EP1C(3) = (1.E-6,0.0) H0820260 EP1C(4) = (5.E-6,0.0) H0820270 EP1C(5) = CMPLX(0.5E-5,SNGL(AVD*1.D-5)) H0820280 EP1C(6) = CMPLX(2.5E-5,SNGL(AVD*5.D-5)) H0820290 EP1C(7) = CMPLX(-.5E-4,SNGL(AVD * 1.D-4)) H0820300 EP1C(8) = CMPLX(-2.5E-4,SNGL(AVD*5.D-4)) H0820310 EP1C(9) = (-1.E-3,0.0) H0820320 EP1C(10) = (-5.E-3,0.0) H0820330 EP1C(11) = CMPLX(-0.5E-2,SNGL(-AVD*1.D-2)) H0820340 EP1C(12) = CMPLX(-2.5E-2,SNGL(-AVD * 5.D-2)) H0820350 EP1C(13) = CMPLX(0.5E-1,SNGL(-AVD*1.D-1)) H0820360 EP1C(14) = CMPLX(2.5E-1,SNGL(-AVD*5.D-1)) H0820370 EP1C(15) = (1.0,0.0) H0820380 EP1C(16) = (5.0,0.0) H0820390 EP1C(17) = CMPLX(0.5E1,SNGL(AVD * 1.D1)) H0820400 EP1C(18) = CMPLX(2.5E1,SNGL(AVD * 5.D1)) H0820410 EP1C(19) = CMPLX(-0.5E2,SNGL(AVD * 1.D2)) H0820420 EP1C(20) = CMPLX(-2.5E2,SNGL(AVD * 5.D2)) H0820430 EP1C(21) = (-1.E3,0.0) H0820440 EP1C(22) = (-5.E3,0.0) H0820450 EP1C(23) = CMPLX(-0.5E4,SNGL(-AVD * 1.D4)) H0820460 EP1C(24) = CMPLX(-2.5E4,SNGL(-AVD * 5.D4)) H0820470 EP1C(25) = CMPLX(0.5E5,SNGL(-AVD * 1.D5)) H0820480 EP1C(26) = CMPLX(2.5E5,SNGL(-AVD * 5.D5)) H0820490 EP1C(27) = (1.E6,0.0) H0820500 EP1C(28) = (5.E6,0.0) H0820510 EP1C(29) = CMPLX(0.5E7,SNGL(AVD * 1.D7)) H0820520 EP1C(30) = CMPLX(2.5E7,SNGL(AVD * 5.D7)) H0820530 IVI = 0 H0820540 821 IVI = IVI + 1 H0820550 IF ( MOD(IVI,2).EQ.0) GO TO 822 H0820560 XIVS = ((IVI + 1)/2) - 8 H0820570 AVS = BVD * XIVS H0820580 GO TO 823 H0820590 C***** 1.609 IS LOG OF 5 H0820600 822 XIVS = (IVI / 2) - 8 H0820610 AVS = BVD * XIVS + 1.6094379124341D0 H0820620 C***** 1.047 IS PI/3 H0820630 823 AVC = CMPLX(AVS,SNGL(1.0471975511966D0 * XIVS)) H0820640 BVC = CEXP(AVC) H0820650 WRITE(NUVI, 824) AVC, EP1C(IVI), BVC H0820660 IF (IVI - 10) 825, 827, 825 H0820670 825 IF (IVI - 20) 826, 827, 826 H0820680 826 IF (IVI - 30) 821, 828, 828 H0820690 827 WRITE(NUVI, 829) H0820700 GO TO 821 H0820710 828 CONTINUE H0820720 829 FORMAT(22H1 CEXPO - (082) -CEXP-) H0820730 824 FORMAT(3H0 (,E14.7,1H,,E14.7,1H),2(/8X,2E16.7)) H0820740 C***** END OF TEST SEGMENT 082 H0820750 C***** WHEN EXECUTING ONLY SEGMENT 082, THE STOP AND END CARDS H0820760 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0820770 C***** IN COLUMNS 1 AND 2 REMOVED. H0820780 C= STOP H0820790 C= END H0820800 C***********************************************************************H0830010 C***** H0830020 C***** LOGTM - 083 H0830030 C***** H0830040 C***********************************************************************H0830050 C***** GENERAL PURPOSE H0830060 C***** .TO TEST BASIC EXTERNAL FUNCTION - ALOG - ASA REF H0830070 C***** NATURAL LOG -USED IN SIMPLE ARITHMETIC EXPRESSIONS 8.3.3 H0830080 C***** INTRINSIC FUNCTIONS ABS,AMIN1,INT,MIN0,FLOAT, TABLE 4 H0830090 C***** SIGN ASSUMED WORKING H0830100 C***** ARGUMENTS ARE POWERS(OR SUMS) OF 2 H0830110 C***** H0830120 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0830130 C***** H0072875 C***** WHEN EXECUTING ONLY SEGMENT 083, THE FOLLOWING STATEMENT H0072880 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072885 C= NUVI = 6 H0072890 C***** H0072895 830 FORMAT(15H1 LOGTM - (083)//32H BASIC EXTERNAL FUNCTION -ALOG- H0830140 1//26H (NATURAL LOG -TYPE REAL) H0830150 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0830160 3 HOLLERITH INFORMATION//9H RESULTS) H0830170 WRITE (NUVI, 830) H0830180 C***** HEADER FOR SEGMENT 083 WRITTEN H0830190 AVS = .25 H0830200 CVS = 2.0 H0830210 MVI = -2 H0830220 BVS = ALOG(AVS / 2.0) H0830230 WRITE (NUVI, 831) BVS H0830240 BVS = ALOG(AVS) H0830250 WRITE (NUVI, 832) BVS H0830260 BVS = ALOG(AVS * CVS) H0830270 WRITE (NUVI, 833) BVS H0830280 BVS = ALOG(AVS * CVS ** 2) H0830290 WRITE (NUVI, 834) BVS H0830300 BVS = ALOG(AMIN1(AVS * 2.0 + ABS(FLOAT(MVI) / CVS),CVS)) H0830310 WRITE (NUVI, 835) BVS H0830320 BVS = ALOG(SIGN(FLOAT(MIN0(MVI,INT(CVS))),AVS)) H0830330 WRITE (NUVI, 836) BVS H0830340 831 FORMAT( 9H0 X=0.125,5X,19H-2.0794415416798359/14X,F9.6) H0830350 832 FORMAT( 9H0 X=0.25 ,5X,19H-1.3862943611198906/14X,F 9.6) H0830360 833 FORMAT( 9H0 X=0.5 ,5X,19H-0.6931471805599453/14X,F10.7) H0830370 834 FORMAT( 9H0 X=1.0 ,5X,19H 0.0000000000000000/14X,F10.7) H0830380 835 FORMAT( 9H0 X=1.5 ,5X,19H 0.4054651081081644/14X,F10.7) H0830390 836 FORMAT( 9H0 X=2.0 ,5X,19H 0.6931471805599453/14X,F10.7) H0830400 WRITE (NUVI, 837) H0830410 837 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0830420 1 PRINTED TO ,8H7 DIGITS) H0830430 C***** END OF TEST SEGMENT 083 H0830440 C***** WHEN EXECUTING ONLY SEGMENT 083, THE STOP AND END CARDS H0830450 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0830460 C***** IN COLUMNS 1 AND 2 REMOVED. H0830470 C= STOP H0830480 C= END H0830490 C***********************************************************************H0840010 C***** H0840020 C***** DPLOG - 084 H0840030 C***** H0840040 C***********************************************************************H0840050 C***** GENERAL PURPOSE H0840060 C***** TO TEST BASIC EXTERNAL FUNCTION - DLOG - ASA REF H0840070 C***** NATURAL LOG -TYPE DOUBLE PRECISION 8.3.3 H0840080 C***** USED IN SIMPLE ARITHMETIC EXPRESSIONS TABLE 4 H0840090 C***** INTRINSIC FUNCTIONS DMIN1,DABS,DBLE,FLOAT,DSIGN, H0840100 C***** MIN0,DINT, ASSUMED WORKING H0840110 C***** ARGUMENTS ARE POWERS OF 2 H0840120 C***** H0840130 C***** S P E C I F I C A T I O N S SEGMENT 084 H0840140 C***** H0012845 C***** WHEN EXECUTING ONLY SEGMENT 084, THE SPECIFICATION STATEMENTS H0012850 C***** WHICH APPEAR AS COMMENT CARDS, MUST HAVE THE C= H0012855 C***** IN COLUMNS 1 AND 2 REMOVED. H0012860 C***** H0012865 C= DOUBLE PRECISION AVD, BVD, CVD H0012870 C***** H0012875 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0840150 C***** H0072900 C***** WHEN EXECUTING ONLY SEGMENT 084, THE FOLLOWING STATEMENT H0072905 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072910 C= NUVI = 6 H0072915 C***** H0072920 840 FORMAT(15H1 DPLOG - (084)//32H BASIC EXTERNAL FUNCTION -DLOG- H0840160 1//38H (NATURAL LOG -TYPE DOUBLE PRECISION) H0840170 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0840180 3 HOLLERITH INFORMATION//9H RESULTS) H0840190 WRITE (NUVI, 840) H0840200 C***** HEADER FOR SEGMENT 084 WRITTEN H0840210 AVD = .25D0 H0840220 CVD = 2.0D0 H0840230 MVI = -2 H0840240 BVD = DLOG(AVD / 2.0D0) H0840250 WRITE (NUVI, 841) BVD H0840260 BVD = DLOG(AVD) H0840270 WRITE( NUVI, 842) BVD H0840280 BVD = DLOG(AVD * CVD) H0840290 WRITE(NUVI, 843) BVD H0840300 BVD = DLOG(AVD * CVD ** 2) H0840310 WRITE (NUVI, 844) BVD H0840320 BVD = DLOG(DMIN1(AVD * 2.0D0 +DABS(DBLE(FLOAT(MVI))/CVD), CVD)) H0840330 WRITE (NUVI, 845) BVD H0840340 BVD = DLOG(DSIGN(DBLE(FLOAT(MIN0(MVI,IDINT(CVD)))),AVD)) H0840350 WRITE (NUVI, 846) BVD H0840360 WRITE (NUVI, 847) H0840370 841 FORMAT( 9H0 X=0.125,5X,23H-2.0794415416798359D+00/1PD34.13) H0840380 842 FORMAT( 9H0 X=0.25 ,5X,23H-1.3862943611198906D+00/1PD34.13) H0840390 843 FORMAT( 9H0 X=0.5 ,5X,23H-0.6931471805599453D+00/ D35.14) H0840400 844 FORMAT( 9H0 X=1.0 ,5X,23H 0.000000000000000 / D35.14) H0840410 845 FORMAT( 9H0 X=1.5 ,5X,23H 0.4054651081081644D+00/ D35.14) H0840420 846 FORMAT( 9H0 X=2.0 ,5X,23H 0.6931471805599453D+00/ D35.14) H0840430 847 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0840440 A PRINTED TO ,9H14 DIGITS) H0840450 C***** END OF TEST SEGMENT 084 H0840460 C***** WHEN EXECUTING ONLY SEGMENT 084, THE STOP AND END CARDS H0840470 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0840480 C***** IN COLUMNS 1 AND 2 REMOVED. H0840490 C= STOP H0840500 C= END H0840510 C***********************************************************************H0850010 C***** H0850020 C***** CXLOG - (085) H0850030 C***** H0850040 C***********************************************************************H0850050 C***** GENERAL PURPOSE ASA REF H0850060 C***** .TO TEST BASIC EXTERNAL FUNCTION - CLOG - ASA REF H0850070 C***** (COMPLEX LOG) 8.3.3 H0850080 C***** TESTING RANGE EXTENDS FROM 0 TO 5.E7 FOR MODULUS TABLE 4 H0850090 C***** AND ARGUMENT VARIES BY STEPS OF PI/3 MAGNITUDE H0850100 C***** INTRINSIC FUNCTIONS CMPLX, SNGL, MOD ASSUMED WORKING H0850110 C***** H0850120 C***** S P E C I F I C A T I O N S SEGMENT 085 H0850130 C***** H0012880 C***** WHEN EXECUTING ONLY SEGMENT 085, THE SPECIFICATION STATEMENTS H0012885 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0012890 C***** IN COLUMNS 1 AND 2 REMOVED. H0012895 C***** H0012900 C= COMPLEX EP1C(30), AVC, BVC H0012905 C= DOUBLE PRECISION AVD, BVD H0012910 C***** H0012915 C***** O U T P U T - T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0850140 C***** H0072925 C***** WHEN EXECUTING ONLY SEGMENT 085, THE FOLLOWING STATEMENT H0072930 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072935 C= NUVI = 6 H0072940 C***** H0072945 WRITE (NUVI, 850) H0850150 850 FORMAT( 15H1 CXLOG - (085) //32H BASIC EXTERNAL FUNCTION -CLOG- H0850160 1// 29H (NATURAL LOG -TYPE COMPLEX)//27H ASA REF.- 8.3.3 (TABLE 4H0850170 2)//20H (COMPLEX ARGUMENT)/ 8X,15HEXPECTED RESULT /8X,15HFUNCTION H0850180 3RESULT) H0850190 C***** LOG OF 10 H0850200 BVD = 2.3025850929940D0 H0850210 C***** SINE OF 60 DEGREES H0850220 AVD = .86602540378444D0 H0850230 C***** INITIALIZE EP1C (EXPECTED VALUES) H0850240 EP1C(1) = CMPLX(0.5E-7,SNGL(-AVD*1.D-7)) H0850250 EP1C(2) = CMPLX(2.5E-7,SNGL(-AVD*5.D-7)) H0850260 EP1C(3) = (1.E-6,0.0) H0850270 EP1C(4) = (5.E-6,0.0) H0850280 EP1C(5) = CMPLX(0.5E-5,SNGL(AVD*1.D-5)) H0850290 EP1C(6) = CMPLX(2.5E-5,SNGL(AVD*5.D-5)) H0850300 EP1C(7) = CMPLX(-.5E-4,SNGL(AVD * 1.D-4)) H0850310 EP1C(8) = CMPLX(-2.5E-4,SNGL(AVD*5.D-4)) H0850320 EP1C(9) = (-1.E-3,0.0) H0850330 EP1C(10) = (-5.E-3,0.0) H0850340 EP1C(11) = CMPLX(-0.5E-2,SNGL(-AVD*1.D-2)) H0850350 EP1C(12) = CMPLX(-2.5E-2,SNGL(-AVD * 5.D-2)) H0850360 EP1C(13) = CMPLX(0.5E-1,SNGL(-AVD*1.D-1)) H0850370 EP1C(14) = CMPLX(2.5E-1,SNGL(-AVD*5.D-1)) H0850380 EP1C(15) = (1.0,0.0) H0850390 EP1C(16) = (5.0,0.0) H0850400 EP1C(17) = CMPLX(0.5E1,SNGL(AVD * 1.D1)) H0850410 EP1C(18) = CMPLX(2.5E1,SNGL(AVD * 5.D1)) H0850420 EP1C(19) = CMPLX(-0.5E2,SNGL(AVD * 1.D2)) H0850430 EP1C(20) = CMPLX(-2.5E2,SNGL(AVD * 5.D2)) H0850440 EP1C(21) = (-1.E3,0.0) H0850450 EP1C(22) = (-5.E3,0.0) H0850460 EP1C(23) = CMPLX(-0.5E4,SNGL(-AVD * 1.D4)) H0850470 EP1C(24) = CMPLX(-2.5E4,SNGL(-AVD * 5.D4)) H0850480 EP1C(25) = CMPLX(0.5E5,SNGL(-AVD * 1.D5)) H0850490 EP1C(26) = CMPLX(2.5E5,SNGL(-AVD * 5.D5)) H0850500 EP1C(27) = (1.E6,0.0) H0850510 EP1C(28) = (5.E6,0.0) H0850520 EP1C(29) = CMPLX(0.5E7,SNGL(AVD * 1.D7)) H0850530 EP1C(30) = CMPLX(2.5E7,SNGL(AVD * 5.D7)) H0850540 C***** YVS COMPENSATES FOR -2PI AND +2PI GENERATED BY USE OF XIVS*PI/3 H0850550 C***** FOR EXPECTED IMAGINARY VALUES, TAKES VALUES +6,0,-6 DURING RANGEH0850560 YVS = 6. H0850570 IVI = 0 H0850580 851 IVI = IVI +1 H0850590 IF (MOD(IVI, 2) .EQ. 0) GO TO 852 H0850600 XIVS = ((IVI + 1)/2) - 8 H0850610 AVS = BVD * XIVS H0850620 GO TO 853 H0850630 C***** 1.609 IS LOG OF 5 H0850640 852 XIVS = (IVI / 2) - 8 H0850650 AVS = (BVD * XIVS) + 1.6094379124341D0 H0850660 C***** 1.047 IS PI/3 H0850670 853 AVC = CMPLX (AVS, SNGL(1.0471975511966D0 * (XIVS + YVS))) H0850680 BVC = CLOG (EP1C(IVI)) H0850690 WRITE (NUVI, 854) EP1C(IVI), AVC, BVC H0850700 IF(IVI - 10) 855, 858, 855 H0850710 855 IF (IVI - 20) 856, 859, 856 H0850720 856 IF (IVI - 22) 857, 7850, 857 H0850730 857 IF (IVI - 30) 851, 7851, 7851 H0850740 858 YVS = 0.0 H0850750 859 WRITE (NUVI, 7852) H0850760 GO TO 851 H0850770 7850 YVS = -6.0 H0850780 GO TO 851 H0850790 7851 CONTINUE H0850800 854 FORMAT(3H0 (,E14.7,1H,,E14.7,1H),2(/8X,2E16.7)) H0850810 7852 FORMAT(22H1 CXLOG - (085) -CLOG-) H0850820 C***** END OF TEST SEGMENT 085 H0850830 C***** WHEN EXECUTING ONLY SEGMENT 085, THE STOP AND END CARDS H0850840 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0850850 C***** IN COLUMNS 1 AND 2 REMOVED. H0850860 C= STOP H0850870 C= END H0850880 C***********************************************************************H0860010 C***** H0860020 C***** COLOG - 086 H0860030 C***** H0860040 C***********************************************************************H0860050 C***** GENERAL PURPOSE H0860060 C***** TO TEST BASIC EXTERNAL FUNCTION - ALOG10 - ASA REF H0860070 C***** COMMON LOG - TYPE REAL 8.3.3 H0860080 C***** USED IN SIMPLE ARITHMETIC EXPRESSIONS TABLE 4H0860090 C***** INTRINSIC FUNCTIONS ABS,AINT,AMAX1,SIGN, ASSUMED WORKING H0860100 C***** ARGUMENT RANGE 0.5 TO 16.0 ,POWERS OF 2 H0860110 C***** H0860120 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0860130 C***** H0072950 C***** WHEN EXECUTING ONLY SEGMENT 086, THE FOLLOWING STATEMENT H0072955 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072960 C= NUVI = 6 H0072965 C***** H0072970 860 FORMAT(15H1 COLOG - (086)//34H BASIC EXTERNAL FUNCTION -ALOG10- H0860140 1//25H (COMMON LOG -TYPE REAL) H0860150 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0860160 3 HOLLERITH INFORMATION//9H RESULTS) H0860170 WRITE (NUVI, 860) H0860180 C***** HEADER FOR SEGMENT 086 WRITTEN H0860190 AVS = -2.0 H0860200 CVS = -4.0 H0860210 BVS = ALOG10(AVS / CVS) H0860220 WRITE (NUVI, 861) BVS H0860230 BVS = ALOG10(ABS(AVS + 1.0)) H0860240 WRITE (NUVI, 862) BVS H0860250 BVS = ALOG10( -AVS) H0860260 WRITE (NUVI, 863) BVS H0860270 BVS = ALOG10(AINT(AVS + 2.0 - CVS)) H0860280 WRITE (NUVI, 864) BVS H0860290 BVS = ALOG10(AMAX1(AVS * CVS, CVS * 2.0)) H0860300 WRITE (NUVI, 865) BVS H0860310 BVS = ALOG10(SIGN(CVS,(-AVS)) **2) H0860320 WRITE (NUVI, 866) BVS H0860330 WRITE (NUVI, 867) H0860340 861 FORMAT( 8H0 X= 0.5,5X,25H-0.3010299956639811952137/8X, F15.7) H0860350 862 FORMAT( 8H0 X= 1.0,5X,25H 0.0000000000000000000000/8X, F15.7) H0860360 863 FORMAT( 8H0 X= 2.0,5X,25H 0.3010299956639811952137/8X, F15.7) H0860370 864 FORMAT( 8H0 X= 4.0,5X,25H 0.6020599913279623904275/8X, F15.7) H0860380 865 FORMAT( 8H0 X= 8.0,5X,25H 0.9030899869919435856412/8X, F15.7) H0860390 866 FORMAT( 8H0 X=16.0,5X,25H 1.2041199826559247808550/8X, F15.7) H0860400 867 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0860410 1 PRINTED TO ,8H7 DIGITS) H0860420 C***** END OF TEST SEGMENT 086 H0860430 C***** WHEN EXECUTING ONLY SEGMENT 086, THE STOP AND END CARDS H0860440 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0860450 C***** IN COLUMNS 1 AND 2 REMOVED. H0860460 C= STOP H0860470 C= END H0860480 C***********************************************************************H0870010 C***** H0870020 C***** DCLOG - 087 H0870030 C***** H0870040 C***********************************************************************H0870050 C***** GENERAL PURPOSE H0870060 C***** TO TEST BASIC EXTERNAL FUNCTION - DLOG10 - ASA REFH0870070 C***** COMMON LOG - TYPE DOUBLE PRECISION 8.3.3 H0870080 C***** SAME AS SEGMENT 086 EXCEPT FOR TYPE TABLE 4H0870090 C***** INTRINSIC FUNCTIONS DABS,IDINT,FLOAT,DBLE, H0870100 C***** DMAX1,DSIGN ASSUMED WORKING H0870110 C***** ARGUMENT RANGE 0.5 TO 16.0 POWERS OF 2 H0870120 C***** H0870130 C***** S P E C I F I C A T I O N S SEGMENT 087 H0870140 C***** H0012920 C***** WHEN EXECUTING ONLY SEGMENT 087, THE SPECIFICATION STATEMENTS H0012925 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0012930 C***** IN COLUMNS 1 AND 2 REMOVED. H0012935 C***** H0012940 C= DOUBLE PRECISION AVD, BVD, CVD H0012945 C***** H0012950 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0870150 C***** H0072975 C***** WHEN EXECUTING ONLY SEGMENT 087, THE FOLLOWING STATEMENT H0072980 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0072985 C= NUVI = 6 H0072990 C***** H0072995 870 FORMAT(15H1 DCLOG - (087)//34H BASIC EXTERNAL FUNCTION -DLOG10- H0870160 1//37H (COMMON LOG -TYPE DOUBLE PRECISION) H0870170 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0870180 3 HOLLERITH INFORMATION//9H RESULTS) H0870190 WRITE (NUVI, 870) H0870200 C***** HEADER FOR SEGMENT 087 WRITTEN H0870210 AVD = -2.0D0 H0870220 CVD = -4.0D0 H0870230 BVD = DLOG10(AVD / CVD) H0870240 WRITE (NUVI, 871) BVD H0870250 BVD = DLOG10(DABS(AVD + 1.0D0)) H0870260 WRITE (NUVI, 872) BVD H0870270 BVD = DLOG10( -AVD) H0870280 WRITE (NUVI, 873) BVD H0870290 BVD = DLOG10(DBLE(FLOAT(IDINT(AVD + 2.0D0 - CVD)))) H0870300 WRITE (NUVI, 874) BVD H0870310 BVD = DLOG10(DMAX1(AVD * CVD, CVD * 2.0D0)) H0870320 WRITE (NUVI, 875) BVD H0870330 BVD = DLOG10(DSIGN(CVD,(-AVD)) **2) H0870340 WRITE (NUVI, 876) BVD H0870350 WRITE (NUVI, 877) H0870360 871 FORMAT( 8H0 X= 0.5,5X,29H-0.3010299956639811952137D+00/D34.14) H0870370 872 FORMAT( 8H0 X= 1.0,5X,29H 0.0000000000000000000000 /D34.14) H0870380 873 FORMAT( 8H0 X= 2.0,5X,29H 0.3010299956639811952137D+00/D34.14) H0870390 874 FORMAT( 8H0 X= 4.0,5X,29H 0.6020599913279623904275D+00/D34.14) H0870400 875 FORMAT( 8H0 X= 8.0,5X,29H 0.9030899869919435856412D+00/D34.14) H0870410 876 FORMAT( 8H0 X=16.0,5X,29H 1.2041199826559247808550D+00/1PD33.13) H0870420 877 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0870430 A PRINTED TO ,9H14 DIGITS) H0870440 C***** END OF TEST SEGMENT 087 H0870450 C***** WHEN EXECUTING ONLY SEGMENT 087, THE STOP AND END CARDS H0870460 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0870470 C***** IN COLUMNS 1 AND 2 REMOVED. H0870480 C= STOP H0870490 C= END H0870500 C***********************************************************************H0880010 C***** H0880020 C***** SINUS - 088 H0880030 C***** H0880040 C***********************************************************************H0880050 C***** GENERAL PURPOSE ASA REFH0880060 C***** TO TEST BASIC EXTERNAL FUNCTION - SIN - 8.3.3 H0880070 C***** TRIGONOMETRIC SINE - TYPE REAL TABLE 4H0880080 C***** INTRINSIC FUNCTION SNGL ASSUMED WORKING H0880090 C***** ARGUMENTS FROM 0 TO 2 PI H0880100 C***** H0880110 C***** S P E C I F I C A T I O N S SEGMENT 088 H0880120 C***** H0012955 C***** WHEN EXECUTING ONLY SEGMENT 088, THE SPECIFICATION STATEMENTS H0012960 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0012965 C***** IN COLUMNS 1 AND 2 REMOVED. H0012970 C***** H0012975 C= DOUBLE PRECISION AVD, BVD, CVD, DVD, EVD, PIVD H0012980 C***** H0012985 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0880130 C***** H0073000 C***** WHEN EXECUTING ONLY SEGMENT 088, THE FOLLOWING STATEMENT H0073005 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0073010 C= NUVI = 6 H0073015 C***** H0073020 WRITE (NUVI, 880) H0880140 880 FORMAT(15H1 SINUS - (088)//31H BASIC EXTERNAL FUNCTION -SIN- H0880150 1//33H (TRIGONOMETRIC SINE -TYPE REAL) H0880160 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0880170 3 HOLLERITH INFORMATION//9H RESULTS) H0880180 C***** HEADER FOR SEGMENT 088 WRITTEN H0880190 AVD = 3.140625D+0 H0880200 BVD = 0.9613037109375D-3 H0880210 CVD = 0.57220458984375D-5 H0880220 DVD = 0.596046447753906D-6 H0880230 EVD = 0.31786509547056D-7 H0880240 C*****PI IS SUM OF AVD TO EVD, PARTS ARE EXPRESSED IN SUMS OF POWERS OF H0880250 C*****2, TO PERMIT A POSSIBLE 20 DECIMAL DIGIT ARGUMENT TO BE CREATED H0880260 PIVD = EVD + DVD + CVD + BVD + AVD H0880270 AVS = 1.0 H0880280 CVS = 2.0 H0880290 BVS = SIN(CVS - 2.0 * AVS) H0880300 WRITE (NUVI, 881) BVS H0880310 BVS = SIN(AVS) H0880320 WRITE (NUVI, 882) BVS H0880330 BVS = SIN (CVS) H0880340 WRITE (NUVI, 883) BVS H0880350 BVS = SIN(AVS + CVS) H0880360 WRITE (NUVI,884) BVS H0880370 BVS = SIN(SNGL(PIVD)) H0880380 WRITE (NUVI, 885) BVS H0880390 BVS = SIN(2. * CVS) H0880400 WRITE (NUVI, 886) BVS H0880410 BVS = SIN(2.0 + CVS + AVS) H0880420 WRITE (NUVI, 887) BVS H0880430 BVS = SIN(CVS * (AVS + CVS)) H0880440 WRITE (NUVI, 888) BVS H0880450 BVS = SIN(SNGL(2.0D0 * PIVD)) H0880460 WRITE (NUVI, 889) BVS H0880470 WRITE (NUVI, 7880) H0880480 881 FORMAT( 9H0 X= 0.0 ,5X,15H 0.000000000000 /14X, F10.7) H0880490 882 FORMAT( 9H0 X= 1.0 ,5X,15H+0.841470984808 /14X, F10.7) H0880500 883 FORMAT( 9H0 X= 2.0 ,5X,15H+0.909297426826 /14X, F10.7) H0880510 884 FORMAT( 9H0 X= 3.0 ,5X,15H+0.141120008060 /14X, F10.7) H0880520 885 FORMAT( 9H0 X= (PI),5X,15H 0.000000000000 /14X, F10.7) H0880530 886 FORMAT( 9H0 X= 4.0 ,5X,15H-0.756802495308 /14X, F10.7) H0880540 887 FORMAT( 9H0 X= 5.0 ,5X,15H-0.958924274663 /14X, F10.7) H0880550 888 FORMAT( 9H0 X= 6.0 ,5X,15H-0.279415498198 /14X, F10.7) H0880560 889 FORMAT( 9H0 X=(2PI),5X,15H 0.000000000000 /14X, F10.7) H0880570 7880 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0880580 1 PRINTED TO ,8H7 DIGITS) H0880590 C***** END OF TEST SEGMENT 088 H0880600 C***** WHEN EXECUTING ONLY SEGMENT 088, THE STOP AND END CARDS H0880610 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0880620 C***** IN COLUMNS 1 AND 2 REMOVED. H0880630 C= STOP H0880640 C= END H0880650 C***********************************************************************H0890010 C***** H0890020 C***** DPSIN - 089 H0890030 C***** H0890040 C***********************************************************************H0890050 C***** GENERAL PURPOSE ASA REFH0890060 C***** TO TEST BASIC EXTERNAL FUNCTION - DSIN - 8.3.3 H0890070 C***** TRIGONOMETRIC SINE - TYPE DOUBLE PRECISION TABLE 4H0890080 C***** SAME AS SEGMENT 088 EXCEPT D.P. H0890090 C***** INTRINSIC FUNCTION DSIGN ASSUMED WORKING H0890100 C***** ARGUMENTS FROM 0 TO 2 PI H0890110 C***** H0890120 C***** S P E C I F I C A T I O N S SEGMENT 089 H0890130 C***** H0012990 C***** WHEN EXECUTING ONLY SEGMENT 089, THE SPECIFICATION STATEMENTS H0012995 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0013000 C***** IN COLUMNS 1 AND 2 REMOVED. H0013005 C***** H0013010 C= DOUBLE PRECISION AVD, BVD, CVD, DVD, EVD, PIVD, XVD, FVD, GVD H0013015 C***** H0013020 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0890140 C***** H0073025 C***** WHEN EXECUTING ONLY SEGMENT 089, THE FOLLOWING STATEMENT H0073030 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0073035 C= NUVI = 6 H0073040 C***** H0073045 890 FORMAT(15H1 DPSIN - (089)//32H BASIC EXTERNAL FUNCTION -DSIN- H0890150 1//33H (TRIGONOMETRIC SINE -TYPE D.P.) H0890160 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0890170 3 HOLLERITH INFORMATION//9H RESULTS) H0890180 WRITE (NUVI, 890) H0890190 C***** HEADER FOR SEGMENT 089 WRITTEN H0890200 AVD = 3.140625D+0 H0890210 BVD = 0.9613037109375D-3 H0890220 CVD = 0.57220458984375D-5 H0890230 DVD = 0.596046447753906D-6 H0890240 EVD = 0.31786509547056D-7 H0890250 C*****PI IS SUM OF AVD TO EVD, PARTS ARE EXPRESSED IN SUMS OF POWERS OF H0890260 C*****2, TO PERMIT A POSSIBLE 20 DECIMAL DIGIT ARGUMENT TO BE CREATED H0890270 PIVD = EVD + DVD + CVD + BVD + AVD H0890280 FVD = 1.0D0 H0890290 GVD = 2.0D0 H0890300 XVD = DSIN(GVD - 2.0D0 * FVD) H0890310 WRITE (NUVI, 891) XVD H0890320 XVD = DSIN(FVD) H0890330 WRITE (NUVI, 892) XVD H0890340 XVD = DSIN(GVD) H0890350 WRITE (NUVI, 893) XVD H0890360 XVD = DSIN(GVD + FVD) H0890370 WRITE (NUVI, 894) XVD H0890380 XVD = DSIN(PIVD) H0890390 WRITE (NUVI, 895) XVD H0890400 XVD = DSIN(2. * GVD) H0890410 WRITE (NUVI, 896) XVD H0890420 XVD = DSIN(2.0 +FVD + GVD) H0890430 WRITE (NUVI, 897) XVD H0890440 XVD = DSIN(GVD * (FVD + GVD)) H0890450 WRITE (NUVI, 898) XVD H0890460 XVD = DSIN(DSIGN(2.0D0 * PIVD, GVD)) H0890470 WRITE (NUVI, 899) XVD H0890480 WRITE (NUVI, 7890) H0890490 891 FORMAT(9H0 X= 0.0 , 31H 0.00000000000000000000000 / D31.14) H0890500 892 FORMAT(9H0 X= 1.0 , 31H +0.84147098480789650665250D+00 /D31.14) H0890510 893 FORMAT(9H0 X= 2.0 , 31H +0.90929742682568169539602D+00 /D31.14) H0890520 894 FORMAT(9H0 X= 3.0 , 31H +0.14112000805986722210074D+00 /D31.14) H0890530 895 FORMAT(9H0 X= (PI), 31H 0.00000000000000000000000 / D31.14) H0890540 896 FORMAT(9H0 X= 4.0 , 31H -0.75680249530792825137264D+00 /D31.14) H0890550 897 FORMAT(9H0 X= 5.0 , 31H -0.95892427466313846889315D+00 / D31.14) H0890560 898 FORMAT(9H0 X= 6.0 , 31H -0.27941549819892587281156D+00 / D31.14) H0890570 899 FORMAT(9H0 X=(2PI), 31H 0.00000000000000000000000 / D31.14) H0890580 7890 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0890590 A PRINTED TO ,9H14 DIGITS) H0890600 C***** END OF TEST SEGMENT 089 H0890610 C***** WHEN EXECUTING ONLY SEGMENT 089, THE STOP AND END CARDS H0890620 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0890630 C***** IN COLUMNS 1 AND 2 REMOVED. H0890640 C= STOP H0890650 C= END H0890660 C********************************************************************** H0900010 C***** H0900020 C***** CSICO - (090) H0900030 C***** H0900040 C********************************************************************** H0900050 C***** GENERAL PURPOSE ASA REF H0900060 C***** TO TEST BASIC EXTERNAL FUNCTIONS -CSIN- AND -CCOS- 8.3.3 H0900070 C***** COMPLEX SINE AND COSINE TABLE 4H0900080 C***** INTRINSIC FUNCTION CMPLX ASSUMED WORKING H0900090 C***** H0900100 C***** S P E C I F I C A T I O N S SEGMENT 090 H0900110 C***** H0013025 C***** WHEN EXECUTING ONLY SEGMENT 090, THE SPECIFICATION STATEMENTS H0013030 C***** WHICH APPEAR AS COMMENT CARDS, MUST HAVE THE C= H0013035 C***** IN COLUMNS 1 AND 2 REMOVED. H0013040 C***** H0013045 C= DIMENSION L1I (10) H0013050 C= COMPLEX AVC, BVC H0013055 C***** H0013060 C***** O U T P U T - T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0900120 C***** H0073050 C***** WHEN EXECUTING ONLY SEGMENT 090, THE FOLLOWING STATEMENT H0073055 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0073060 C= NUVI = 6 H0073065 C***** H0073070 WRITE (NUVI, 900) H0900130 900 FORMAT(15H1 CSICO - (090)//40H BASIC EXTERNAL FUNCTIONS -CSIN , CH0900140 1COS- //39H (TRIG. SINE AND COSINE -TYPE COMPLEX)//26H ASA REF 8.H0900150 23.3 (TABLE 4) //10H FUNCTION, 10X,7HRESULTS //) H0900160 DATA LAZVI,LBZVI, LCZVI,LDZVI/2H0( ,2H, ,2H1/,1H)/ H0900170 DATA L1I(1),L1I(2),L1I(3),L1I(4),L1I(5)/ H0900180 - 2H1 , 2H2 , 2H3 , 2H4 , 2H5 /, H0900190 - L1I(6),L1I(7),L1I(8),L1I(9),L1I(10)/ H0900200 - 2H6 , 2H7 , 2H8 , 2H9 , 2H10 / H0900210 AVC = (1.0,1.0) H0900220 BVC = CSIN (AVC) H0900230 WRITE(NUVI, 901) BVC H0900240 BVC = CCOS(AVC) H0900250 WRITE (NUVI, 902) BVC H0900260 IVI = 0 H0900270 905 IVI = IVI + 1 H0900280 AVS = IVI H0900290 BVS = 1. / AVS H0900300 AVC = CMPLX (AVS,BVS) H0900310 BVC = CSIN(AVC) ** 2 + CCOS(AVC) ** 2 H0900320 WRITE(NUVI, 904) LAZVI, L1I(IVI),LBZVI,LCZVI,L1I(IVI),LDZVI, BVC H0900330 904 FORMAT( A2,A2, A2,A2,A2,A1,4X,2F12.7) H0900340 IF(IVI - 10) 905, 906, 906 H0900350 906 CONTINUE H0900360 901 FORMAT(/13H TABLE VALUE,4X,22H 1.2984576 0.6349639 /17H CSIN(1H0900370 1.,1.) = ,F10.7,F12.7) H0900380 902 FORMAT(/13H TABLE VALUE,4X,22H 0.8337300 -0.9888977 /17H CCOS(1H0900390 1.,1.) = ,F10.7,F12.7 ///35H CSIN(X)**2 + CCOS(X)**2 = 1.0,0.0 / H0900400 2 40H0 ARGUMENT RESULTS SHOULD BE 1.0,0.0 ) H0900410 C***** END OF TEST SEGMENT 090 H0900420 C***** WHEN EXECUTING ONLY SEGMENT 090, THE STOP AND END CARDS H0900430 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0900440 C***** IN COLUMNS 1 AND 2 REMOVED. H0900450 C= STOP H0900460 C= END H0900470 C***********************************************************************H0910010 C***** H0910020 C***** COSNS - 091 H0910030 C***** H0910040 C***********************************************************************H0910050 C***** GENERAL PURPOSE ASA REFH0910060 C***** TO TEST BASIC EXTERNAL FUNCTION - COS - 8.3.3 H0910070 C***** TRIGONOMETRIC COSINE - TYPE REAL TABLE 4H0910080 C***** SAME AS SEGMENT EXCEPT FOR COSINE H0910090 C***** INTRINSIC FUNCTION SNGL ASSUMED WORKING H0910100 C***** ARGUMENTS FROM 0 TO 2 PI H0910110 C***** H0910120 C***** S P E C I F I C A T I O N S SEGMENT 091 H0910130 C***** H0013065 C***** WHEN EXECUTING ONLY SEGMENT 091, THE SPECIFICATION STATEMENTS H0013070 C***** WHICH APPEAR AS COMMENT CARDS, MUST HAVE THE C= H0013075 C***** IN COLUMNS 1 AND 2 REMOVED. H0013080 C***** H0013085 C= DOUBLE PRECISION AVD, BVD, CVD, DVD, EVD, PIVD H0013090 C***** H0013095 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0910140 C***** H0073075 C***** WHEN EXECUTING ONLY SEGMENT 091, THE FOLLOWING STATEMENT H0073080 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0073085 C= NUVI = 6 H0073090 C***** H0073095 910 FORMAT(15H1 COSNS - (091)//31H BASIC EXTERNAL FUNCTION -COS- H0910150 1//35H (TRIGONOMETRIC COSINE -TYPE REAL) H0910160 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0910170 3 HOLLERITH INFORMATION//9H RESULTS) H0910180 WRITE (NUVI, 910) H0910190 C***** HEADER FOR SEGMENT 091 WRITTEN H0910200 AVD = 3.140625D+0 H0910210 BVD = 0.9613037109375D-3 H0910220 CVD = 0.57220458984375D-5 H0910230 DVD = 0.596046447753906D-6 H0910240 EVD = 0.31786509547056D-7 H0910250 C*****PI IS SUM OF AVD TO EVD, PARTS ARE EXPRESSED IN SUMS OF POWERS OF H0910260 C*****2, TO PERMIT A POSSIBLE 20 DECIMAL DIGIT ARGUMENT TO BE CREATED H0910270 PIVD = EVD + DVD + CVD + BVD + AVD H0910280 AVS = 1.0 H0910290 CVS = 2.0 H0910300 BVS = COS(CVS - 2.0 * AVS) H0910310 WRITE (NUVI, 911) BVS H0910320 BVS = COS(AVS) H0910330 WRITE (NUVI, 912) BVS H0910340 BVS = COS(CVS) H0910350 WRITE (NUVI, 913) BVS H0910360 BVS = COS(AVS + CVS) H0910370 WRITE (NUVI, 914) BVS H0910380 BVS = COS(SNGL(PIVD)) H0910390 WRITE (NUVI, 915) BVS H0910400 BVS = COS(2. * CVS) H0910410 WRITE (NUVI, 916) BVS H0910420 BVS = COS(2.0 + CVS + AVS) H0910430 WRITE (NUVI, 917) BVS H0910440 BVS = COS(CVS * (AVS + CVS)) H0910450 WRITE (NUVI, 918) BVS H0910460 BVS = COS(SNGL(2.0D0 * PIVD)) H0910470 WRITE (NUVI, 919) BVS H0910480 WRITE (NUVI, 7910) H0910490 911 FORMAT( 9H0 X= 0.0 ,5X,15H+1.000000000000 /14X, F10.7) H0910500 912 FORMAT( 9H0 X= 1.0 ,5X,15H+0.540302305868 /14X, F10.7) H0910510 913 FORMAT( 9H0 X= 2.0 ,5X,15H-0.416146836547 /14X, F10.7) H0910520 914 FORMAT( 9H0 X= 3.0 ,5X,15H-0.989992496600 /14X, F10.7) H0910530 915 FORMAT( 9H0 X= (PI),5X,15H-1.000000000000 /14X, F10.7) H0910540 916 FORMAT(9H0 X= 4.0 ,5X,15H-0.653643620864 /14X, F10.7) H0910550 917 FORMAT( 9H0 X= 5.0 ,5X,15H+0.283662185463 /14X, F10.7) H0910560 918 FORMAT( 9H0 X= 6.0 ,5X,15H+0.960170286650 /14X, F10.7) H0910570 919 FORMAT( 9H0 X=(2PI),5X,15H+1.000000000000 /14X, F10.7) H0910580 7910 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0910590 1 PRINTED TO ,8H7 DIGITS) H0910600 C***** END OF TEST SEGMENT 091 H0910610 C***** WHEN EXECUTING ONLY SEGMENT 091, THE STOP AND END CARDS H0910620 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0910630 C***** IN COLUMNS 1 AND 2 REMOVED. H0910640 C= STOP H0910650 C= END H0910660 C***********************************************************************H0920010 C***** H0920020 C***** DPCOS - (092) H0920030 C***** H0920040 C***********************************************************************H0920050 C***** GENERAL PURPOSE ASA REFH0920060 C***** TO TEST BASIC EXTERNAL FUNCTION - DCOS - 8.3.3 H0920070 C***** TRIGONOMETRIC COSINE -TYPE DOUBLE PRECISION TABLE 4H0920080 C***** SAME AS SEGMENT 091 EXCEPT D.P. H0920090 C***** INTRINSIC FUNCTION DMAX1 ASSUMED WORKING H0920100 C***** ARGUMENTS FROM 0 TO 2 PI H0920110 C***** H0920120 C***** S P E C I F I C A T I O N S SEGMENT 092 H0920130 C***** H0013100 C***** WHEN EXECUTING ONLY SEGMENT 092, THE SPECIFICATION STATEMENTS H0013105 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0013110 C***** IN COLUMNS 1 AND 2 REMOVED. H0013115 C***** H0013120 C= DOUBLE PRECISION AVD, BVD, CVD, DVD, EVD, FVD, GVD, PIVD, XVD H0013125 C***** H0013130 C***** O U T P U T T A P E ASSIGNMENT STATEMENT. NO INPUT TAPE. H0920140 C***** H0073100 C***** WHEN EXECUTING ONLY SEGMENT 092, THE FOLLOWING STATEMENT H0073105 C***** NUVI = 6 MUST HAVE THE C= IN COLUMNS 1 AND 2 REMOVED. H0073110 C= NUVI = 6 H0073115 C***** H0073120 920 FORMAT(15H1 DPCOS - (092)//32H BASIC EXTERNAL FUNCTION -DCOS- H0920150 1//35H (TRIGONOMETRIC COSINE -TYPE D.P.) H0920160 2//27H ASA REF.- 8.3.3 (TABLE 4)//24H LINE 1 OF EACH PAIR IS/23H H0920170 3 HOLLERITH INFORMATION//9H RESULTS) H0920180 WRITE (NUVI, 920) H0920190 AVD = 3.140625D+0 H0920200 BVD = 0.9613037109375D-3 H0920210 CVD = 0.57220458984375D-5 H0920220 DVD = 0.596046447753906D-6 H0920230 EVD = 0.31786509547056D-7 H0920240 C*****PI IS SUM OF AVD TO EVD, PARTS ARE EXPRESSED IN SUMS OF POWERS OF H0920250 C*****2, TO PERMIT A POSSIBLE 20 DECIMAL DIGIT ARGUMENT TO BE CREATED H0920260 PIVD = EVD + DVD + CVD + BVD + AVD H0920270 FVD = 1.0D0 H0920280 GVD = 2.0D0 H0920290 XVD = DCOS(GVD - 2.0D0 * FVD) H0920300 WRITE (NUVI, 921) XVD H0920310 XVD = DCOS(FVD) H0920320 WRITE (NUVI, 922) XVD H0920330 XVD = DCOS(GVD) H0920340 WRITE (NUVI, 923) XVD H0920350 XVD = DCOS(GVD + FVD) H0920360 WRITE (NUVI, 924) XVD H0920370 XVD = DCOS(PIVD) H0920380 WRITE (NUVI, 925) XVD H0920390 XVD = DCOS(2. * GVD) H0920400 WRITE (NUVI, 926) XVD H0920410 XVD = DCOS(2.0 + FVD + GVD) H0920420 WRITE (NUVI, 927) XVD H0920430 XVD = DCOS(GVD * (FVD + GVD)) H0920440 WRITE (NUVI, 928) XVD H0920450 XVD = DCOS(DMAX1(2.0D0 * PIVD, GVD)) H0920460 WRITE (NUVI, 929) XVD H0920470 WRITE (NUVI, 7992) H0920480 921 FORMAT(9H0 X= 0.0 ,31H +0.10000000000000000000000D+01 / D31.14) H0920490 922 FORMAT(9H0 X= 1.0 ,31H +0.54030230586813971740094D+00 /D31.14) H0920500 923 FORMAT(9H0 X= 2.0 ,31H -0.41614683654714238699757D+00 / D31.14) H0920510 924 FORMAT(9H0 X= 3.0 ,31H -0.98999249660044545727157D+00 / D31.14) H0920520 925 FORMAT(9H0 X= (PI),31H -0.10000000000000000000000D+01 / D31.14) H0920530 926 FORMAT(9H0 X= 4.0 ,31H -0.65364362086361191463917D+00 / D31.14) H0920540 927 FORMAT(9H0 X= 5.0 ,31H +0.28366218546322626446664D+00 / D31.14) H0920550 928 FORMAT(9H0 X= 6.0 ,31H +0.96017028665036602054565D+00 / D31.14) H0920560 929 FORMAT(9H0 X=(2PI),31H +0.10000000000000000000000D+01 / D31.14) H0920570 7992 FORMAT(//37H LINE 2 OF EACH PAIR IS THE FUNCTION/25H CALCULATIONH0920580 A PRINTED TO ,9H14 DIGITS) H0920590 C***** END OF SEGMENT 092 H0920600 C***** WHEN EXECUTING ONLY SEGMENT 092, THE STOP AND END CARDS H0920610 C***** WHICH APPEAR AS COMMENT CARDS MUST HAVE THE C= H0920620 C***** IN COLUMNS 1 AND 2 REMOVED. H0920630 C= STOP H0920640 C= END H0920650 STOP H9999995 END H9999999