20 January 2017 11:13:22 AM R8CB_PRB C version Test the R8CB library. R8CB_DET_TEST R8CB_DET computes the determinant of a matrix factored by R8CB_NP_FA; Matrix order N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The compact band matrix: Col: 1 2 3 4 5 Row --- 1 0.218418 0.561695 0.109957 0.401306 2 0.956318 0.415307 0.043829 0.754673 0.0945448 3 0.829509 0.0661187 0.633966 0.797287 0.0136169 4 0.257578 0.0617272 0.00183837 0.859097 5 0.449539 0.897504 0.840847 6 0.350752 0.123104 7 0.00751236 Col: 6 7 8 9 10 Row --- 3 0.260303 4 0.912484 0.692066 5 0.113664 0.561662 0.188955 6 0.351629 0.861216 0.761492 0.617205 7 0.822887 0.453794 0.396988 0.361529 0.299329 8 0.267132 0.911977 0.185314 0.21293 0.825003 9 0.597917 0.574366 0.714471 0.82466 10 0.367027 0.117707 0.0618618 R8CB_DET computes the determinant = 0.0183588 R8GE_DET computes the determinant = 0.0183588 R8CB_DIF2_TEST R8CB_DIF2 computes an R8CB second difference matrix Matrix rows M = 8 Matrix columns N = 8 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB second difference matrix: Col: 1 2 3 4 5 Row --- 1 2 -1 0 0 2 -1 2 -1 0 0 3 0 -1 2 -1 0 4 0 -1 2 -1 5 0 -1 2 6 0 -1 7 0 Col: 6 7 8 Row --- 3 0 4 0 0 5 -1 0 0 6 2 -1 0 7 -1 2 -1 8 0 -1 2 R8CB_INDICATOR_TEST R8CB_INDICATOR sets up an R8CB indicator matrix. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB indicator matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 R8CB_ML_TEST R8CB_ML computes A*x or A'*X where A has been factored by R8CB_FA. Matrix order N = 10 Lower bandwidth ML = 1 Upper bandwidth MU = 2 A*x and PLU*x 0: 2.07579 2.07579 1: 5.3883 5.3883 2: 5.18076 5.18076 3: 8.02059 8.02059 4: 8.06762 8.06762 5: 12.7308 12.7308 6: 8.52067 8.52067 7: 15.4017 15.4017 8: 20.7578 20.7578 9: 13.7301 13.7301 A'*x and (PLU)'*x 0: 1.71194 1.71194 1: 2.49071 2.49071 2: 3.53774 3.53774 3: 7.10439 7.10439 4: 6.80503 6.80503 5: 14.9862 14.9862 6: 18.7469 18.7469 7: 7.88328 7.88328 8: 12.7733 12.7733 9: 2.65418 2.65418 R8CB_MTV_TEST R8CB_MTV computes b=A'*x, where A is an R8CB matrix. Matrix rows M = 8 Matrix columns N = 8 Lower bandwidth ML = 2 Upper bandwidth MU = 1 The R8CB matrix: Col: 1 2 3 4 5 Row --- 1 11 12 2 21 22 23 3 31 32 33 34 4 42 43 44 45 5 53 54 55 6 64 65 7 75 Col: 6 7 8 Row --- 5 56 6 66 67 7 76 77 78 8 86 87 88 The vector x: 0 1.000000 1 2.000000 2 3.000000 3 4.000000 4 5.000000 5 6.000000 6 7.000000 7 8.000000 The product b=A'*x: 0 146.000000 1 320.000000 2 582.000000 3 932.000000 4 1370.000000 5 1896.000000 6 1637.000000 7 1250.000000 R8CB_MV_TEST R8CB_MV computes b=A*x, where A is an R8CB matrix. Matrix rows M = 8 Matrix columns N = 8 Lower bandwidth ML = 2 Upper bandwidth MU = 1 The R8CB matrix: Col: 1 2 3 4 5 Row --- 1 11 12 2 21 22 23 3 31 32 33 34 4 42 43 44 45 5 53 54 55 6 64 65 7 75 Col: 6 7 8 Row --- 5 56 6 66 67 7 76 77 78 8 86 87 88 The vector x: 0 1.000000 1 2.000000 2 3.000000 3 4.000000 4 5.000000 5 6.000000 6 7.000000 7 8.000000 The product b=A*x: 0 35.000000 1 134.000000 2 330.000000 3 614.000000 4 986.000000 5 1446.000000 6 1994.000000 7 1829.000000 R8CB_NP_FA_TEST R8CB_NP_FA factors an R8CB matrix with no pivoting; Matrix order N = 10 Lower bandwidth ML = 1 Upper bandwidth MU = 2 Solution to A*x=b: 0 1.000000 1 2.000000 2 3.000000 3 4.000000 4 5.000000 5 6.000000 6 7.000000 7 8.000000 8 9.000000 9 10.000000 Solution to A'x=b: 0 1.000000 1 2.000000 2 3.000000 3 4.000000 4 5.000000 5 6.000000 6 7.000000 7 8.000000 8 9.000000 9 10.000000 R8CB_NP_SL_TEST R8CB_NP_SL solves a linear system factored by R8CB_FA. Matrix order N = 10 Lower bandwidth ML = 1 Upper bandwidth MU = 2 Solution to A*x=b: 0 1.000000 1 2.000000 2 3.000000 3 4.000000 4 5.000000 5 6.000000 6 7.000000 7 8.000000 8 9.000000 9 10.000000 Solution to A'x=b: 0 1.000000 1 2.000000 2 3.000000 3 4.000000 4 5.000000 5 6.000000 6 7.000000 7 8.000000 8 9.000000 9 10.000000 R8CB_PRINT_TEST R8CB_PRINT prints an R8CB matrix. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 R8CB_PRINT_SOME_TEST R8CB_PRINT_SOME prints some of an R8CB matrix. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 Rows 2-5, Cols 2-5: Col: 2 3 4 5 Row --- 2 202 203 204 205 3 302 303 304 305 4 402 403 404 405 5 503 504 505 R8CB_RANDOM_TEST R8CB_RANDOM randomizes an R8CB matrix; Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The random R8CB matrix: Col: 1 2 3 4 5 Row --- 1 0.218418 0.561695 0.109957 0.401306 2 0.956318 0.415307 0.043829 0.754673 0.0945448 3 0.829509 0.0661187 0.633966 0.797287 0.0136169 4 0.257578 0.0617272 0.00183837 0.859097 5 0.449539 0.897504 0.840847 6 0.350752 0.123104 7 0.00751236 Col: 6 7 8 9 10 Row --- 3 0.260303 4 0.912484 0.692066 5 0.113664 0.561662 0.597917 6 0.351629 0.861216 0.188955 0.185314 7 0.822887 0.453794 0.761492 0.574366 0.617205 8 0.267132 0.911977 0.396988 0.367027 0.361529 R8CB_TO_R8GE_TEST R8CB_TO_R8GE converts an R8CB matrix to R8GE format. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 The R8GE matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 0 2 201 202 203 204 205 3 301 302 303 304 305 4 0 402 403 404 405 5 0 0 503 504 505 6 0 0 0 604 605 7 0 0 0 0 705 8 0 0 0 0 0 Col: 6 7 8 9 10 Row --- 1 0 0 0 0 0 2 0 0 0 0 0 3 306 0 0 0 0 4 406 407 0 0 0 5 506 507 508 0 0 6 606 607 608 609 0 7 706 707 708 709 710 8 806 807 808 809 810 R8CB_TO_R8VEC_TEST R8CB_TO_R8VEC converts an R8CB matrix to an R8VEC. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 The R8VEC: 0 0.000000 1 0.000000 2 0.000000 3 101.000000 4 201.000000 5 301.000000 6 0.000000 7 0.000000 8 102.000000 9 202.000000 10 302.000000 11 402.000000 12 0.000000 13 103.000000 14 203.000000 15 303.000000 16 403.000000 17 503.000000 18 104.000000 19 204.000000 20 304.000000 21 404.000000 22 504.000000 23 604.000000 24 205.000000 25 305.000000 26 405.000000 27 505.000000 28 605.000000 29 705.000000 30 306.000000 31 406.000000 32 506.000000 33 606.000000 34 706.000000 35 806.000000 36 407.000000 37 507.000000 38 607.000000 39 707.000000 40 807.000000 41 0.000000 42 508.000000 43 608.000000 44 708.000000 45 808.000000 46 0.000000 47 0.000000 48 609.000000 49 709.000000 50 809.000000 51 0.000000 52 0.000000 53 0.000000 54 710.000000 55 810.000000 56 0.000000 57 0.000000 58 0.000000 59 0.000000 60 508.000000 61 0.000000 62 708.000000 63 808.000000 64 0.000000 65 0.000000 66 0.000000 67 0.000000 68 0.000000 69 609.000000 70 709.000000 71 809.000000 72 0.000000 73 0.000000 74 0.000000 75 0.000000 76 0.000000 77 0.000000 78 710.000000 79 810.000000 The recovered R8CB matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 R8CB_ZEROS_TEST R8CB_ZEROS zeros an R8CB matrix. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB zero matrix: Col: 1 2 3 4 5 Row --- 1 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 4 0 0 0 0 5 0 0 0 6 0 0 7 0 Col: 6 7 8 9 10 Row --- 3 0 4 0 0 5 0 0 0 6 0 0 0 0 7 0 0 0 0 0 8 0 0 0 0 0 R8VEC_TO_R8CB_TEST R8VEC_TO_R8CB converts an R8VEC to an R8CB matrix. Matrix rows M = 8 Matrix columns N = 10 Lower bandwidth ML = 2 Upper bandwidth MU = 3 The R8CB matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 The R8VEC: 0 0.000000 1 0.000000 2 0.000000 3 101.000000 4 201.000000 5 301.000000 6 0.000000 7 0.000000 8 102.000000 9 202.000000 10 302.000000 11 402.000000 12 0.000000 13 103.000000 14 203.000000 15 303.000000 16 403.000000 17 503.000000 18 104.000000 19 204.000000 20 304.000000 21 404.000000 22 504.000000 23 604.000000 24 205.000000 25 305.000000 26 405.000000 27 505.000000 28 605.000000 29 705.000000 30 306.000000 31 406.000000 32 506.000000 33 606.000000 34 706.000000 35 806.000000 36 407.000000 37 507.000000 38 607.000000 39 707.000000 40 807.000000 41 0.000000 42 508.000000 43 608.000000 44 708.000000 45 808.000000 46 0.000000 47 0.000000 48 609.000000 49 709.000000 50 809.000000 51 0.000000 52 0.000000 53 0.000000 54 710.000000 55 810.000000 56 0.000000 57 0.000000 58 0.000000 59 0.000000 60 0.000000 61 0.000000 62 0.000000 63 0.000000 64 0.000000 65 101.000000 66 201.000000 67 301.000000 68 0.000000 69 0.000000 70 102.000000 71 202.000000 72 302.000000 73 402.000000 74 0.000000 75 103.000000 76 203.000000 77 303.000000 78 403.000000 79 503.000000 The recovered R8CB matrix: Col: 1 2 3 4 5 Row --- 1 101 102 103 104 2 201 202 203 204 205 3 301 302 303 304 305 4 402 403 404 405 5 503 504 505 6 604 605 7 705 Col: 6 7 8 9 10 Row --- 3 306 4 406 407 5 506 507 508 6 606 607 608 609 7 706 707 708 709 710 8 806 807 808 809 810 R8CB_PRB Normal end of execution. 20 January 2017 11:13:22 AM