Tue May 20 22:27:32 2025 r8bb_test(): python version: 3.10.12 numpy version: 1.26.4 Test r8bb(). R8BB_ADD_TEST R8BB_ADD adds a value to elements of an R8BB 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 : 11 0 0 14 15 1 : 21 22 0 24 25 2 : 0 32 33 34 35 3 : 41 42 43 44 45 4 : 51 52 53 54 55 The R8BB matrix after additions: Col: 0 1 2 3 4 Row 0 : 111 0 0 214 215 1 : 21 122 0 224 225 2 : 0 32 133 234 235 3 : 41 42 43 44 445 4 : 51 52 53 454 55 R8BB_DIF2_TEST R8BB_DIF2 sets up an R8BB second difference matrix. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8BB 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 r8bb_fa_test() r8bb_fa() factors an R8BB matrix Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 Solution: 0: -0.891817 1: -1.82532 2: -3.12781 3: 11.2241 4: 4.30266 r8bb_get_test(): r8bb_get() gets a value of an element of an R8BB matrix. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 0 The matrix to be queried: Col: 0 1 2 3 4 Row 0 : 11 0 0 14 15 1 : 21 22 0 24 25 2 : 0 32 33 34 35 3 : 41 42 43 44 45 4 : 51 52 53 54 55 A(2,1) = 32 A(0,3) = 14 A(1,3) = 24 A(3,4) = 45 A(1,0) = 21 A(0,4) = 15 A(3,3) = 44 A(4,2) = 53 A(2,3) = 34 A(2,4) = 35 R8BB_INDICATOR_TEST R8BB_INDICATOR sets up an indicator matrix. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The indicator matrix: Col: 0 1 2 3 4 Row 0 : 11 12 0 14 15 1 : 21 22 23 24 25 2 : 0 32 33 34 35 3 : 41 42 43 44 45 4 : 51 52 53 54 55 R8BB_MTV_TEST R8BB_MTV computes b=A*x, where A is an R8BB matrix. Matrix order N = 8 Matrix suborder N1 = 6 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8BB matrix A: Col: 0 1 2 3 4 Row 0 : 11 12 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 : 71 72 73 74 75 7 : 81 82 83 84 85 Col: 5 6 7 Row 0 : 0 17 18 1 : 0 27 28 2 : 0 37 38 3 : 0 47 48 4 : 56 57 58 5 : 66 67 68 6 : 76 77 78 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: 1198 1: 1312 2: 1492 3: 1738 4: 2050 5: 1896 6: 2694 7: 2328 R8BB_MV_TEST R8BB_MV computes b=A*x, where A is an R8BB matrix. Matrix order N = 8 Matrix suborder N1 = 6 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8BB matrix A: Col: 0 1 2 3 4 Row 0 : 11 12 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 : 71 72 73 74 75 7 : 81 82 83 84 85 Col: 5 6 7 Row 0 : 0 17 18 1 : 0 27 28 2 : 0 37 38 3 : 0 47 48 4 : 56 57 58 5 : 66 67 68 6 : 76 77 78 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: 298 1: 547 2: 862 3: 1243 4: 1690 5: 2203 6: 2724 7: 3084 r8bb_print_test(): r8bb_print() prints an R8BB matrix Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8BB matrix: Col: 0 1 2 3 4 Row 0 : 0.165886 0.499209 0 0 0 1 : 0.237297 0.422014 0.741063 0 0 2 : 0 0.61904 0.509407 0.256272 0 3 : 0 0 0.566667 0.46076 0.854054 4 : 0 0 0 0.00169034 0.401976 5 : 0 0 0 0 0.678899 6 : 0 0 0 0 0 7 : 0 0 0 0 0 8 : 0.583706 0.432217 0.580439 0.945141 0.547044 9 : 0.349299 0.593238 0.213079 0.124455 0.528187 Col: 5 6 7 8 9 Row 0 : 0 0 0 0.131283 0.0664293 1 : 0 0 0 0.830582 0.217849 2 : 0 0 0 0.851701 0.633313 3 : 0 0 0 0.594375 0.746151 4 : 0.295496 0 0 0.554143 0.173898 5 : 0.892484 0.431918 0 0.037901 0.276962 6 : 0.490728 0.4909 0.37203 0.379971 0.972385 7 : 0 0.563446 0.781509 0.515762 0.640699 8 : 0.377615 0.0767013 0.31457 0.098766 0.507406 9 : 0.0539089 0.73802 0.944145 0.20356 0.799336 R8BB_PRINT_SOME_TEST R8BB_PRINT_SOME prints some of an R8BB matrix Matrix order N = 8 Matrix suborder N1 = 6 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The Lower Right Block: Col: 6 7 Row 6 : 77 78 7 : 87 88 r8bb_random_test(): r8bb_random() returns a random R8BB matrix Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The border-banded matrix: Col: 0 1 2 3 4 Row 0 : 0.190405 0.645033 0 0.0948338 0.659901 1 : 0.669544 0.995227 0.419252 0.460578 0.648556 2 : 0 0.293869 0.0987229 0.698324 0.13279 3 : 0.66775 0.786452 0.141913 0.997153 0.871683 4 : 0.518568 0.13094 0.485564 0.213823 0.295289 R8BB_SET_TEST R8BB_SET sets elements of an R8BB matrix. Matrix order N = 5 Matrix suborder N1 = 4 Matrix suborder N2 = 1 Lower bandwidth ML = 2 Upper bandwidth MU = 1 The R8BB matrix: Col: 0 1 2 3 4 Row 0 : 11 12 0 0 15 1 : 21 22 23 0 25 2 : 31 32 33 34 35 3 : 0 42 43 44 45 4 : 51 52 53 54 55 r8bb_sl_test(): r8bb_sl() solves a linear system factored by R8BB_FA. Matrix order N = 10 Matrix suborder N1 = 8 Matrix suborder N2 = 2 Lower bandwidth ML = 0 Upper bandwidth MU = 0 Solution: 0: 1 1: 2 2: 3 3: 4 4: 5 5: 6 6: 7 7: 8 8: 9 9: 10 R8BB_TO_R8GE_TEST R8BB_TO_R8GE converts an R8BB matrix to R8GE format. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The R8BB matrix: Col: 0 1 2 3 4 Row 0 : 11 12 0 14 15 1 : 21 22 23 24 25 2 : 0 32 33 34 35 3 : 41 42 43 44 45 4 : 51 52 53 54 55 The R8GE matrix: [[11. 12. 0. 14. 15.] [21. 22. 23. 24. 25.] [ 0. 32. 33. 34. 35.] [41. 42. 43. 44. 45.] [51. 52. 53. 54. 55.]] R8BB_ZEROS_TEST R8BB_ZEROS zeros an R8BB matrix. Matrix order N = 5 Matrix suborder N1 = 3 Matrix suborder N2 = 2 Lower bandwidth ML = 1 Upper bandwidth MU = 1 The zero R8BB 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 r8bb_test(): Normal end of execution. Tue May 20 22:27:32 2025