30 October 2007 10:52:39.891 AM G95_INTRINSICS_PRB FORTRAN90 version Test the G95 intrinsic routines. TEST_ALGAMA: ALGAMA computes the log of the gamma function. GAMMA_LOG_VALUES returns selected values. X FX FX2 (table) (DLGAMA) 0.20000000 1.524063822430784 1.524063825607300 0.40000000 0.7966778177017837 0.7966778278350830 0.60000000 0.3982338580692348 0.3982338309288025 0.80000000 0.1520596783998375 0.1520596742630005 1.00000000 0.000000000000000 0.000000000000000 1.10000000 -0.4987244125983972E-01 -0.4987245053052902E-01 1.20000000 -0.8537409000331583E-01 -0.8537410199642181E-01 1.30000000 -0.1081748095078604 -0.1081748008728027 1.40000000 -0.1196129141723712 -0.1196129098534584 1.50000000 -0.1207822376352452 -0.1207822412252426 1.60000000 -0.1125917656967557 -0.1125917658209801 1.70000000 -0.9580769740706586E-01 -0.9580768644809723E-01 1.80000000 -0.7108387291437215E-01 -0.7108388841152191E-01 1.90000000 -0.3898427592308333E-01 -0.3898428380489349E-01 2.00000000 0.000000000000000 0.000000000000000 3.00000000 0.6931471805599453 0.6931471824645996 4.00000000 1.791759469228055 1.791759490966797 10.00000000 12.80182748008147 12.80182743072510 20.00000000 39.33988418719949 39.33988571166992 30.00000000 71.25703896716801 71.25704193115234 TEST_BESJ0: BESJ0 computes the Bessel J0 function. BESSEL_J0_VALUES returns selected values. X FX FX2 (table) (BESJ0) -5.00000000 -0.1775967713143383 -0.1775967776775360 -4.00000000 -0.3971498098638474 -0.3971498012542725 -3.00000000 -0.2600519549019334 -0.2600519657135010 -2.00000000 0.2238907791412357 0.2238907814025879 -1.00000000 0.7651976865579666 0.7651976943016052 0.00000000 1.000000000000000 1.000000000000000 1.00000000 0.7651976865579666 0.7651976943016052 2.00000000 0.2238907791412357 0.2238907814025879 3.00000000 -0.2600519549019334 -0.2600519657135010 4.00000000 -0.3971498098638474 -0.3971498012542725 5.00000000 -0.1775967713143383 -0.1775967776775360 6.00000000 0.1506452572509969 0.1506452560424805 7.00000000 0.3000792705195556 0.3000792562961578 8.00000000 0.1716508071375539 0.1716508120298386 9.00000000 -0.9033361118287613E-01 -0.9033361077308655E-01 10.00000000 -0.2459357644513483 -0.2459357678890228 11.00000000 -0.1711903004071961 -0.1711903065443039 12.00000000 0.4768931079683354E-01 0.4768931120634079E-01 13.00000000 0.2069261023770678 0.2069261074066162 14.00000000 0.1710734761104587 0.1710734814405441 15.00000000 -0.1422447282678077E-01 -0.1422447245568037E-01 TEST_BESJ1: BESJ1 computes the Bessel J1 function. BESSEL_J1_VALUES returns selected values. X FX FX2 (table) (BESJ1) -5.00000000 0.3275791375914652 0.3275791406631470 -4.00000000 0.6604332802354913E-01 0.6604332476854324E-01 -3.00000000 -0.3390589585259365 -0.3390589654445648 -2.00000000 -0.5767248077568734 -0.5767248272895813 -1.00000000 -0.4400505857449335 -0.4400505721569061 0.00000000 0.000000000000000 0.000000000000000 1.00000000 0.4400505857449335 0.4400505721569061 2.00000000 0.5767248077568734 0.5767248272895813 3.00000000 0.3390589585259365 0.3390589654445648 4.00000000 -0.6604332802354913E-01 -0.6604332476854324E-01 5.00000000 -0.3275791375914652 -0.3275791406631470 6.00000000 -0.2766838581275656 -0.2766838669776917 7.00000000 -0.4682823482345833E-02 -0.4682823549956083E-02 8.00000000 0.2346363468539146 0.2346363514661789 9.00000000 0.2453117865733253 0.2453117817640305 10.00000000 0.4347274616886144E-01 0.4347274452447891E-01 11.00000000 -0.1767852989567215 -0.1767853051424026 12.00000000 -0.2234471044906276 -0.2234470993280411 13.00000000 -0.7031805212177837E-01 -0.7031805068254471E-01 14.00000000 0.1333751546987933 0.1333751529455185 15.00000000 0.2051040386135228 0.2051040381193161 TEST_BESJN: BESJN computes the Bessel Jn function. BESSEL_JN_VALUES returns selected values. N X FX FX2 (table) (BESJN) 2 1.00000000 0.1149034849319005 0.1149034872651100 2 2.00000000 0.3528340286156377 0.3528340160846710 2 5.00000000 0.4656511627775222E-01 0.4656511545181274E-01 2 10.00000000 0.2546303136851206 0.2546303272247314 2 50.00000000 -0.5971280079425882E-01 -0.5971280112862587E-01 5 1.00000000 0.2497577302112344E-03 0.2497577224858105E-03 5 2.00000000 0.7039629755871685E-02 0.7039629854261875E-02 5 5.00000000 0.2611405461201701 0.2611405551433563 5 10.00000000 -0.2340615281867936 -0.2340615242719650 5 50.00000000 -0.8140024769656964E-01 -0.8140024542808533E-01 10 1.00000000 0.2630615123687453E-09 0.2630615170140516E-09 10 2.00000000 0.2515386282716737E-06 0.2515386370305350E-06 10 5.00000000 0.1467802647310474E-02 0.1467802678234875E-02 10 10.00000000 0.2074861066333589 0.2074861079454422 10 50.00000000 -0.1138478491494694 -0.1138478517532349 20 1.00000000 0.3873503008524658E-24 0.3873503027266309E-24 20 2.00000000 0.3918972805090754E-18 0.3918972879171575E-18 20 5.00000000 0.2770330052128942E-10 0.2770329972368035E-10 20 10.00000000 0.1151336924781340E-04 0.1151336891780375E-04 20 50.00000000 -0.1167043527595797 -0.1167043522000313 TEST_BESY0: BESY0 computes the Bessel Y0 function. BESSEL_Y0_VALUES returns selected values. X FX FX2 (table) (BESY0) 0.10000000 -1.534238651350367 -1.534238696098328 1.00000000 0.8825696421567696E-01 0.8825696259737015E-01 2.00000000 0.5103756726497451 0.5103756785392761 3.00000000 0.3768500100127904 0.3768500089645386 4.00000000 -0.1694073932506499E-01 -0.1694073900580406E-01 5.00000000 -0.3085176252490338 -0.3085176348686218 6.00000000 -0.2881946839815792 -0.2881946861743927 7.00000000 -0.2594974396720926E-01 -0.2594974450767040E-01 8.00000000 0.2235214893875662 0.2235214859247208 9.00000000 0.2499366982850247 0.2499366998672485 10.00000000 0.5567116728359939E-01 0.5567116662859917E-01 11.00000000 -0.1688473238920795 -0.1688473224639893 12.00000000 -0.2252373126343614 -0.2252373099327087 13.00000000 -0.7820786452787591E-01 -0.7820786535739899E-01 14.00000000 0.1271925685821837 0.1271925717592239 15.00000000 0.2054642960389183 0.2054642885923386 TEST_BESY1: BESY1 computes the Bessel Y1 function. BESSEL_Y1_VALUES returns selected values. X FX FX2 (table) (BESY1) 0.10000000 -6.458951094702027 -6.458950996398926 1.00000000 -0.7812128213002887 -0.7812128067016602 2.00000000 -0.1070324315409375 -0.1070324331521988 3.00000000 0.3246744247918000 0.3246744275093079 4.00000000 0.3979257105571000 0.3979257047176361 5.00000000 0.1478631433912268 0.1478631496429443 6.00000000 -0.1750103443003983 -0.1750103384256363 7.00000000 -0.3026672370241849 -0.3026672303676605 8.00000000 -0.1580604617312475 -0.1580604612827301 9.00000000 0.1043145751967159 0.1043145731091499 10.00000000 0.2490154242069539 0.2490154206752777 11.00000000 0.1637055374149429 0.1637055426836014 12.00000000 -0.5709921826089652E-01 -0.5709921941161156E-01 13.00000000 -0.2100814084206935 -0.2100814133882523 14.00000000 -0.1666448418561723 -0.1666448414325714 15.00000000 0.2107362803687351E-01 0.2107362821698189E-01 TEST_BESYN: BESYN computes the Bessel Yn function. BESSEL_YN_VALUES returns selected values. N X FX FX2 (table) (BESYN) 2 1.00000000 -1.650682606816254 -1.650682568550110 2 2.00000000 -0.6174081041906827 -0.6174080967903137 2 5.00000000 0.3676628826055245 0.3676628768444061 2 10.00000000 -0.5868082442208615E-02 -0.5868082400411367E-02 2 50.00000000 0.9579316872759649E-01 0.9579316526651382E-01 5 1.00000000 -260.4058666258122 -260.4058532714844 5 2.00000000 -9.935989128481975 -9.935989379882812 5 5.00000000 -0.4536948224911019 -0.4536948204040527 5 10.00000000 0.1354030476893623 0.1354030519723892 5 50.00000000 -0.7854841391308165E-01 -0.7854841649532318E-01 10 1.00000000 -121618014.2786892 -121618016.0000000 10 2.00000000 -129184.5422080393 -129184.5390625000 10 5.00000000 -25.12911009561010 -25.12911033630371 10 10.00000000 -0.3598141521834027 -0.3598141670227051 10 50.00000000 0.5723897182053514E-02 0.5723897367715836E-02 20 1.00000000 -0.4113970314835505E+23 -0.4113970255248575E+23 20 2.00000000 -0.4081651388998367E+17 -0.4081651302793216E+17 20 5.00000000 -593396529.6914321 -593396544.0000000 20 10.00000000 -1597.483848269626 -1597.483886718750 20 50.00000000 0.1644263394811578E-01 0.1644263416528702E-01 TEST_DBESJ0: DBESJ0 computes the Bessel J0 function. BESSEL_J0_VALUES returns selected values. X FX FX2 (table) (DBESJ0) -5.00000000 -0.1775967713143383 -0.1775967713143383 -4.00000000 -0.3971498098638474 -0.3971498098638474 -3.00000000 -0.2600519549019334 -0.2600519549019334 -2.00000000 0.2238907791412357 0.2238907791412357 -1.00000000 0.7651976865579666 0.7651976865579666 0.00000000 1.000000000000000 1.000000000000000 1.00000000 0.7651976865579666 0.7651976865579666 2.00000000 0.2238907791412357 0.2238907791412357 3.00000000 -0.2600519549019334 -0.2600519549019334 4.00000000 -0.3971498098638474 -0.3971498098638474 5.00000000 -0.1775967713143383 -0.1775967713143383 6.00000000 0.1506452572509969 0.1506452572509970 7.00000000 0.3000792705195556 0.3000792705195556 8.00000000 0.1716508071375539 0.1716508071375539 9.00000000 -0.9033361118287613E-01 -0.9033361118287613E-01 10.00000000 -0.2459357644513483 -0.2459357644513483 11.00000000 -0.1711903004071961 -0.1711903004071961 12.00000000 0.4768931079683354E-01 0.4768931079683354E-01 13.00000000 0.2069261023770678 0.2069261023770678 14.00000000 0.1710734761104587 0.1710734761104587 15.00000000 -0.1422447282678077E-01 -0.1422447282678077E-01 TEST_DBESJ1: DBESJ1 computes the Bessel J1 function. BESSEL_J1_VALUES returns selected values. X FX FX2 (table) (DBESJ1) -5.00000000 0.3275791375914652 0.3275791375914652 -4.00000000 0.6604332802354913E-01 0.6604332802354913E-01 -3.00000000 -0.3390589585259365 -0.3390589585259364 -2.00000000 -0.5767248077568734 -0.5767248077568733 -1.00000000 -0.4400505857449335 -0.4400505857449335 0.00000000 0.000000000000000 0.000000000000000 1.00000000 0.4400505857449335 0.4400505857449335 2.00000000 0.5767248077568734 0.5767248077568733 3.00000000 0.3390589585259365 0.3390589585259364 4.00000000 -0.6604332802354913E-01 -0.6604332802354913E-01 5.00000000 -0.3275791375914652 -0.3275791375914652 6.00000000 -0.2766838581275656 -0.2766838581275656 7.00000000 -0.4682823482345833E-02 -0.4682823482345830E-02 8.00000000 0.2346363468539146 0.2346363468539146 9.00000000 0.2453117865733253 0.2453117865733253 10.00000000 0.4347274616886144E-01 0.4347274616886144E-01 11.00000000 -0.1767852989567215 -0.1767852989567215 12.00000000 -0.2234471044906276 -0.2234471044906276 13.00000000 -0.7031805212177837E-01 -0.7031805212177836E-01 14.00000000 0.1333751546987933 0.1333751546987932 15.00000000 0.2051040386135228 0.2051040386135228 TEST_DBESJN: DBESJN computes the Bessel Jn function. BESSEL_JN_VALUES returns selected values. N X FX FX2 (table) (DBESJN) 2 1.00000000 0.1149034849319005 0.1149034849319005 2 2.00000000 0.3528340286156377 0.3528340286156377 2 5.00000000 0.4656511627775222E-01 0.4656511627775221E-01 2 10.00000000 0.2546303136851206 0.2546303136851206 2 50.00000000 -0.5971280079425882E-01 -0.5971280079425882E-01 5 1.00000000 0.2497577302112344E-03 0.2497577302112344E-03 5 2.00000000 0.7039629755871685E-02 0.7039629755871686E-02 5 5.00000000 0.2611405461201701 0.2611405461201700 5 10.00000000 -0.2340615281867936 -0.2340615281867937 5 50.00000000 -0.8140024769656964E-01 -0.8140024769656964E-01 10 1.00000000 0.2630615123687453E-09 0.2630615123687453E-09 10 2.00000000 0.2515386282716737E-06 0.2515386282716737E-06 10 5.00000000 0.1467802647310474E-02 0.1467802647310474E-02 10 10.00000000 0.2074861066333589 0.2074861066333589 10 50.00000000 -0.1138478491494694 -0.1138478491494694 20 1.00000000 0.3873503008524658E-24 0.3873503008524658E-24 20 2.00000000 0.3918972805090754E-18 0.3918972805090753E-18 20 5.00000000 0.2770330052128942E-10 0.2770330052128942E-10 20 10.00000000 0.1151336924781340E-04 0.1151336924781340E-04 20 50.00000000 -0.1167043527595797 -0.1167043527595798 TEST_DBESY0: DBESY0 computes the Bessel Y0 function. BESSEL_Y0_VALUES returns selected values. X FX FX2 (table) (DBESY0) 0.10000000 -1.534238651350367 -1.534238651350367 1.00000000 0.8825696421567696E-01 0.8825696421567696E-01 2.00000000 0.5103756726497451 0.5103756726497451 3.00000000 0.3768500100127904 0.3768500100127903 4.00000000 -0.1694073932506499E-01 -0.1694073932506499E-01 5.00000000 -0.3085176252490338 -0.3085176252490338 6.00000000 -0.2881946839815792 -0.2881946839815791 7.00000000 -0.2594974396720926E-01 -0.2594974396720926E-01 8.00000000 0.2235214893875662 0.2235214893875662 9.00000000 0.2499366982850247 0.2499366982850247 10.00000000 0.5567116728359939E-01 0.5567116728359939E-01 11.00000000 -0.1688473238920795 -0.1688473238920795 12.00000000 -0.2252373126343614 -0.2252373126343614 13.00000000 -0.7820786452787591E-01 -0.7820786452787591E-01 14.00000000 0.1271925685821837 0.1271925685821837 15.00000000 0.2054642960389183 0.2054642960389183 TEST_DBESY1: DBESY1 computes the Bessel Y1 function. BESSEL_Y1_VALUES returns selected values. X FX FX2 (table) (DBESY1) 0.10000000 -6.458951094702027 -6.458951094702027 1.00000000 -0.7812128213002887 -0.7812128213002887 2.00000000 -0.1070324315409375 -0.1070324315409375 3.00000000 0.3246744247918000 0.3246744247918000 4.00000000 0.3979257105571000 0.3979257105571001 5.00000000 0.1478631433912268 0.1478631433912268 6.00000000 -0.1750103443003983 -0.1750103443003983 7.00000000 -0.3026672370241849 -0.3026672370241849 8.00000000 -0.1580604617312475 -0.1580604617312475 9.00000000 0.1043145751967159 0.1043145751967159 10.00000000 0.2490154242069539 0.2490154242069538 11.00000000 0.1637055374149429 0.1637055374149429 12.00000000 -0.5709921826089652E-01 -0.5709921826089653E-01 13.00000000 -0.2100814084206935 -0.2100814084206935 14.00000000 -0.1666448418561723 -0.1666448418561723 15.00000000 0.2107362803687351E-01 0.2107362803687351E-01 TEST_DBESYN: DBESYN computes the Bessel Yn function. BESSEL_YN_VALUES returns selected values. N X FX FX2 (table) (DBESYN) 2 1.00000000 -1.650682606816254 -1.650682606816254 2 2.00000000 -0.6174081041906827 -0.6174081041906827 2 5.00000000 0.3676628826055245 0.3676628826055245 2 10.00000000 -0.5868082442208615E-02 -0.5868082442208629E-02 2 50.00000000 0.9579316872759649E-01 0.9579316872759649E-01 5 1.00000000 -260.4058666258122 -260.4058666258122 5 2.00000000 -9.935989128481975 -9.935989128481975 5 5.00000000 -0.4536948224911019 -0.4536948224911018 5 10.00000000 0.1354030476893623 0.1354030476893623 5 50.00000000 -0.7854841391308165E-01 -0.7854841391308165E-01 10 1.00000000 -121618014.2786892 -121618014.2786892 10 2.00000000 -129184.5422080393 -129184.5422080393 10 5.00000000 -25.12911009561010 -25.12911009561009 10 10.00000000 -0.3598141521834027 -0.3598141521834027 10 50.00000000 0.5723897182053514E-02 0.5723897182053513E-02 20 1.00000000 -0.4113970314835505E+23 -0.4113970314835506E+23 20 2.00000000 -0.4081651388998367E+17 -0.4081651388998367E+17 20 5.00000000 -593396529.6914321 -593396529.6914320 20 10.00000000 -1597.483848269626 -1597.483848269626 20 50.00000000 0.1644263394811578E-01 0.1644263394811577E-01 TEST_DERF: DERF computes the error function. ERF_VALUES returns selected values. X FX FX2 (table) (DERF) 0.00000000 0.000000000000000 0.000000000000000 0.10000000 0.1124629160182849 0.1124629160182849 0.20000000 0.2227025892104785 0.2227025892104785 0.30000000 0.3286267594591274 0.3286267594591274 0.40000000 0.4283923550466685 0.4283923550466684 0.50000000 0.5204998778130465 0.5204998778130465 0.60000000 0.6038560908479259 0.6038560908479259 0.70000000 0.6778011938374185 0.6778011938374184 0.80000000 0.7421009647076605 0.7421009647076605 0.90000000 0.7969082124228321 0.7969082124228322 1.00000000 0.8427007929497149 0.8427007929497149 1.10000000 0.8802050695740817 0.8802050695740817 1.20000000 0.9103139782296354 0.9103139782296353 1.30000000 0.9340079449406524 0.9340079449406524 1.40000000 0.9522851197626488 0.9522851197626488 1.50000000 0.9661051464753106 0.9661051464753108 1.60000000 0.9763483833446440 0.9763483833446440 1.70000000 0.9837904585907746 0.9837904585907745 1.80000000 0.9890905016357306 0.9890905016357308 1.90000000 0.9927904292352575 0.9927904292352575 2.00000000 0.9953222650189527 0.9953222650189527 TEST_DERFC: DERFC computes the complementary error function. ERFC_VALUES returns selected values. X FX FX2 (table) (DERFC) 0.00000000 1.000000000000000 1.000000000000000 0.20000000 0.7772974107895215 0.7772974107895215 0.40000000 0.5716076449533315 0.5716076449533315 0.60000000 0.3961439091520741 0.3961439091520741 0.80000000 0.2578990352923395 0.2578990352923395 1.00000000 0.1572992070502851 0.1572992070502851 1.20000000 0.8968602177036462E-01 0.8968602177036462E-01 1.40000000 0.4771488023735119E-01 0.4771488023735120E-01 1.60000000 0.2365161665535599E-01 0.2365161665535599E-01 1.80000000 0.1090949836426929E-01 0.1090949836426928E-01 2.00000000 0.4677734981047266E-02 0.4677734981047265E-02 2.20000000 0.1862846297981891E-02 0.1862846297981890E-02 2.40000000 0.6885138966450786E-03 0.6885138966450789E-03 2.60000000 0.2360344165293492E-03 0.2360344165293491E-03 2.80000000 0.7501319466545903E-04 0.7501319466545911E-04 3.00000000 0.2209049699858544E-04 0.2209049699858544E-04 3.20000000 0.6025761151762095E-05 0.6025761151762088E-05 3.40000000 0.1521993362862285E-05 0.1521993362862286E-05 3.60000000 0.3558629930076853E-06 0.3558629930076851E-06 3.80000000 0.7700392745696413E-07 0.7700392745696424E-07 4.00000000 0.1541725790028002E-07 0.1541725790028002E-07 TEST_DGAMMA: DGAMMA computes the gamma function. GAMMA_VALUES returns selected values. X FX FX2 (table) (DGAMMA) -0.50000000 -3.544907701811032 -3.544907701811032 -0.01000000 -100.5871979644108 -100.5871979644108 0.01000000 99.43258511915060 99.43258511915060 0.10000000 9.513507698668732 9.513507698668731 0.20000000 4.590843711998803 4.590843711998803 0.40000000 2.218159543757688 2.218159543757688 0.50000000 1.772453850905516 1.772453850905516 0.60000000 1.489192248812817 1.489192248812817 0.80000000 1.164229713725303 1.164229713725303 1.00000000 1.000000000000000 1.000000000000000 1.10000000 0.9513507698668732 0.9513507698668732 1.20000000 0.9181687423997607 0.9181687423997607 1.30000000 0.8974706963062772 0.8974706963062772 1.40000000 0.8872638175030753 0.8872638175030753 1.50000000 0.8862269254527581 0.8862269254527581 1.60000000 0.8935153492876903 0.8935153492876903 1.70000000 0.9086387328532904 0.9086387328532904 1.80000000 0.9313837709802427 0.9313837709802427 1.90000000 0.9617658319073874 0.9617658319073874 2.00000000 1.000000000000000 1.000000000000000 3.00000000 2.000000000000000 2.000000000000000 4.00000000 6.000000000000000 6.000000000000000 10.00000000 362880.0000000000 362880.0000000000 20.00000000 0.1216451004088320E+18 0.1216451004088321E+18 30.00000000 0.8841761993739702E+31 0.8841761993739751E+31 TEST_DLGAMA: DLGAMA computes the log of the gamma function. GAMMA_LOG_VALUES returns selected values. X FX FX2 (table) (DLGAMA) 0.20000000 1.524063822430784 1.524063822430785 0.40000000 0.7966778177017837 0.7966778177017837 0.60000000 0.3982338580692348 0.3982338580692349 0.80000000 0.1520596783998375 0.1520596783998375 1.00000000 0.000000000000000 0.000000000000000 1.10000000 -0.4987244125983972E-01 -0.4987244125983976E-01 1.20000000 -0.8537409000331583E-01 -0.8537409000331583E-01 1.30000000 -0.1081748095078604 -0.1081748095078605 1.40000000 -0.1196129141723712 -0.1196129141723713 1.50000000 -0.1207822376352452 -0.1207822376352452 1.60000000 -0.1125917656967557 -0.1125917656967558 1.70000000 -0.9580769740706586E-01 -0.9580769740706588E-01 1.80000000 -0.7108387291437215E-01 -0.7108387291437215E-01 1.90000000 -0.3898427592308333E-01 -0.3898427592308336E-01 2.00000000 0.000000000000000 0.000000000000000 3.00000000 0.6931471805599453 0.6931471805599453 4.00000000 1.791759469228055 1.791759469228055 10.00000000 12.80182748008147 12.80182748008147 20.00000000 39.33988418719949 39.33988418719949 30.00000000 71.25703896716801 71.25703896716801 TEST_ERF: ERF computes the error function. ERF_VALUES returns selected values. X FX FX2 (table) (ERF) 0.00000000 0.000000000000000 0.000000000000000 0.10000000 0.1124629160182849 0.1124629154801369 0.20000000 0.2227025892104785 0.2227025926113129 0.30000000 0.3286267594591274 0.3286267817020416 0.40000000 0.4283923550466685 0.4283923506736755 0.50000000 0.5204998778130465 0.5204998850822449 0.60000000 0.6038560908479259 0.6038560867309570 0.70000000 0.6778011938374185 0.6778011918067932 0.80000000 0.7421009647076605 0.7421009540557861 0.90000000 0.7969082124228321 0.7969081997871399 1.00000000 0.8427007929497149 0.8427007794380188 1.10000000 0.8802050695740817 0.8802050948143005 1.20000000 0.9103139782296354 0.9103139638900757 1.30000000 0.9340079449406524 0.9340079426765442 1.40000000 0.9522851197626488 0.9522851109504700 1.50000000 0.9661051464753106 0.9661051630973816 1.60000000 0.9763483833446440 0.9763484001159668 1.70000000 0.9837904585907746 0.9837904572486877 1.80000000 0.9890905016357306 0.9890905022621155 1.90000000 0.9927904292352575 0.9927904009819031 2.00000000 0.9953222650189527 0.9953222870826721 TEST_ERFC: ERFC computes the complementary error function. ERFC_VALUES returns selected values. X FX FX2 (table) (ERFC) 0.00000000 1.000000000000000 1.000000000000000 0.20000000 0.7772974107895215 0.7772974371910095 0.40000000 0.5716076449533315 0.5716076493263245 0.60000000 0.3961439091520741 0.3961438834667206 0.80000000 0.2578990352923395 0.2578990161418915 1.00000000 0.1572992070502851 0.1572992056608200 1.20000000 0.8968602177036462E-01 0.8968600630760193E-01 1.40000000 0.4771488023735119E-01 0.4771488532423973E-01 1.60000000 0.2365161665535599E-01 0.2365161478519440E-01 1.80000000 0.1090949836426929E-01 0.1090950053185225E-01 2.00000000 0.4677734981047266E-02 0.4677734803408384E-02 2.20000000 0.1862846297981891E-02 0.1862845849245787E-02 2.40000000 0.6885138966450786E-03 0.6885135662741959E-03 2.60000000 0.2360344165293492E-03 0.2360345388296992E-03 2.80000000 0.7501319466545903E-04 0.7501321670133621E-04 3.00000000 0.2209049699858544E-04 0.2209049671364482E-04 3.20000000 0.6025761151762095E-05 0.6025759375916095E-05 3.40000000 0.1521993362862285E-05 0.1521992317066179E-05 3.60000000 0.3558629930076853E-06 0.3558632499789383E-06 3.80000000 0.7700392745696413E-07 0.7700395343590571E-07 4.00000000 0.1541725790028002E-07 0.1541725858089649E-07 TEST_ETIME ETIME returns the user and system execution time. TARRAY(1) (User time) = 0.499900E-02 TARRAY(2) (System time) = 0.199900E-02 RESULT (0 = success) = 0 TEST_FDATE FDATE returns the current date as a string. It can be called as a function or subroutine. CALL FDATE ( STRING ) returns: "Tue Oct 30 10:52:39 2007". TEST_GAMMA: GAMMA computes the gamma function. GAMMA_VALUES returns selected values. X FX FX2 (table) (GAMMA) -0.50000000 -3.544907701811032 -3.544907808303833 -0.01000000 -100.5871979644108 -100.5872039794922 0.01000000 99.43258511915060 99.43258666992188 0.10000000 9.513507698668732 9.513507843017578 0.20000000 4.590843711998803 4.590843677520752 0.40000000 2.218159543757688 2.218159437179565 0.50000000 1.772453850905516 1.772453904151917 0.60000000 1.489192248812817 1.489192247390747 0.80000000 1.164229713725303 1.164229750633240 1.00000000 1.000000000000000 1.000000000000000 1.10000000 0.9513507698668732 0.9513507485389709 1.20000000 0.9181687423997607 0.9181687235832214 1.30000000 0.8974706963062772 0.8974707126617432 1.40000000 0.8872638175030753 0.8872638344764709 1.50000000 0.8862269254527581 0.8862269520759583 1.60000000 0.8935153492876903 0.8935153484344482 1.70000000 0.9086387328532904 0.9086387157440186 1.80000000 0.9313837709802427 0.9313837289810181 1.90000000 0.9617658319073874 0.9617658257484436 2.00000000 1.000000000000000 1.000000000000000 3.00000000 2.000000000000000 2.000000000000000 4.00000000 6.000000000000000 6.000000000000000 10.00000000 362880.0000000000 362880.0000000000 20.00000000 0.1216451004088320E+18 0.1216451045941576E+18 30.00000000 0.8841761993739702E+31 0.8841761870393380E+31 TEST_HOSTNM HOSTNM returns the host name as a string. RESULT = HOSTNM ( STRING ) returns: STRING = "pamd3.scs.fsu.edu". RESULT (0 = success) = 0 TEST_RAND RAND returns a real random value. The sequence is "seeded" by: R = RAND ( 1 ): reseeds by SRAND ( 0 ) or R = RAND ( S ): reseeds by SRAND ( S ) assuming S not 0, not 1. The sequence is used by: R = RAND ( ): returns next value in current random sequence. or R = RAND ( 0 ): same as R = RAND ( ); or R = RAND ( S ): reseeds sequence, and returns first value in new sequence, assuming S is not 0. Call SRAND(123456789) do i = 1, 10 R = RAND ( ) end do 1 0.682671 2 0.304945E-01 3 0.566237 4 0.917406 5 0.433527 6 0.953402 7 0.926609 8 0.395958 9 0.204166E-01 10 0.488633 CHANGING THE SEED CHANGES THE SEQUENCE: Call SRAND(987654321) do i = 1, 10 R = RAND ( ) end do 1 0.153719 2 0.380043 3 0.309770 4 0.779870 5 0.832998 6 0.606396 7 0.120096 8 0.377905 9 0.721066 10 0.730671 RESTORING THE OLD SEED RESTARTS THE OLD SEQUENCE: Call SRAND(123456789) do i = 1, 10 R = RAND ( ) end do 1 0.682671 2 0.304945E-01 3 0.566237 4 0.917406 5 0.433527 6 0.953402 7 0.926609 8 0.395958 9 0.204166E-01 10 0.488633 WE CAN PASS THE SEED IN THROUGH RAND: R = RAND(987654321) do i = 2, 10 R = RAND ( ) end do 1 0.153719 2 0.380043 3 0.309770 4 0.779870 5 0.832998 6 0.606396 7 0.120096 8 0.377905 9 0.721066 10 0.730671 WE CAN GET A "RANDOM" SEED: R = RAND(1) do i = 2, 10 R = RAND ( ) end do 1 0.676995 2 0.847497E-01 3 0.932470 4 0.696807 5 0.359929 6 0.896083 7 0.400644 8 0.656935 9 0.329988 10 0.656883 CALLING WITH RAND(0) IS THE SAME AS RAND(): Call SRAND(123456789) do i = 1, 10 R = RAND ( ) end do 1 0.682671 2 0.304945E-01 3 0.566237 4 0.917406 5 0.433527 6 0.953402 7 0.926609 8 0.395958 9 0.204166E-01 10 0.488633 TEST_SECNDS I = SECNDS ( T ) returns the local time, in seconds since midnight, minus T. Note that T is real, and I is an integer. The code fragment: T1 = SECNDS ( 0.0 ) stuff happens T2 = SECNDS ( real ( T1 ) ) will compute the (wallclock) time elapsed while stuff happens. Value returned by SECNDS ( 0.0000 ) = 39159 Value returned by SECNDS ( 39159.0000 ) = 0 TEST_SIZEOF SIZEOF returns the size, in bytes, of various objects. Type Byte Size character 1 complex 8 double complex 16 double precision 8 integer 4 logical 4 real 4 character ( len = 15 ) 15 TEST_SLEEP CALL SLEEP ( T ) causes the program to "sleep" for T seconds. Current TIME in seconds is = 1193755959 Now CALL SLEEP ( 10 ) Current TIME in seconds is = 1193755969 TEST_SRAND SRAND resets the seed used by RAND, the random number generator. If you do nothing before calling RAND, a seed is chosen for you. To control the sequence, especially so you can regenerate it later, use call SRAND ( SEED ) using a NONZERO value of SEED. If you use a ZERO value for SEED, the sequence is reset, but with a SEED value chosen at random. To start, we just call RAND without calling SRAND first. Presumably, we get a "random" seed. do i = 1, 10 R = RAND ( ) end do 1 0.729191 2 0.321671E-01 3 0.668233 4 0.255022 5 0.951997 6 0.189322 7 0.905600 8 0.678918 9 0.216941 10 0.651261 To generate a repeatable sequence, we must call SRAND. SEED = 123456789 call SRAND ( SEED ) do i = 1, 10 r = RAND ( ) end do 1 0.682671 2 0.304945E-01 3 0.566237 4 0.917406 5 0.433527 6 0.953402 7 0.926609 8 0.395958 9 0.204166E-01 10 0.488633 Changing the seed changes the sequence: SEED = 987654321 call SRAND ( SEED ) do i = 1, 10 r = RAND ( ) end do 1 0.153719 2 0.380043 3 0.309770 4 0.779870 5 0.832998 6 0.606396 7 0.120096 8 0.377905 9 0.721066 10 0.730671 Restoring the seed restarts the sequence: SEED = 123456789 call SRAND ( SEED ) do i = 1, 10 r = RAND ( ) end do 1 0.682671 2 0.304945E-01 3 0.566237 4 0.917406 5 0.433527 6 0.953402 7 0.926609 8 0.395958 9 0.204166E-01 10 0.488633 We can implicitly call SRAND by calling RAND with the new seed value in the argument. SEED = 987654321 r = RAND ( SEED ) do i = 2, 10 r = RAND ( ) end do 1 0.153719 2 0.380043 3 0.309770 4 0.779870 5 0.832998 6 0.606396 7 0.120096 8 0.377905 9 0.721066 10 0.730671 We can get a random seed by using an argument of 0: SEED = 0 call SRAND ( SEED ) do i = 1, 10 r = RAND ( ) end do The output value of SEED is NOT updated. SEED on return = 0 1 0.853011 2 0.942257E-02 3 0.307814 4 0.758168 5 0.802037 6 0.613674 7 0.604156E-01 8 0.412367 9 0.427123 10 0.396714 TEST_SYSTEM RESULT = SYSTEM ( STRING ) issues the command STRING to the operating system, waits for the command to complete and sets RESULT to the return value of the command. We issue the command RESULT = SYSTEM ( 'date' ) Tue Oct 30 10:52:49 EDT 2007 RESULT ( 0 = success ) = 0 TEST_TIME I = TIME ( ) returns the time, encoded as the number of seconds since 01 January 1970. Value returned by TIME = 1193755970 G95_INTRINSICS_PRB Normal end of execution. 30 October 2007 10:52:50.033 AM