Wed Sep 12 23:01:25 2018 DISK_RULE_TESTS Python version: 3.6.5 Test the DISK_RULE library. DISK_RULE_TEST Python version: 3.6.5 DISK_RULE can compute a rule Q(f) for a general disk centered at (XC,YC) with radius RC, using NT equally spaced angles and NR radial distances. NT = 8 NR = 4 Estimate integrals I(f) where f = x^ex * y^ey. Ex Ey I(f) Q(f) 0 0 28.2743 28.2743 1 0 28.2743 28.2743 0 1 56.5487 56.5487 2 0 91.8916 91.8916 1 1 56.5487 56.5487 0 2 176.715 176.715 3 0 219.126 219.126 2 1 183.783 183.783 1 2 176.715 176.715 0 3 607.898 607.898 4 0 696.255 696.255 3 1 438.252 438.252 2 2 526.609 526.609 1 3 607.898 607.898 0 4 2265.48 2265.48 DISK_RULE_TEST: Normal end of execution. DISK01_AREA_TEST Python version: 3.6.5 DISK01_AREA returns the area of the unit disk. DISK01_AREA() = 3.14159 DISK01_AREA_TEST Normal end of execution. DISK01_MONOMIAL_INTEGRAL_TEST Python version: 3.6.5 DISK01_MONOMIAL_INTEGRAL computes monomial integrals over the interior of the unit disk in 2D. Compare with a Monte Carlo value. Number of sample points used is 4192 If any exponent is odd, the integral is zero. We will restrict this test to randomly chosen even exponents. Ex Ey MC-Estimate Exact Error 6 0 0.253235 0.245437 0.0078 4 6 0.00584407 0.00613592 0.00029 6 0 0.253235 0.245437 0.0078 8 0 0.178699 0.171806 0.0069 2 0 0.795402 0.785398 0.01 4 0 0.401755 0.392699 0.0091 0 8 0.168946 0.171806 0.0029 4 8 0.00291431 0.00306796 0.00015 4 6 0.00584407 0.00613592 0.00029 8 8 0.000351276 0.000372843 2.2e-05 4 8 0.00291431 0.00306796 0.00015 0 4 0.385855 0.392699 0.0068 2 2 0.128551 0.1309 0.0023 4 8 0.00291431 0.00306796 0.00015 8 8 0.000351276 0.000372843 2.2e-05 2 4 0.0475371 0.0490874 0.0016 2 2 0.128551 0.1309 0.0023 0 8 0.168946 0.171806 0.0029 4 4 0.0141977 0.0147262 0.00053 2 0 0.795402 0.785398 0.01 DISK01_MONOMIAL_INTEGRAL_TEST: Normal end of execution. DISK01_RULE_TEST Python version: 3.6.5 DISK01_RULE can compute a rule Q(f) for the unit disk using NT equally spaced angles and NR radial distances. NT = 8 NR = 4 Estimate integrals I(f) where f = x^e(1) * y^e(2). E(1) E(2) I(f) Q(f) 0 0 3.14159 3.14159 0 2 0.785398 0.785398 0 4 0.392699 0.392699 0 6 0.245437 0.245437 2 2 0.1309 0.1309 2 4 0.0490874 0.0490874 2 6 0.0245437 0.019635 4 4 0.0147262 0.019635 4 6 0.00613592 0.00818123 6 6 0.0021914 0.00350624 DISK01_RULE_TEST: Normal end of execution. DISK01_SAMPLE_TEST Python version: 3.6.5 DISK01_SAMPLE samples the unit disk. Sample points in the unit disk. Row: 0 1 Col 0 : 0.610673 -0.205878 1 : -0.0436156 0.795024 2 : -0.89277 0.0157954 3 : 0.107487 0.0454255 4 : 0.0735343 0.504872 5 : 0.233325 0.461185 6 : -0.797277 -0.525668 7 : 0.233201 -0.361844 8 : -0.343551 -0.308063 9 : 0.591758 0.688827 DISK01_SAMPLE_TEST Normal end of execution. GAMMA_VALUES_TEST: Python version: 3.6.5 GAMMA_VALUES stores values of the Gamma function. X GAMMA(X) -0.500000 -3.5449077018110322 -0.010000 -100.5871979644108052 0.010000 99.4325851191506018 0.100000 9.5135076986687324 0.200000 4.5908437119988026 0.400000 2.2181595437576882 0.500000 1.7724538509055161 0.600000 1.4891922488128171 0.800000 1.1642297137253030 1.000000 1.0000000000000000 1.100000 0.9513507698668732 1.200000 0.9181687423997607 1.300000 0.8974706963062772 1.400000 0.8872638175030753 1.500000 0.8862269254527581 1.600000 0.8935153492876903 1.700000 0.9086387328532904 1.800000 0.9313837709802427 1.900000 0.9617658319073874 2.000000 1.0000000000000000 3.000000 2.0000000000000000 4.000000 6.0000000000000000 10.000000 362880.0000000000000000 20.000000 121645100408832000.0000000000000000 30.000000 8841761993739701898620088352768.0000000000000000 GAMMA_VALUES_TEST: Normal end of execution. I4VEC_PRINT_TEST Python version: 3.6.5 I4VEC_PRINT prints an I4VEC. Here is an I4VEC: 0 91 1 92 2 93 3 94 I4VEC_PRINT_TEST: Normal end of execution. I4VEC_TRANSPOSE_PRINT_TEST Python version: 3.6.5 I4VEC_TRANSPOSE_PRINT prints an I4VEC with 5 entries to a row, and an optional title. My array: 1 2 3 4 5 6 7 8 9 10 11 12 I4VEC_TRANSPOSE_PRINT_TEST: Normal end of execution. I4VEC_UNIFORM_AB_TEST Python version: 3.6.5 I4VEC_UNIFORM_AB computes pseudorandom values in an interval [A,B]. The lower endpoint A = -100 The upper endpoint B = 200 The initial seed is 123456789 The random vector: 0 -35 1 187 2 149 3 69 4 25 5 -81 6 -23 7 -67 8 -87 9 90 10 -82 11 35 12 20 13 127 14 139 15 -100 16 170 17 5 18 -72 19 -96 I4VEC_UNIFORM_AB_TEST: Normal end of execution. IMTQLX_TEST Python version: 3.6.5 IMTQLX takes a symmetric tridiagonal matrix A and computes its eigenvalues LAM. It also accepts a vector Z and computes Q'*Z, where Q is the matrix that diagonalizes A. Computed eigenvalues: 0: 0.267949 1: 1 2: 2 3: 3 4: 3.73205 Exact eigenvalues: 0: 0.267949 1: 1 2: 2 3: 3 4: 3.73205 Vector Z: 0: 1 1: 1 2: 1 3: 1 4: 1 Vector Q*Z: 0: -2.1547 1: -1.8855e-16 2: 0.57735 3: 1.66533e-16 4: -0.154701 IMTQLX_TEST: Normal end of execution. LEGENDRE_EK_COMPUTE_TEST Python version: 3.6.5 LEGENDRE_EK_COMPUTE computes a Legendre quadrature rule using the Elhay-Kautsky algorithm. Index X W 0 0 2 0 -0.5773502691896256 1 1 0.5773502691896256 1 0 -0.7745966692414832 0.5555555555555559 1 -6.466579952145703e-17 0.8888888888888886 2 0.7745966692414834 0.5555555555555554 0 -0.8611363115940526 0.3478548451374537 1 -0.3399810435848563 0.6521451548625463 2 0.3399810435848564 0.6521451548625459 3 0.8611363115940522 0.347854845137454 0 -0.9061798459386641 0.2369268850561892 1 -0.538469310105683 0.4786286704993667 2 -3.478412152580952e-17 0.5688888888888882 3 0.5384693101056829 0.478628670499367 4 0.9061798459386642 0.2369268850561892 0 -0.9324695142031522 0.1713244923791701 1 -0.6612093864662647 0.3607615730481389 2 -0.2386191860831971 0.4679139345726916 3 0.2386191860831969 0.4679139345726918 4 0.6612093864662648 0.3607615730481388 5 0.9324695142031524 0.1713244923791705 0 -0.9491079123427583 0.1294849661688696 1 -0.7415311855993943 0.2797053914892763 2 -0.4058451513773971 0.381830050505119 3 4.452841060583418e-17 0.4179591836734696 4 0.4058451513773971 0.3818300505051177 5 0.7415311855993941 0.2797053914892761 6 0.9491079123427584 0.1294849661688694 0 -0.9602898564975358 0.101228536290376 1 -0.7966664774136267 0.2223810344533742 2 -0.5255324099163291 0.3137066458778873 3 -0.1834346424956499 0.3626837833783611 4 0.1834346424956497 0.3626837833783627 5 0.5255324099163293 0.3137066458778878 6 0.7966664774136266 0.2223810344533745 7 0.9602898564975362 0.1012285362903759 0 -0.9681602395076263 0.08127438836157426 1 -0.836031107326636 0.1806481606948577 2 -0.6133714327005901 0.2606106964029359 3 -0.3242534234038091 0.3123470770400025 4 1.604668093316319e-16 0.3302393550012599 5 0.324253423403809 0.3123470770400033 6 0.6133714327005904 0.2606106964029349 7 0.836031107326636 0.180648160694857 8 0.9681602395076262 0.08127438836157452 0 -0.973906528517172 0.06667134430868817 1 -0.8650633666889845 0.1494513491505806 2 -0.6794095682990243 0.2190863625159822 3 -0.4333953941292472 0.2692667193099962 4 -0.1488743389816309 0.2955242247147525 5 0.148874338981631 0.2955242247147538 6 0.4333953941292469 0.2692667193099955 7 0.6794095682990243 0.2190863625159825 8 0.8650633666889844 0.14945134915058 9 0.973906528517172 0.06667134430868776 LEGENDRE_EK_COMPUTE_TEST: Normal end of execution. MONOMIAL_VALUE_TEST Python version: 3.6.5 Use monomial_value() to evaluate some monomials in dimensions 1 through 3. Spatial dimension M = 1 Exponents: -1 V(X) X(0) 0.111111 9.0000 0.125 8.0000 0.2 5.0000 0.333333 3.0000 -1 -1.0000 Spatial dimension M = 2 Exponents: -1 -2 V(X) X(0) X(1) -0.0277778 -1.0000 6.0000 -0.111111 -1.0000 3.0000 0.00680272 3.0000 7.0000 0.03125 8.0000 -2.0000 0.0277778 9.0000 2.0000 Spatial dimension M = 3 Exponents: -3 -3 5 V(X) X(0) X(1) X(2) 0.0625 8.0000 -1.0000 -2.0000 -0.00137174 1.0000 9.0000 -1.0000 0.000244141 2.0000 8.0000 1.0000 1.21363 6.0000 5.0000 8.0000 0.158766 3.0000 9.0000 5.0000 MONOMIAL_VALUE_TEST Normal end of execution. R8_GAMMA_TEST: Python version: 3.6.5 R8_GAMMA evaluates the Gamma function. X GAMMA(X) R8_GAMMA(X) -0.5 -3.544907701811032 -3.544907701811032 -0.01 -100.5871979644108 -100.5871979644108 0.01 99.4325851191506 99.4325851191506 0.1 9.513507698668732 9.513507698668731 0.2 4.590843711998803 4.590843711998803 0.4 2.218159543757688 2.218159543757688 0.5 1.772453850905516 1.772453850905516 0.6 1.489192248812817 1.489192248812817 0.8 1.164229713725303 1.164229713725303 1 1 1 1.1 0.9513507698668732 0.9513507698668732 1.2 0.9181687423997607 0.9181687423997607 1.3 0.8974706963062772 0.8974706963062772 1.4 0.8872638175030753 0.8872638175030754 1.5 0.8862269254527581 0.8862269254527581 1.6 0.8935153492876903 0.8935153492876903 1.7 0.9086387328532904 0.9086387328532904 1.8 0.9313837709802427 0.9313837709802427 1.9 0.9617658319073874 0.9617658319073874 2 1 1 3 2 2 4 6 6 10 362880 362880 20 1.21645100408832e+17 1.216451004088321e+17 30 8.841761993739702e+30 8.841761993739751e+30 R8_GAMMA_TEST Normal end of execution. R8_NORMAL_01_TEST Python version: 3.6.5 R8_NORMAL_01 generates normally distributed random values. Using initial random number seed = 123456789 1.679040 -0.566060 1.212934 1.269381 -1.666087 -2.242464 0.039675 0.673068 -0.275127 2.164005 0.297785 2.044536 1.398819 -1.242985 -0.067084 -0.794396 -0.523768 -0.350567 0.131700 0.537380 R8_NORMAL_01_TEST Normal end of execution. R8_UNIFORM_01_TEST Python version: 3.6.5 R8_UNIFORM_01 produces a sequence of random values. Using random seed 123456789 SEED R8_UNIFORM_01(SEED) 469049721 0.218418 2053676357 0.956318 1781357515 0.829509 1206231778 0.561695 891865166 0.415307 141988902 0.066119 553144097 0.257578 236130416 0.109957 94122056 0.043829 1361431000 0.633966 Verify that the sequence can be restarted. Set the seed back to its original value, and see that we generate the same sequence. SEED R8_UNIFORM_01(SEED) 469049721 0.218418 2053676357 0.956318 1781357515 0.829509 1206231778 0.561695 891865166 0.415307 141988902 0.066119 553144097 0.257578 236130416 0.109957 94122056 0.043829 1361431000 0.633966 R8_UNIFORM_01_TEST Normal end of execution. R8MAT_PRINT_TEST Python version: 3.6.5 R8MAT_PRINT prints an R8MAT. Here is an R8MAT: Col: 0 1 2 3 4 Row 0 : 11 12 13 14 15 1 : 21 22 23 24 25 2 : 31 32 33 34 35 3 : 41 42 43 44 45 Col: 5 Row 0 : 16 1 : 26 2 : 36 3 : 46 R8MAT_PRINT_TEST: Normal end of execution. R8MAT_PRINT_SOME_TEST Python version: 3.6.5 R8MAT_PRINT_SOME prints some of an R8MAT. Here is an R8MAT: Col: 3 4 5 Row 0 : 14 15 16 1 : 24 25 26 2 : 34 35 36 R8MAT_PRINT_SOME_TEST: Normal end of execution. R8MAT_TRANSPOSE_PRINT_TEST Python version: 3.6.5 R8MAT_TRANSPOSE_PRINT prints an R8MAT. Here is an R8MAT, transposed: Row: 0 1 2 3 Col 0 : 11 21 31 41 1 : 12 22 32 42 2 : 13 23 33 43 R8MAT_TRANSPOSE_PRINT_TEST: Normal end of execution. R8MAT_TRANSPOSE_PRINT_SOME_TEST Python version: 3.6.5 R8MAT_TRANSPOSE_PRINT_SOME prints some of an R8MAT, transposed. R8MAT, rows 0:2, cols 3:5: Row: 0 1 2 Col 3 : 14 24 34 4 : 15 25 35 5 : 16 26 36 R8MAT_TRANSPOSE_PRINT_SOME_TEST: Normal end of execution. R8MAT_UNIFORM_AB_TEST Python version: 3.6.5 R8MAT_UNIFORM_AB computes a random R8MAT. -1 <= X <= 5 Initial seed is 123456789 Random R8MAT: Col: 0 1 2 3 Row 0 : 0.31051 -0.603288 -0.629637 -0.98897 1 : 4.73791 0.545467 1.69723 4.38502 2 : 3.97706 -0.340259 1.40784 1.10451 3 : 2.37017 -0.737026 3.52804 -0.432731 4 : 1.49184 2.80379 3.78372 -0.918299 R8MAT_UNIFORM_AB_TEST: Normal end of execution. R8VEC_NORMAL_01_TEST Python version: 3.6.5 R8VEC_NORMAL_01 returns a vector of Normal 01 values SEED = 123456789 Vector: 0: 1.67904 1: -0.56606 2: 1.21293 3: 1.26938 4: -1.66609 5: -2.24246 6: 0.0396749 7: 0.673068 8: -0.275127 9: 2.164 R8VEC_NORMAL_01_TEST: Normal end of execution. R8VEC_PRINT_TEST Python version: 3.6.5 R8VEC_PRINT prints an R8VEC. Here is an R8VEC: 0: 123.456 1: 5e-06 2: -1e+06 3: 3.14159 R8VEC_PRINT_TEST: Normal end of execution. R8VEC_TRANSPOSE_PRINT_TEST Python version: 3.6.5 R8VEC_TRANSPOSE_PRINT prints an R8VEC "tranposed", that is, placing multiple entries on a line. The vector X: 1 2.1 3.2 4.3 5.4 6.5 7.6 8.7 9.8 10.9 11 R8VEC_TRANSPOSE_PRINT_TEST Normal end of execution. R8VEC_UNIFORM_01_TEST Python version: 3.6.5 R8VEC_UNIFORM_01 computes a random R8VEC. Initial seed is 123456789 Random R8VEC: 0: 0.218418 1: 0.956318 2: 0.829509 3: 0.561695 4: 0.415307 5: 0.0661187 6: 0.257578 7: 0.109957 8: 0.043829 9: 0.633966 R8VEC_UNIFORM_01_TEST: Normal end of execution. DISK_RULE_TESTS: Normal end of execution. Wed Sep 12 23:01:25 2018