Tue May 20 22:27:37 2025 r8po_test(): python version: 3.10.12 numpy version: 1.26.4 Test r8po(). r8ge_to_r8po_test(): r8ge_to_r8po() converts an R8GE matrix to R8PO format. Matrix order N = 5 The random R8GE matrix: [[0.92002596 0.29249237 0.74613102 0.02888994 0.17740576] [0.38050171 0.06463316 0.41783352 0.51704614 0.98242091] [0.93897466 0.41001239 0.57347634 0.90242344 0.96396694] [0.63822454 0.09340598 0.68484725 0.24099409 0.96043307] [0.44796729 0.47861248 0.37973255 0.84551267 0.44996631]] The R8PO matrix: [[0.92002596 0.29249237 0.74613102 0.02888994 0.17740576] [0. 0.06463316 0.41783352 0.51704614 0.98242091] [0. 0. 0.57347634 0.90242344 0.96396694] [0. 0. 0. 0.24099409 0.96043307] [0. 0. 0. 0. 0.44996631]] R8PO_DET_TEST R8PO_DET finds the determinant of a positive definite symmetric matrix after it has been factored. Matrix order N = 5 The matrix A: Col: 0 1 2 3 4 Row 0 : 1 1 1 1 1 1 : 1 2 2 2 2 2 : 1 2 3 3 3 3 : 1 2 3 4 4 4 : 1 2 3 4 5 Determinant of A = 1.0 R8PO_DIF2_TEST R8PO_DIF2 returns the second difference matrix in R8PO format. Matrix order N = 5 The 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 R8PO_FA_TEST R8PO_FA factors a positive definite symmetric linear system, Matrix order N = 5 The matrix A: Col: 0 1 2 3 4 Row 0 : 1 1 1 1 1 1 : 1 2 2 2 2 2 : 1 2 3 3 3 3 : 1 2 3 4 4 4 : 1 2 3 4 5 The factor R (a R8UT matrix): [[1. 1. 1. 1. 1.] [0. 1. 1. 1. 1.] [0. 0. 1. 1. 1.] [0. 0. 0. 1. 1.] [0. 0. 0. 0. 1.]] The product R' * R: [[1. 1. 1. 1. 1.] [1. 2. 2. 2. 2.] [1. 2. 3. 3. 3.] [1. 2. 3. 4. 4.] [1. 2. 3. 4. 5.]] r8po_indicator_test r8po_indicator sets up an R8PO indicator matrix. Matrix order N = 5 The R8PO indicator matrix: Col: 0 1 2 3 4 Row 0 : 11 12 13 14 15 1 : 12 22 23 24 25 2 : 13 23 33 34 35 3 : 14 24 34 44 45 4 : 15 25 35 45 55 r8po_inverse_test r8po_inverse computes the inverse of a symmetric positive definite matrix factored by R8PO_FA. Matrix order N = 4 Matrix A: Col: 0 1 2 3 Row 0 : 1 1 1 1 1 : 1 2 2 2 2 : 1 2 3 3 3 : 1 2 3 4 Inverse matrix B: Col: 0 1 2 3 Row 0 : 2 -1 0 -0 1 : -1 2 -1 -0 2 : 0 -1 2 -1 3 : -0 -0 -1 1 Product A * B: Col: 0 1 2 3 Row 0 : 1 0 0 0 1 : 0 1 0 0 2 : 0 0 1 0 3 : 0 0 0 1 R8PO_ML_TEST R8PO_ML can compute A*x for an R8PO matrix A even after it has been factored by R8PO_FA. Solution: 0: 1 1: 2 2: 3 3: 4 4: 5 5: 6 6: 7 7: 8 8: 9 9: 10 Solution: 0: 1 1: 1 2: 1 3: 1 4: 1 5: 1 6: 1 7: 1 8: 1 9: 1 r8po_mm_test r8po_mm computes the product of two symmetric positive definite matrices. Matrix order N = 5 Matrix A: 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 Matrix B: Col: 0 1 2 3 4 Row 0 : 1 2 0 0 0 1 : 2 3 4 0 0 2 : 0 4 5 6 0 3 : 0 0 6 7 8 4 : 0 0 0 8 9 Product matrix C = A * B: Col: 0 1 2 3 4 Row 0 : 0 1 -4 0 0 1 : 1 0 3 -6 0 2 : -4 3 0 5 -8 3 : 0 -6 5 0 7 4 : 0 0 -8 7 10 R8PO_MV_TEST R8PO_MV computes the product of an R8PO matrix and a vector. Matrix order N = 5 Matrix A: 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 Vector V: 0: 1 1: 2 2: 3 3: 4 4: 5 Product w = A * v: 0: 0 1: 0 2: 0 3: 0 4: 6 r8po_print_test r8po_print prints an R8PO matrix. Here is an R8PO matrix: Col: 0 1 2 3 4 Row 0 : 11 12 13 14 15 1 : 12 22 23 24 25 2 : 13 23 33 34 35 3 : 14 24 34 44 45 4 : 15 25 35 45 55 R8PO_PRINT_SOME_TEST R8PO_PRINT_SOME prints some of an R8PO matrix. Here is an R8PO matrix: Col: 3 4 Row 0 : 14 15 1 : 24 25 2 : 34 35 3 : 44 45 r8po_random_test(): r8po_random() computes a random positive definite symmetric matrix. Matrix order N = 5 The random R8PO matrix: Col: 0 1 2 3 4 Row 0 : 0.03393 0.131079 0.159578 0.169981 0.0360367 1 : 0.131079 0.513018 0.688151 0.662773 0.173529 2 : 0.159578 0.688151 1.69669 1.00027 0.630991 3 : 0.169981 0.662773 1.00027 1.25342 0.415652 4 : 0.0360367 0.173529 0.630991 0.415652 0.956193 R8PO_SL_TEST R8PO_SL solves a linear system with an R8PO matrix after it has been factored by R8PO_FA. Matrix order N = 5 Matrix A: 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 Right hand side b: 0: 0 1: 0 2: 0 3: 0 4: 6 Solution x: 0: 1 1: 2 2: 3 3: 4 4: 5 r8po_to_r8ge_test(): r8po_to_r8ge() converts a R8PO matrix to R8GE format. Matrix order N = 5 The random R8PO matrix: Col: 0 1 2 3 4 Row 0 : 0.453976 0.360868 0.359665 0.120718 0.315982 1 : 0.360868 0.332948 0.370416 0.285976 0.328435 2 : 0.359665 0.370416 1.39941 0.916237 0.635726 3 : 0.120718 0.285976 0.916237 1.61043 1.23526 4 : 0.315982 0.328435 0.635726 1.23526 1.33817 The random R8GE matrix: [[0.45397639 0.36086815 0.35966545 0.12071778 0.31598204] [0.36086815 0.33294821 0.37041633 0.28597583 0.32843543] [0.35966545 0.37041633 1.3994106 0.91623685 0.63572601] [0.12071778 0.28597583 0.91623685 1.61042656 1.23526239] [0.31598204 0.32843543 0.63572601 1.23526239 1.3381693 ]] r8po_zeros_test r8po_zeros zeros out space for a symmetric positive definite matrix. Matrix order N = 5 Matrix A: 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 r8po_test(): Normal end of execution. Tue May 20 22:27:37 2025