Wed Oct 8 08:50:30 2025 r8cbb_test(): python version: 3.10.12 numpy version: 1.26.4 Test r8cbb(). R8CBB_ADD_TEST R8CBB_ADD adds a value to elements of an R8CBB matrix. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 0 Matrix before additions: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 15 1 : 21 22 0 0 25 2 : 0 32 33 0 35 3 : 0 0 43 14 41 4 : 51 52 53 54 55 The matrix after additions: Col: 0 1 2 3 4 Row 0 : 100 0 0 0 215 1 : 21 122 0 0 225 2 : 0 32 133 0 235 3 : 0 0 43 214 41 4 : 51 52 53 454 55 R8CBB_DIF2_TEST R8CBB_DIF2 sets up an R8CBB second difference matrix. Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB second difference matrix: Col: 0 1 2 3 4 Row 0 : 2 -1 0 0 0 1 : -1 2 -1 0 0 2 : 0 -1 2 -1 0 3 : 0 0 -1 2 -1 4 : 0 0 0 -1 2 5 : 0 0 0 0 -1 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0 0 0 0 0 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0 1 : 0 0 0 0 0 2 : 0 0 0 0 0 3 : 0 0 0 0 0 4 : -1 0 0 0 0 5 : 2 -1 0 0 0 6 : -1 2 -1 0 0 7 : 0 -1 2 0 0 8 : 0 0 0 0 0 9 : 0 0 0 -1 2 r8cbb_fa_test(): r8cbb_fa() factors an R8CBB matrix, with no pivoting. Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix: Col: 0 1 2 3 4 Row 0 : 0.373018 0.655536 0 0 0 1 : 0.823348 0.311815 0.682197 0 0 2 : 0 0.358935 0.227108 0.579268 0 3 : 0 0 0.0685037 0.436103 0.357841 4 : 0 0 0 0.0634334 0.0114795 5 : 0 0 0 0 0.53916 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0.810831 0.307471 0.219006 0.367541 0.941087 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0.654474 1 : 0 0 0 0 0.448734 2 : 0 0 0 0 0.131312 3 : 0 0 0 0 0.463612 4 : 0.274132 0 0 0 0.495816 5 : 0.362007 0.591008 0 0 0.917779 6 : 0.832665 0.875829 0.709756 0 0.631617 7 : 0 0.0499892 0.206715 0.685516 0.117426 8 : 0 0 0 0.485871 0.538198 9 : 0.327018 0.546719 0.604197 0.711913 0.292229 The factored matrix: Col: 0 1 2 3 4 Row 0 : 0.373018 0.655536 0 0 0 1 : -2.20726 -1.13512 0.682197 0 0 2 : 0 0.316208 0.442825 0.579268 0 3 : 0 0 -0.154697 0.346491 0.357841 4 : 0 0 0 -0.183074 -0.0540317 5 : 0 0 0 0 9.97858 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0.810831 0.307471 0.219006 0.367541 0.941087 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 1.08343 1 : 0 0 0 0 -1.61488 2 : 0 0 0 0 -1.22725 3 : 0 0 0 0 1.25511 4 : 0.274132 0 0 0 -2.59025 5 : 3.09745 0.591008 0 0 -1.99064 6 : -0.268822 0.716953 0.709756 0 2.02942 7 : 0 -0.0697246 0.157228 0.950952 -1.05883 8 : 0 0 0 -1.58685 0.538198 9 : 0.327018 0.546719 0.604197 -0.594501 -0.766548 The right hand side vector: 0: 14.3985 1: 12.3538 2: 13.6592 3: 15.4449 4: 9.67583 5: 19.3937 6: 28.506 7: 6.14312 8: 35.403 9: 28.2106 Solution: 0: 1 1: 2 2: 3 3: 4 4: 5 5: 6 6: 7 7: 8 8: 9 9: 10 r8cbb_get_test() r8cbb_get() gets a value of an element of an R8CBB matrix. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 0 The R8CBB matrix to be queried: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 15 1 : 21 22 0 0 25 2 : 0 32 33 0 35 3 : 0 0 43 14 41 4 : 51 52 53 54 55 A( 4 , 4 ) = 55.0 A( 2 , 2 ) = 33.0 A( 3 , 1 ) = 0.0 A( 1 , 0 ) = 21.0 A( 2 , 4 ) = 35.0 A( 4 , 4 ) = 55.0 A( 4 , 2 ) = 53.0 A( 2 , 1 ) = 32.0 A( 0 , 0 ) = 0.0 A( 2 , 3 ) = 0.0 R8CBB_INDICATOR_TEST R8CBB_INDICATOR sets up an R8CBB indicator matrix. Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The compact border-banded matrix: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 0 1 : 201 202 203 0 0 2 : 0 302 303 304 0 3 : 0 0 403 404 405 4 : 0 0 0 504 505 5 : 0 0 0 0 605 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 1001 1002 1003 1004 1005 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 110 1 : 0 0 0 0 210 2 : 0 0 0 0 310 3 : 0 0 0 0 410 4 : 506 0 0 0 510 5 : 606 607 0 0 610 6 : 706 707 708 0 710 7 : 0 807 808 109 810 8 : 0 0 908 209 901 9 : 1006 1007 1008 1009 1010 R8CBB_MTV_TEST R8CBB_MTV computes b=A'*x, where A is an R8CBB matrix. Matrix order N = 8 Matrix suborder N1 = 6 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix A: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 0 1 : 21 22 23 0 0 2 : 0 32 33 34 0 3 : 0 0 43 44 45 4 : 0 0 0 54 55 5 : 0 0 0 0 65 6 : 0 0 0 0 0 7 : 81 82 83 84 85 Col: 5 6 7 Row 0 : 0 0 18 1 : 0 0 28 2 : 0 0 38 3 : 0 0 48 4 : 56 0 58 5 : 66 17 68 6 : 76 27 71 7 : 86 87 88 The vector x: 0: 1 1: 2 2: 3 3: 4 4: 5 5: 6 6: 7 7: 8 The product b=A'*x: 0: 1187 1: 1300 2: 1492 3: 1738 4: 2050 5: 1896 6: 2292 7: 2328 R8CBB_MV_TEST R8CBB_MV computes b=A*x, where A is an R8CBB matrix. Matrix order N = 8 Matrix suborder N1 = 6 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix A: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 0 1 : 21 22 23 0 0 2 : 0 32 33 34 0 3 : 0 0 43 44 45 4 : 0 0 0 54 55 5 : 0 0 0 0 65 6 : 0 0 0 0 0 7 : 81 82 83 84 85 Col: 5 6 7 Row 0 : 0 0 18 1 : 0 0 28 2 : 0 0 38 3 : 0 0 48 4 : 56 0 58 5 : 66 17 68 6 : 76 27 71 7 : 86 87 88 The vector x: 0: 1 1: 2 2: 3 3: 4 4: 5 5: 6 6: 7 7: 8 The product b=A*x: 0: 263 1: 547 2: 862 3: 1243 4: 1690 5: 1734 6: 2724 7: 3084 r8cbb_print_test(): r8cbb_print() prints an R8CBB matrix Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix: Col: 0 1 2 3 4 Row 0 : 0.563878 0.489682 0 0 0 1 : 0.531831 0.852227 0.382998 0 0 2 : 0 0.354707 0.418921 0.332954 0 3 : 0 0 0.135963 0.549165 0.515768 4 : 0 0 0 0.83402 0.249872 5 : 0 0 0 0 0.235588 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0.800075 0.102313 0.0857235 0.0380028 0.511376 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0.826335 1 : 0 0 0 0 0.172752 2 : 0 0 0 0 0.0941896 3 : 0 0 0 0 0.398075 4 : 0.857832 0 0 0 0.268475 5 : 0.0906109 0.949964 0 0 0.358516 6 : 0.393355 0.0754406 0.0596793 0 0.500762 7 : 0 0.488684 0.39371 0.160987 0.558012 8 : 0 0 0 0.612914 0.0369745 9 : 0.657974 0.195137 0.670185 0.933465 0.351267 r8cbb_print_some_test(): r8cbb_print_some() prints some of an R8CBB matrix Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 Rows 1-10, Cols 9-10 Col: 9 Row 1 : 0.614797 2 : 0.326942 3 : 0.00407688 4 : 0.0474169 5 : 0.628838 6 : 0.617136 7 : 0.553707 8 : 0.504624 9 : 0.990251 r8cbb_random_test(): r8cbb_random() generates a random R8CBB matrix Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix: Col: 0 1 2 3 4 Row 0 : 0.428229 0.316429 0 0 0 1 : 0.330921 0.558886 0.898794 0 0 2 : 0 0.715644 0.450402 0.572337 0 3 : 0 0 0.747515 0.570027 0.62884 4 : 0 0 0 0.522015 0.159414 5 : 0 0 0 0 0.256538 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0.964853 0.365639 0.0640054 0.276209 0.482958 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0.601139 1 : 0 0 0 0 0.385594 2 : 0 0 0 0 0.956361 3 : 0 0 0 0 0.758781 4 : 0.201134 0 0 0 0.918062 5 : 0.337942 0.135228 0 0 0.971141 6 : 0.771386 0.924829 0.52235 0 0.0396003 7 : 0 0.544923 0.520965 0.559262 0.485318 8 : 0 0 0 0.346968 0.510865 9 : 0.249766 0.203105 0.924632 0.149987 0.526609 R8CBB_SET_TEST R8CBB_SET sets the value of an element of an R8CBB matrix. Matrix order N = 5 Matrix suborder N1 = 4 Matrix suborder N2 = 1 Lower bandwidth ML = 2 Upper bandwidth MU = 1 The matrix after additions: Col: 0 1 2 3 4 Row 0 : 11 12 0 0 0 1 : 21 22 23 0 0 2 : 31 32 33 34 0 3 : 0 42 43 44 15 4 : 0 0 0 0 25 r8cbb_sl_test(): r8cbb_sl() solves a linear system factored by R8CBB_FA Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix: Col: 0 1 2 3 4 Row 0 : 0.259352 0.711117 0 0 0 1 : 0.240176 0.632862 0.725617 0 0 2 : 0 0.366593 0.491414 0.578073 0 3 : 0 0 0.363825 0.403232 0.598127 4 : 0 0 0 0.547098 0.473136 5 : 0 0 0 0 0.76535 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0.278815 0.583428 0.97588 0.240532 0.465033 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0.34949 1 : 0 0 0 0 0.526391 2 : 0 0 0 0 0.158943 3 : 0 0 0 0 0.412807 4 : 0.101781 0 0 0 0.152434 5 : 0.387214 0.845819 0 0 0.613016 6 : 0.407945 0.29296 0.39914 0 0.0620566 7 : 0 0.563214 0.241618 0.247751 0.00399999 8 : 0 0 0 0.462767 0.624069 9 : 0.664883 0.29185 0.643719 0.209777 0.216238 The factored matrix: Col: 0 1 2 3 4 Row 0 : 0.259352 0.711117 0 0 0 1 : -0.926061 -0.0256757 0.725617 0 0 2 : 0 14.2778 10.8516 0.578073 0 3 : 0 0 -0.0335272 0.383851 0.598127 4 : 0 0 0 -1.42529 -0.379366 5 : 0 0 0 0 2.01745 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0.278815 0.583428 0.97588 0.240532 0.465033 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0.540343 1 : 0 0 0 0 -0.688535 2 : 0 0 0 0 -0.30377 3 : 0 0 0 0 0.419923 4 : 0.101781 0 0 0 -0.788486 5 : 0.592552 0.845819 0 0 -0.0895221 6 : -0.688454 -0.289348 0.39914 0 0.029695 7 : 0 1.9465 1.01854 -0.875816 -0.0857742 8 : 0 0 0 -0.028977 0.624069 9 : 0.664883 0.29185 0.643719 -0.401036 -0.89893 The right hand side vector: 0: 7.40624 1: 13.1116 2: 9.84698 3: 10.2991 4: 6.73532 5: 23.7656 6: 9.79573 7: 12.1292 8: 25.8605 9: 22.893 Solution: 0: 1 1: 2 2: 3 3: 4 4: 5 5: 6 6: 7 7: 8 8: 9 9: 10 R8CBB_TO_R8GE_TEST R8CBB_TO_R8GE converts an R8CBB matrix to R8GE format. Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB matrix: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 0 1 : 201 202 203 0 0 2 : 0 302 303 304 0 3 : 0 0 403 404 405 4 : 0 0 0 504 505 5 : 0 0 0 0 605 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 1001 1002 1003 1004 1005 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 110 1 : 0 0 0 0 210 2 : 0 0 0 0 310 3 : 0 0 0 0 410 4 : 506 0 0 0 510 5 : 606 607 0 0 610 6 : 706 707 708 0 710 7 : 0 807 808 109 810 8 : 0 0 908 209 901 9 : 1006 1007 1008 1009 1010 The R8GE matrix: [[ 0. 0. 0. 0. 0. 0. 0. 0. 109. 110.] [ 201. 202. 203. 0. 0. 0. 0. 0. 209. 210.] [ 0. 302. 303. 304. 0. 0. 0. 0. 309. 310.] [ 0. 0. 403. 404. 405. 0. 0. 0. 409. 410.] [ 0. 0. 0. 504. 505. 506. 0. 0. 509. 510.] [ 0. 0. 0. 0. 605. 606. 607. 0. 609. 610.] [ 0. 0. 0. 0. 0. 706. 707. 708. 709. 710.] [ 0. 0. 0. 0. 0. 0. 807. 808. 809. 810.] [ 901. 902. 903. 904. 905. 906. 907. 908. 909. 910.] [1001. 1002. 1003. 1004. 1005. 1006. 1007. 1008. 1009. 1010.]] R8CBB_ZEROS_TEST R8CBB_ZEROS zeros an R8CBB matrix. Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8CBB zero matrix: Col: 0 1 2 3 4 Row 0 : 0 0 0 0 0 1 : 0 0 0 0 0 2 : 0 0 0 0 0 3 : 0 0 0 0 0 4 : 0 0 0 0 0 5 : 0 0 0 0 0 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0 0 0 0 0 Col: 5 6 7 8 9 Row 0 : 0 0 0 0 0 1 : 0 0 0 0 0 2 : 0 0 0 0 0 3 : 0 0 0 0 0 4 : 0 0 0 0 0 5 : 0 0 0 0 0 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0 0 0 0 0 9 : 0 0 0 0 0 r8cbb_test(): Normal end of execution. Wed Oct 8 08:50:30 2025