10 April 2023 6:28:27.486 PM r8po_test(): FORTRAN90 version: Test r8po(). R8GE_TO_R8PO_TEST R8GE_TO_R8PO converts an R8GE matrix to R8PO format. Matrix order N = 5 The random R8GE matrix A: Col: 1 2 3 4 5 Row --- 1 0.218418 0.661187E-01 0.617272E-01 0.183837E-02 0.859097 2 0.956318 0.257578 0.449539 0.897504 0.840847 3 0.829509 0.109957 0.401306 0.350752 0.123104 4 0.561695 0.438290E-01 0.754673 0.945448E-01 0.751236E-02 5 0.415307 0.633966 0.797287 0.136169E-01 0.260303 The R8PO matrix Col: 1 2 3 4 5 Row --- 1 0.218418 0.661187E-01 0.617272E-01 0.183837E-02 0.859097 2 0.661187E-01 0.257578 0.449539 0.897504 0.840847 3 0.617272E-01 0.449539 0.401306 0.350752 0.123104 4 0.183837E-02 0.897504 0.350752 0.945448E-01 0.751236E-02 5 0.859097 0.840847 0.123104 0.751236E-02 0.260303 R8PO_DET_TEST R8PO_DET computes the determinant of a symmetric positive definite matrix factored by R8PO_FA,. Matrix order N = 4 Matrix A: Col: 1 2 3 4 Row --- 1 2.00000 -1.00000 0.00000 0.00000 2 -1.00000 2.00000 -1.00000 0.00000 3 0.00000 -1.00000 2.00000 -1.00000 4 0.00000 0.00000 -1.00000 2.00000 Determinant of A = 5.00000 R8PO_DIF2_TEST R8PO_DIF2 sets the second difference matrix in R8PO format. The R8PO DIF2 matrix: Col: 1 2 3 4 5 Row --- 1 2.00000 -1.00000 0.00000 0.00000 0.00000 2 -1.00000 2.00000 -1.00000 0.00000 0.00000 3 0.00000 -1.00000 2.00000 -1.00000 0.00000 4 0.00000 0.00000 -1.00000 2.00000 -1.00000 5 0.00000 0.00000 0.00000 -1.00000 2.00000 R8PO_FA_TEST R8PO_FA factors a positive definite symmetric linear system, Matrix order N = 5 The matrix A: Col: 1 2 3 4 5 Row --- 1 1.00000 1.00000 1.00000 1.00000 1.00000 2 1.00000 2.00000 2.00000 2.00000 2.00000 3 1.00000 2.00000 3.00000 3.00000 3.00000 4 1.00000 2.00000 3.00000 4.00000 4.00000 5 1.00000 2.00000 3.00000 4.00000 5.00000 The factor R (an R8UT matrix): Col: 1 2 3 4 5 Row --- 1 1.00000 1.00000 1.00000 1.00000 1.00000 2 1.00000 1.00000 1.00000 1.00000 3 1.00000 1.00000 1.00000 4 1.00000 1.00000 5 1.00000 The product R' * R: Col: 1 2 3 4 5 Row --- 1 1.00000 1.00000 1.00000 1.00000 1.00000 2 1.00000 2.00000 2.00000 2.00000 2.00000 3 1.00000 2.00000 3.00000 3.00000 3.00000 4 1.00000 2.00000 3.00000 4.00000 4.00000 5 1.00000 2.00000 3.00000 4.00000 5.00000 R8PO_INDICATOR_TEST R8PO_INDICATOR sets up an R8PO indicator matrix. Matrix order N = 5 The R8PO indicator matrix: Col: 1 2 3 4 5 Row --- 1 11.0000 12.0000 13.0000 14.0000 15.0000 2 12.0000 22.0000 23.0000 24.0000 25.0000 3 13.0000 23.0000 33.0000 34.0000 35.0000 4 14.0000 24.0000 34.0000 44.0000 45.0000 5 15.0000 25.0000 35.0000 45.0000 55.0000 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: 1 2 3 4 Row --- 1 1.00000 1.00000 1.00000 1.00000 2 1.00000 2.00000 2.00000 2.00000 3 1.00000 2.00000 3.00000 3.00000 4 1.00000 2.00000 3.00000 4.00000 Inverse matrix B: Col: 1 2 3 4 Row --- 1 2.00000 -1.00000 0.00000 -0.00000 2 -1.00000 2.00000 -1.00000 -0.00000 3 0.00000 -1.00000 2.00000 -1.00000 4 -0.00000 -0.00000 -1.00000 1.00000 Product A * B: Col: 1 2 3 4 Row --- 1 1.00000 0.00000 0.00000 0.00000 2 0.00000 1.00000 0.00000 0.00000 3 0.00000 0.00000 1.00000 0.00000 4 0.00000 0.00000 0.00000 1.00000 R8PO_ML_TEST R8PO_ML can compute A*x for an R8PO matrix A even after it has been factored by R8PO_FA. Solution: 1: 1.0000000 2: 2.0000000 3: 3.0000000 4: 4.0000000 5: 5.0000000 6: 6.0000000 7: 7.0000000 8: 8.0000000 9: 9.0000000 10: 10.000000 Solution: 1: 1.0000000 2: 1.0000000 3: 1.0000000 4: 1.0000000 5: 1.0000000 6: 1.0000000 7: 1.0000000 8: 1.0000000 9: 1.0000000 10: 1.0000000 R8PO_MM_TEST R8PO_MM computes the product of two symmetric positive definite matrices. Matrix order N = 5 Matrix A: Col: 1 2 3 4 5 Row --- 1 2.00000 -1.00000 0.00000 0.00000 0.00000 2 -1.00000 2.00000 -1.00000 0.00000 0.00000 3 0.00000 -1.00000 2.00000 -1.00000 0.00000 4 0.00000 0.00000 -1.00000 2.00000 -1.00000 5 0.00000 0.00000 0.00000 -1.00000 2.00000 Matrix B: Col: 1 2 3 4 5 Row --- 1 1.00000 2.00000 0.00000 0.00000 0.00000 2 2.00000 3.00000 4.00000 0.00000 0.00000 3 0.00000 4.00000 5.00000 6.00000 0.00000 4 0.00000 0.00000 6.00000 7.00000 8.00000 5 0.00000 0.00000 0.00000 8.00000 9.00000 Product matrix C = A * B: Col: 1 2 3 4 5 Row --- 1 0.00000 1.00000 -4.00000 0.00000 0.00000 2 1.00000 0.00000 3.00000 -6.00000 0.00000 3 -4.00000 3.00000 0.00000 5.00000 -8.00000 4 0.00000 -6.00000 5.00000 0.00000 7.00000 5 0.00000 0.00000 -8.00000 7.00000 10.0000 R8PO_MV_TEST R8PO_MV computes the product of a symmetric positive definite matrix times a vector. Matrix order N = 5 Matrix A: Col: 1 2 3 4 5 Row --- 1 2.00000 -1.00000 0.00000 0.00000 0.00000 2 -1.00000 2.00000 -1.00000 0.00000 0.00000 3 0.00000 -1.00000 2.00000 -1.00000 0.00000 4 0.00000 0.00000 -1.00000 2.00000 -1.00000 5 0.00000 0.00000 0.00000 -1.00000 2.00000 Vector V: 1: 1.0000000 2: 2.0000000 3: 3.0000000 4: 4.0000000 5: 5.0000000 Product w = A * v: 1: 0.0000000 2: 0.0000000 3: 0.0000000 4: 0.0000000 5: 6.0000000 R8PO_PRINT_TEST R8PO_PRINT prints an R8PO matrix. The R8PO matrix: Col: 1 2 3 4 5 Row --- 1 11.0000 12.0000 13.0000 14.0000 15.0000 2 12.0000 22.0000 23.0000 24.0000 25.0000 3 13.0000 23.0000 33.0000 34.0000 35.0000 4 14.0000 24.0000 34.0000 44.0000 45.0000 5 15.0000 25.0000 35.0000 45.0000 55.0000 R8PO_PRINT_SOME_TEST R8PO_PRINT_SOME prints some of an R8PO matrix. Rows 2-6, Columns 5-7: Col: 5 6 7 Row --- 2 205.000 206.000 207.000 3 305.000 306.000 307.000 4 405.000 406.000 407.000 5 505.000 506.000 507.000 6 506.000 606.000 607.000 R8PO_RANDOM_TEST R8PO_RANDOM computes a random positive definite symmetric matrix. Matrix order N = 5 The random R8PO matrix: Col: 1 2 3 4 5 Row --- 1 0.381025E-02 0.277488E-01 0.247715E-01 0.465839E-01 0.492143E-01 2 0.277488E-01 0.268432 0.208725 0.350545 0.521707 3 0.247715E-01 0.208725 0.488639 0.540951 0.426804 4 0.465839E-01 0.350545 0.540951 1.65848 1.45021 5 0.492143E-01 0.521707 0.426804 1.45021 1.77774 R8PO_SL_TEST R8PO_SL solves a linear system with R8PO matrix after it has been factored buy R8PO_FA. Matrix order N = 5 Matrix A: Col: 1 2 3 4 5 Row --- 1 2.00000 -1.00000 0.00000 0.00000 0.00000 2 -1.00000 2.00000 -1.00000 0.00000 0.00000 3 0.00000 -1.00000 2.00000 -1.00000 0.00000 4 0.00000 0.00000 -1.00000 2.00000 -1.00000 5 0.00000 0.00000 0.00000 -1.00000 2.00000 Right hand side b: 1: 0.0000000 2: 0.0000000 3: 0.0000000 4: 0.0000000 5: 6.0000000 Solution vector X: 1: 1.0000000 2: 2.0000000 3: 3.0000000 4: 4.0000000 5: 5.0000000 R8PO_TO_R8GE_TEST R8PO_TO_R8GE converts an R8PO matrix to R8GE format. Matrix order N = 5 The random R8PO matrix A: Col: 1 2 3 4 5 Row --- 1 0.381025E-02 0.277488E-01 0.247715E-01 0.465839E-01 0.492143E-01 2 0.277488E-01 0.268432 0.208725 0.350545 0.521707 3 0.247715E-01 0.208725 0.488639 0.540951 0.426804 4 0.465839E-01 0.350545 0.540951 1.65848 1.45021 5 0.492143E-01 0.521707 0.426804 1.45021 1.77774 The random R8PO matrix (printed by R8GE_PRINT): Col: 1 2 3 4 5 Row --- 1 0.381025E-02 0.277488E-01 0.247715E-01 0.465839E-01 0.492143E-01 2 0.00000 0.268432 0.208725 0.350545 0.521707 3 0.00000 0.00000 0.488639 0.540951 0.426804 4 0.00000 0.00000 0.00000 1.65848 1.45021 5 0.00000 0.00000 0.00000 0.00000 1.77774 The random R8GE matrix (printed by R8GE_PRINT): Col: 1 2 3 4 5 Row --- 1 0.381025E-02 0.277488E-01 0.247715E-01 0.465839E-01 0.492143E-01 2 0.277488E-01 0.268432 0.208725 0.350545 0.521707 3 0.247715E-01 0.208725 0.488639 0.540951 0.426804 4 0.465839E-01 0.350545 0.540951 1.65848 1.45021 5 0.492143E-01 0.521707 0.426804 1.45021 1.77774 R8PO_ZEROS_TEST R8PO_ZEROS zeros out a matrix in R8PO format. Matrix order N = 5 The zero R8PO matrix: Col: 1 2 3 4 5 Row --- 1 0.00000 0.00000 0.00000 0.00000 0.00000 2 0.00000 0.00000 0.00000 0.00000 0.00000 3 0.00000 0.00000 0.00000 0.00000 0.00000 4 0.00000 0.00000 0.00000 0.00000 0.00000 5 0.00000 0.00000 0.00000 0.00000 0.00000 r8po_test(): Normal end of execution. 10 April 2023 6:28:27.487 PM