Sun Jan 28 20:45:45 2024 r8st_test(): Python version: 3.8.10 Test r8st(). r8st_cg_test(): r8st_cg() applies CG to an r8st matrix. Number of variables N = 10 Norm of residual ||Ax-b|| = 1.84193e-15 Norm of error ||x1-x2|| = 1.09062e-15 r8st_diagonal_test r8st_diagonal rearranges an r8st matrix so that the diagonal is listed first. Matrix order M = 6 Matrix order N = 6 Matrix nonzeros NZ_NUM = 20 Before rearrangement: K ROW(K) COL(K) A(K) 0 0 4 15 1 2 5 36 2 3 1 42 3 5 1 62 4 4 2 53 5 1 3 24 6 5 3 64 7 2 4 35 8 0 0 11 9 1 5 26 10 3 3 44 11 5 5 66 12 4 4 55 13 3 0 41 14 3 5 46 15 2 2 33 16 5 0 61 17 1 1 22 18 2 0 31 19 3 2 43 After rearrangement: K ROW(K) COL(K) A(K) 0 0 0 11 1 1 1 22 2 2 2 33 3 3 3 44 4 4 4 55 5 5 5 66 6 5 3 64 7 2 4 35 8 0 4 15 9 1 5 26 10 5 1 62 11 1 3 24 12 4 2 53 13 3 0 41 14 3 5 46 15 3 1 42 16 5 0 61 17 2 5 36 18 2 0 31 19 3 2 43 r8st_dif2_test r8st_dif2 sets an r8st matrix to the second difference. Matrix order M = 5 Matrix order N = 5 Matrix nonzeros NZ_NUM = 13 r8st 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 r8st_ij_to_k_test r8st_ij_to_k returns the r8st index of (I,J). Matrix rows M = 7 Matrix columns N = 5 Matrix nonzeros = 10 I J K 0 0 -1 0 1 0 0 2 -1 0 3 -1 0 4 1 1 0 2 1 1 -1 1 2 -1 1 3 -1 1 4 3 2 0 -1 2 1 -1 2 2 -1 2 3 -1 2 4 -1 3 0 4 3 1 5 3 2 6 3 3 -1 3 4 -1 4 0 -1 4 1 -1 4 2 -1 4 3 7 4 4 -1 5 0 -1 5 1 -1 5 2 -1 5 3 8 5 4 -1 6 0 9 6 1 -1 6 2 -1 6 3 -1 6 4 -1 r8st_indicator_test r8st_indicator sets an r8st indicator matrix. Matrix order M = 6 Matrix order N = 6 Matrix nonzeros NZ_NUM = 20 Matrix A: Col: 0 1 2 3 4 Row --- 0 11 0 0 0 15 1 0 22 0 24 0 2 31 0 33 0 35 3 41 42 43 44 0 4 0 0 53 0 55 5 61 62 0 64 0 Col: 5 Row --- 1 26 2 36 3 46 5 66 r8st_jac_sl_test() r8st_jac_sl() uses Jacobi iteration to solve a linear system with an r8st matrix. Matrix order M = 10 Matrix order N = 10 Matrix nonzeros NZ_NUM = 28 Iterations per = 25 Solving A * x = b. 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 5 0 0 0 0 -1 Col: 5 6 7 8 9 Row --- 4 -1 0 0 0 0 5 2 -1 0 0 0 6 -1 2 -1 0 0 7 0 -1 2 -1 0 8 0 0 -1 2 -1 9 0 0 0 -1 2 Solution x: [ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.] Right hand size b: [ 0. 0. 0. 0. 0. 0. 0. 0. 0. 11.] Current solution estimate: 0: 0 1: -0 2: -0 3: 7.8646e+09 4: 4.76191e+10 5: -5.64244e+10 6: 8.99373e+09 7: 1.25094e+11 8: -1.21805e+11 9: -1.56246e+10 Current solution estimate: 0: 0 1: -0 2: -0 3: 5.49568e+21 4: 3.24111e+22 5: -3.62127e+22 6: 1.82047e+21 7: 5.02394e+22 8: -4.80269e+22 9: -6.12885e+21 Current solution estimate: 0: 0 1: -0 2: -0 3: 2.81772e+33 4: 1.65374e+34 5: -1.82681e+34 6: 5.18685e+32 7: 2.23053e+34 8: -2.11788e+34 9: -2.69745e+33 r8st_mtv_test r8st_mtv computes b=A'*x, where A is an r8st matrix. Matrix order M = 5 Matrix order N = 4 Matrix nonzeros NZ_NUM = 11 x: 0: 1 1: 2 2: 3 3: 4 4: 5 b=A'*x: 0: 0 1: 0 2: 0 3: 0 r8st_mv_test r8st_mv computes b=A*x, where A is an r8st matrix. Matrix order M = 5 Matrix order N = 4 Matrix nonzeros NZ_NUM = 11 x: 0: 1 1: 2 2: 3 3: 4 b=A*x: 0: 0 1: 0 2: 0 3: 5 4: -4 r8st_print_test r8st_print prints an r8st matrix. Matrix order M = 5 Matrix order N = 5 Matrix nonzeros NZ_NUM = 13 r8st 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 r8st_print_some_test r8st_print_some prints some of an r8st matrix. Matrix order M = 5 Matrix order N = 5 Matrix nonzeros NZ_NUM = 13 Rows 2:4, Cols 3:5: Col: 3 4 Row --- 2 -1 0 3 2 -1 4 -1 2 r8st_random_test() r8st_random() randomizes an r8st indicator matrix. Matrix order M = 6 Matrix order N = 6 Matrix nonzeros NZ_NUM = 20 Matrix A: Col: 0 1 2 3 4 Row --- 0 0.145521 0 0 0 0.996123 1 0 0.869766 0 0.938322 0 2 0.372969 0 0.284623 0 0.205695 3 0.731124 0.460995 0.762038 0.0496679 0 4 0 0 0.820935 0 0.422303 5 0.556083 0.900033 0 0.0890389 0 Col: 5 Row --- 1 0.721517 2 0.790643 3 0.10796 5 0.674417 r8st_read_test r8st_read_size reads the size of an r8st matrix. r8st_read reads the r8st matrix from a file. Matrix order M = 99 Matrix order N = 99 Matrix nonzeros NZ_NUM = 298 Initial 10x10 block of recovered r8st matrix: Col: 1 2 3 4 5 Row --- 1 2 -1 0 0 0 2 -1 2 -1 0 0 3 0 -1 2 -1 0 4 0 0 -1 2 -1 5 0 0 0 -1 2 6 0 0 0 0 -1 Col: 6 7 8 9 10 Row --- 5 -1 0 0 0 0 6 2 -1 0 0 0 7 -1 2 -1 0 0 8 0 -1 2 -1 0 9 0 0 -1 2 -1 10 0 0 0 -1 2 r8st_res_test r8st_res computes r=b-A*x, where A is an r8st matrix. Matrix order M = 5 Matrix order N = 4 Matrix nonzeros NZ_NUM = 11 x: 0: 1 1: 2 2: 3 3: 4 r=b-A*x: 0: 0 1: 0 2: 0 3: 0 4: 0 r8st_to_r8ge_test r8st_to_r8ge converts an r8st matrix to R8GE format. Matrix order M = 5 Matrix order N = 5 Matrix nonzeros NZ_NUM = 13 r8st 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 R8GE 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 r8st_to_r8ncf_test r8st_to_r8ncf converts an r8st matrix to R8NCF format. Matrix order M = 5 Matrix order N = 5 Matrix nonzeros NZ_NUM = 13 r8st 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 R8NCF 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 r8st_write_test r8st_write writes an r8st matrix to a file. Matrix order M = 100 Matrix order N = 100 Matrix nonzeros NZ_NUM = 298 Initial 10x10 block of r8st matrix: Col: 1 2 3 4 5 Row --- 1 2 -1 0 0 0 2 -1 2 -1 0 0 3 0 -1 2 -1 0 4 0 0 -1 2 -1 5 0 0 0 -1 2 6 0 0 0 0 -1 Col: 6 7 8 9 10 Row --- 5 -1 0 0 0 0 6 2 -1 0 0 0 7 -1 2 -1 0 0 8 0 -1 2 -1 0 9 0 0 -1 2 -1 10 0 0 0 -1 2 Matrix data written to "r8st_matrix.txt". r8st_zeros_test r8st_zeros zeros out space for an r8st matrix. Matrix order M, N = 5, 4 Matrix A: Col: 0 1 2 3 Row --- r8st_test(): Normal end of execution. Sun Jan 28 20:45:45 2024