6 March 2018 3:37:10.392 PM UNIFORM_TEST FORTRAN90 version Test the UNIFORM library. BVEC_UNIFORM_TEST BVEC_UNIFORM computes a binary vector. The initial seed is 123456789 1000111110 1110010111 0011101101 0001001011 0101101100 1010010001 0010111011 1111110001 0010000111 0011000101 C4_UNIFORM_01_TEST C4_UNIFORM_01 computes pseudorandom complex values uniformly distributed in the unit circle. The initial seed is 123456789 1 0.44985962 -0.12666743 2 -0.84319657 -0.34428003 3 0.58962709 0.26009026 4 0.39113963 0.32340002 5 -0.13946573 -0.15613554 6 -0.23606625 0.07745939 7 0.01859913 -0.63321429 8 0.89284968 0.01031361 9 -0.56046486 0.76379520 10 0.30635661 0.02627523 C4MAT_UNIFORM_01_TEST C4MAT_UNIFORM_01 computes pseudorandom complex values uniformly distributed in the unit circle. The initial seed is 123456789 Uniform C4MAT: Col: 1 2 Row --- 1: 0.450 -0.127 -0.139 -0.156 2:-0.843 -0.344 -0.236 0.775E-01 3: 0.590 0.260 0.186E-01-0.633 4: 0.391 0.323 0.893 0.103E-01 C4VEC_UNIFORM_01_TEST C4VEC_UNIFORM_01 computes pseudorandom complex values uniformly distributed in the unit circle. The initial seed is 123456789 Uniform C4VEC: 1: 0.449860 -0.126667 2: -0.843197 -0.344280 3: 0.589627 0.260090 4: 0.391140 0.323400 5: -0.139466 -0.156136 6: -0.236066 0.774594E-01 7: 0.185991E-01 -0.633214 8: 0.892850 0.103136E-01 9: -0.560465 0.763795 10: 0.306357 0.262752E-01 C8_UNIFORM_01_TEST C8_UNIFORM_01 computes pseudorandom double precision complex values uniformly distributed in the unit circle. The initial seed is 123456789 1 0.44985962 -0.12666736 2 -0.84319660 -0.34428002 3 0.58962711 0.26009028 4 0.39113963 0.32340003 5 -0.13946573 -0.15613554 6 -0.23606627 0.07745932 7 0.01859929 -0.63321430 8 0.89284970 0.01031361 9 -0.56046507 0.76379511 10 0.30635659 0.02627523 C8MAT_UNIFORM_01_TEST C8MAT_UNIFORM_01 computes pseudorandom complex values uniformly distributed in the unit circle. The initial seed is 123456789 Uniform C8MAT: Col: 1 2 Row --- 1: 0.450 -0.127 -0.139 -0.156 2:-0.843 -0.344 -0.236 0.775E-01 3: 0.590 0.260 0.186E-01-0.633 4: 0.391 0.323 0.893 0.103E-01 C8VEC_UNIFORM_01_TEST C8VEC_UNIFORM_01 computes pseudorandom double precision complex values uniformly distributed in the unit circle. The initial seed is 123456789 The Uniform C8VEC: 1 0.449860 -0.126667 2 -0.843197 -0.344280 3 0.589627 0.260090 4 0.391140 0.323400 5 -0.139466 -0.156136 6 -0.236066 0.774593E-01 7 0.185993E-01 -0.633214 8 0.892850 0.103136E-01 9 -0.560465 0.763795 10 0.306357 0.262752E-01 CH_UNIFORM_AB_TEST CH_UNIFORM_AB computes pseudorandom characters in an interval [CLO,CHI]. The lower endpoint CLO = "A". The upper endpoint CHI = "J". The initial seed is 123456789 1 C 2 J 3 I 4 F 5 E 6 A 7 C 8 B 9 A 10 G GET_SEED_TEST GET_SEED picks an initial seed value for UNIFORM. The value chosen should vary over time, because the seed is based on reading the clock. This is just the "calendar" clock, which does not change very fast, so calling GET_SEED several times in a row may result in the same value. Initial SEED is 12345678 Next 3 values of R8_UNIFORM: 0.62183479 0.17724775 0.00290613 New seed from GET_SEED is 783710314 Next 3 values of R8_UNIFORM_01: 0.60630978 0.24854629 0.31754066 New seed from GET_SEED is 784068586 Next 3 values of R8_UNIFORM_01: 0.41027875 0.55497992 0.54753412 New seed from GET_SEED is 784426858 Next 3 values of R8_UNIFORM_01: 0.21424772 0.86141355 0.77752758 New seed from GET_SEED is 784785130 Next 3 values of R8_UNIFORM_01: 0.01821669 0.16784718 0.00752104 I4_SEED_ADVANCE_TEST I4_SEED_ADVANCE advances the seed. Step SEED input SEED output 1 12345 207482415 2 207482415 1790989824 3 1790989824 2035175616 4 2035175616 77048696 5 77048696 24794531 6 24794531 109854999 7 109854999 1644515420 8 1644515420 1256127050 9 1256127050 1963079340 10 1963079340 1683198519 I4_UNIFORM_0I_TEST I4_UNIFORM_0I samples a uniform random integer distribution in [0,2**31-1]. Starting with seed = 123456789 First few values: 1 469049721 2 2053676357 3 1781357515 4 1206231778 5 891865166 Number of values computed was N = 1000 Average value was 0.108027E+10 Minimum value was 3947872 Maximum value was 2142991809 Variance was 0.379689E+18 I4_UNIFORM_AB_TEST I4_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 1 -35 2 187 3 149 4 69 5 25 6 -81 7 -23 8 -67 9 -87 10 90 11 -82 12 35 13 20 14 127 15 139 16 -100 17 170 18 5 19 -72 20 -96 I4MAT_UNIFORM_AB_TEST I4MAT_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 Uniform I4MAT: Col 1 2 3 4 Row 1: -35 -81 -82 -100 2: 187 -23 35 170 3: 149 -67 20 5 4: 69 -87 127 -72 5: 25 90 139 -96 I4VEC_UNIFORM_AB_TEST 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 Uniform I4VEC: 1: -35 2: 187 3: 149 4: 69 5: 25 6: -81 7: -23 8: -67 9: -87 10: 90 11: -82 12: 35 13: 20 14: 127 15: 139 16: -100 17: 170 18: 5 19: -72 20: -96 L4_UNIFORM_TEST L4_UNIFORM computes pseudorandom logical values. The initial seed is 123456789 1 F 2 T 3 T 4 T 5 F 6 F 7 F 8 F 9 F 10 T L4MAT_UNIFORM_TEST L4MAT_UNIFORM computes a vector of pseudorandom logical values. The initial seed is 123456789 Uniform L4MAT: Col 1 2 3 4 Row 1: F F F F 2: T F F T 3: T F F F 4: T F T F 5: F T T F L4VEC_UNIFORM_TEST L4VEC_UNIFORM computes a vector of pseudorandom logical values. The initial seed is 123456789 Uniform L4VEC: 1: F 2: T 3: T 4: T 5: F 6: F 7: F 8: F 9: F 10: T LCRG_ANBN_TEST LCRG_ANBN determines a linear congruential random number generator equivalent to N steps of a given one. LCRG parameters: A = 16807 B = 0 C = 2147483647 N A B 0 1 0 1 16807 0 2 282475249 0 3 1622650073 0 4 984943658 0 5 1144108930 0 6 470211272 0 7 101027544 0 8 1457850878 0 9 1458777923 0 10 2007237709 0 N In Out 0 12345 1 12345 207482415 2 207482415 1790989824 3 1790989824 2035175616 4 2035175616 77048696 5 77048696 24794531 6 24794531 109854999 7 109854999 1644515420 8 1644515420 1256127050 9 1256127050 1963079340 10 1963079340 1683198519 11 1683198519 715426902 LCRG parameters: AN = 984943658 BN = 0 C = 2147483647 J N In Out 1 0 12345 2 1 207482415 3 2 1790989824 4 3 2035175616 1 4 12345 77048696 2 5 207482415 24794531 3 6 1790989824 109854999 4 7 2035175616 1644515420 1 8 77048696 1256127050 2 9 24794531 1963079340 3 10 109854999 1683198519 4 11 1644515420 715426902 LCRG_SEED_TEST LCRG_SEED directly computes the updated value of a seed used by an linear congruential random number generator. I SEED SEED SEED U Input Output LCRG 1 12345 207482415 207482415 0.966165E-01 2 207482415 1790989824 1790989824 0.833995 3 1790989824 2035175616 2035175616 0.947703 4 2035175616 77048696 77048696 0.358786E-01 5 77048696 24794531 24794531 0.115459E-01 6 24794531 109854999 109854999 0.511552E-01 7 109854999 1644515420 1644515420 0.765787 8 1644515420 1256127050 1256127050 0.584930 9 1256127050 1963079340 1963079340 0.914130 10 1963079340 1683198519 1683198519 0.783800 100 1549894482 99920864 99920864 0.465293E-01 1000 890151694 1408436056 1408436056 0.655854 R4_UNIFORM_01_TEST R4_UNIFORM_01 computes pseudorandom values in the interval [0,1]. The initial seed is 123456789 1 0.218418 2 0.956318 3 0.829509 4 0.561695 5 0.415307 6 0.661187E-01 7 0.257578 8 0.109957 9 0.438290E-01 10 0.633966 R4_UNIFORM_AB_TEST R4_UNIFORM_AB computes pseudorandom values in an interval [A,B]. The lower endpoint A = 5.00000 The upper endpoint B = 10.0000 The initial seed is 123456789 1 6.09209 2 9.78159 3 9.14755 4 7.80848 5 7.07654 6 5.33059 7 6.28789 8 5.54978 9 5.21914 10 8.16983 R4MAT_UNIFORM_AB_TEST R4MAT_UNIFORM_AB computes pseudorandom values in an interval [A,B]. The lower endpoint A = -5.0000 The upper endpoint B = 10.0000 The initial seed is 123456789 Uniform R4MAT: Col 1 2 3 4 Row 1: -1.72373 -4.00822 -4.07409 -4.97242 2: 9.34476 -1.13633 1.74308 8.46256 3: 7.44264 -3.35065 1.01959 0.261285 4: 3.42543 -4.34257 6.32010 -3.58183 5: 1.22961 4.50949 6.95930 -4.79575 R4VEC_UNIFORM_AB_TEST R4VEC_UNIFORM_AB computes pseudorandom values in an interval [A,B]. The lower endpoint A = -5.0000 The upper endpoint B = 10.0000 The initial seed is 123456789 Uniform R4VEC: 1: -1.7237256 2: 9.3447638 3: 7.4426384 4: 3.4254322 5: 1.2296062 6: -4.0082188 7: -1.1363330 8: -3.3506479 9: -4.3425651 10: 4.5094862 11: -4.0740914 12: 1.7430840 13: 1.0195942 14: 6.3201027 15: 6.9593039 16: -4.9724245 17: 8.4625607 18: 0.26128483 19: -3.5818286 20: -4.7957468 R8_UNIFORM_01_TEST R8_UNIFORM_01 computes pseudorandom values in the interval [0,1]. The initial seed is 123456789 1 0.218418 2 0.956318 3 0.829509 4 0.561695 5 0.415307 6 0.661187E-01 7 0.257578 8 0.109957 9 0.438290E-01 10 0.633966 R8_UNIFORM_AB_TEST R8_UNIFORM_AB computes pseudorandom values in an interval [A,B]. The lower endpoint A = 5.00000 The upper endpoint B = 10.0000 The initial seed is 123456789 1 6.09209 2 9.78159 3 9.14755 4 7.80848 5 7.07654 6 5.33059 7 6.28789 8 5.54978 9 5.21914 10 8.16983 R8MAT_UNIFORM_01_TEST R8MAT_UNIFORM_01 computes a random R8VEC. The initial seed is 123456789 Uniform R8MAT Col 1 2 3 4 Row 1: 0.218418 0.661187E-01 0.617272E-01 0.183837E-02 2: 0.956318 0.257578 0.449539 0.897504 3: 0.829509 0.109957 0.401306 0.350752 4: 0.561695 0.438290E-01 0.754673 0.945448E-01 5: 0.415307 0.633966 0.797287 0.136169E-01 R8VEC_UNIFORM_01_TEST R8VEC_UNIFORM_01 computes a random R8VEC. The initial seed is 123456789 Uniform R8VEC 1: 0.21841830 2: 0.95631758 3: 0.82950923 4: 0.56169544 5: 0.41530708 6: 0.66118735E-01 7: 0.25757779 8: 0.10995679 9: 0.43828998E-01 10: 0.63396571 R8VEC_UNIFORM_AB_TEST R8VEC_UNIFORM_AB computes a random R8VEC. -1.00000 <= X <= 5.00000 The initial seed is 123456789 Uniform R8VEC 1: 0.31050978 2: 4.7379055 3: 3.9770554 4: 2.3701727 5: 1.4918425 6: -0.60328759 7: 0.54546675 8: -0.34025924 9: -0.73702601 10: 2.8037943 R8COL_UNIFORM_ABVEC_TEST R8COL_UNIFORM_ABVEC computes a random R8COL. The initial seed is 123456789 0.0000: 0.2184 0.0661 0.0617 0.0018 : 1.0000 0.2000: 0.2478 0.2129 0.2225 0.2449 : 0.2500 10.0000: 18.2951 11.0996 14.0131 13.5075 : 20.0000 52.0000: 53.1234 52.0877 53.5093 52.1891 : 54.0000 -1.0000: -0.1694 0.2679 0.5946 -0.9728 : 1.0000 R8ROW_UNIFORM_ABVEC_TEST R8ROW_UNIFORM_ABVEC computes a random R8ROW. The initial seed is 123456789 1.0000 0.2500 20.0000 54.0000 1.0000 0.2184 0.2478 18.2951 53.1234 -0.1694 0.0661 0.2129 11.0996 52.0877 0.2679 0.0617 0.2225 14.0131 53.5093 0.5946 0.0018 0.2449 13.5075 52.1891 -0.9728 0.0000 0.2000 10.0000 52.0000 -1.0000 R8VEC_UNIFORM_ABVEC_TEST R8VEC_UNIFORM_ABVEC computes a random R8VEC. The initial seed is 123456789 I A X B 1 0.0000 0.2184 1.0000 2 0.2000 0.2478 0.2500 3 10.0000 18.2951 20.0000 4 52.0000 53.1234 54.0000 5 -1.0000 -0.1694 1.0000 UNIFORM_TEST Normal end of execution. 6 March 2018 3:37:10.395 PM