11 June 2018 02:58:53 PM MGMRES_TEST: C version Test the MGMRES library. TEST01 Test MGMRES_ST on the simple -1,2-1 matrix. Test 1 Matrix order N = 20 Inner iteration limit = 20 Outer iteration limit = 1 Initial X_ERROR = 53.5724 ITR = 0 Residual = 2.100000e+01 K = 0 Residual = 9.391486e+00 K = 1 Residual = 5.612486e+00 K = 2 Residual = 3.834058e+00 K = 3 Residual = 2.831639e+00 K = 4 Residual = 2.201398e+00 K = 5 Residual = 1.774824e+00 K = 6 Residual = 1.470294e+00 K = 7 Residual = 1.243933e+00 K = 8 Residual = 1.070259e+00 K = 9 Residual = 9.335639e-01 K = 10 Residual = 8.236878e-01 K = 11 Residual = 7.337994e-01 K = 12 Residual = 6.591531e-01 K = 13 Residual = 5.963599e-01 K = 14 Residual = 5.429421e-01 K = 15 Residual = 4.970501e-01 K = 16 Residual = 4.572787e-01 K = 17 Residual = 4.225429e-01 K = 18 Residual = 3.919930e-01 K = 19 Residual = 0.000000e+00 MGMRES_ST: Iterations = 20 Final residual = 0.000000e+00 Final X_ERROR = 3.76207e-14 Test 2 Matrix order N = 20 Inner iteration limit = 10 Outer iteration limit = 2 Initial X_ERROR = 53.5724 ITR = 0 Residual = 2.100000e+01 K = 0 Residual = 9.391486e+00 K = 1 Residual = 5.612486e+00 K = 2 Residual = 3.834058e+00 K = 3 Residual = 2.831639e+00 K = 4 Residual = 2.201398e+00 K = 5 Residual = 1.774824e+00 K = 6 Residual = 1.470294e+00 K = 7 Residual = 1.243933e+00 K = 8 Residual = 1.070259e+00 K = 9 Residual = 9.335639e-01 ITR = 1 Residual = 9.335639e-01 K = 0 Residual = 8.707991e-01 K = 1 Residual = 8.052481e-01 K = 2 Residual = 7.382919e-01 K = 3 Residual = 6.714950e-01 K = 4 Residual = 6.065840e-01 K = 5 Residual = 5.454219e-01 K = 6 Residual = 4.899610e-01 K = 7 Residual = 4.421317e-01 K = 8 Residual = 4.036072e-01 K = 9 Residual = 3.524539e-01 MGMRES_ST: Iterations = 20 Final residual = 3.524539e-01 Final X_ERROR = 12.2128 Test 3 Matrix order N = 20 Inner iteration limit = 4 Outer iteration limit = 5 Initial X_ERROR = 53.5724 ITR = 0 Residual = 2.100000e+01 K = 0 Residual = 9.391486e+00 K = 1 Residual = 5.612486e+00 K = 2 Residual = 3.834058e+00 K = 3 Residual = 2.831639e+00 ITR = 1 Residual = 2.831639e+00 K = 0 Residual = 2.422241e+00 K = 1 Residual = 1.996521e+00 K = 2 Residual = 1.600974e+00 K = 3 Residual = 1.288921e+00 ITR = 2 Residual = 1.288921e+00 K = 0 Residual = 1.168683e+00 K = 1 Residual = 1.066834e+00 K = 2 Residual = 9.492963e-01 K = 3 Residual = 8.519354e-01 ITR = 3 Residual = 8.519354e-01 K = 0 Residual = 7.921140e-01 K = 1 Residual = 7.402888e-01 K = 2 Residual = 6.929995e-01 K = 3 Residual = 6.454025e-01 ITR = 4 Residual = 6.454025e-01 K = 0 Residual = 6.124110e-01 K = 1 Residual = 5.845053e-01 K = 2 Residual = 5.527674e-01 K = 3 Residual = 5.225523e-01 MGMRES_ST: Iterations = 20 Final residual = 5.225523e-01 Final X_ERROR = 21.7238 TEST02 Test MGMRES_ST on matrix that is not quite the -1,2,-1 matrix, of order N = 9 First try, use zero initial vector: Before calling the solver, X_ERROR = 16.5831 ITR = 0 Residual = 3.000000e+00 K = 0 Residual = 2.236068e+00 K = 1 Residual = 1.914854e+00 K = 2 Residual = 1.290994e+00 K = 3 Residual = 3.779645e-01 K = 4 Residual = 2.643654e-16 MGMRES_ST: Iterations = 5 Final residual = 2.643654e-16 After calling the solver, X_ERROR = 3.01605e-15 Final solution estimate: 0 3.500000 1 1.000000 2 1.000000 3 6.000000 4 7.500000 5 8.000000 6 7.500000 7 6.000000 8 3.500000 Second try, use random initial vector: Before calling the solver, X_ERROR = 15.8935 ITR = 0 Residual = 2.698463e+00 K = 0 Residual = 2.298218e+00 K = 1 Residual = 1.765486e+00 K = 2 Residual = 1.113180e+00 K = 3 Residual = 3.694001e-01 K = 4 Residual = 1.680950e-01 K = 5 Residual = 6.231439e-02 K = 6 Residual = 2.271878e-02 K = 7 Residual = 5.048686e-03 ITR = 1 Residual = 5.048686e-03 K = 0 Residual = 1.121945e-03 K = 1 Residual = 4.090424e-04 K = 2 Residual = 1.516358e-04 K = 3 Residual = 6.900169e-05 K = 4 Residual = 2.289767e-05 K = 5 Residual = 1.443752e-05 K = 6 Residual = 1.109087e-05 K = 7 Residual = 9.445830e-06 ITR = 2 Residual = 9.445830e-06 K = 0 Residual = 8.044791e-06 K = 1 Residual = 6.179991e-06 K = 2 Residual = 3.896628e-06 K = 3 Residual = 1.293066e-06 K = 4 Residual = 5.884079e-07 K = 5 Residual = 2.181283e-07 K = 6 Residual = 7.952589e-08 K = 7 Residual = 1.767266e-08 ITR = 3 Residual = 1.767266e-08 K = 0 Residual = 3.927312e-09 MGMRES_ST: Iterations = 25 Final residual = 3.927312e-09 After calling the solver, X_ERROR = 4.39551e-09 Final solution estimate: 0 3.500000 1 1.000000 2 1.000000 3 6.000000 4 7.500000 5 8.000000 6 7.500000 7 6.000000 8 3.500000 TEST03 Test PMGMRES_ILU_CR on the simple -1,2-1 matrix. ia[0] = 0 ia[1] = 2 ia[2] = 5 ia[3] = 8 ia[4] = 11 ia[5] = 14 ia[6] = 17 ia[7] = 20 ia[8] = 23 ia[9] = 26 ia[10] = 29 ia[11] = 32 ia[12] = 35 ia[13] = 38 ia[14] = 41 ia[15] = 44 ia[16] = 47 ia[17] = 50 ia[18] = 53 ia[19] = 56 ia[20] = 58 Test 1 Matrix order N = 20 Inner iteration limit = 20 Outer iteration limit = 1 Initial X_ERROR = 53.5724 PMGMRES_ILU_CR Number of unknowns = 20 ITR = 0 Residual = 5.357238e+01 K = 0 Residual = 1.264341e-14 PMGMRES_ILU_CR: Iterations = 1 Final residual = 1.264341e-14 Final X_ERROR = 8.29924e-15 Test 2 Matrix order N = 20 Inner iteration limit = 10 Outer iteration limit = 2 Initial X_ERROR = 53.5724 PMGMRES_ILU_CR Number of unknowns = 20 ITR = 0 Residual = 5.357238e+01 K = 0 Residual = 1.264341e-14 PMGMRES_ILU_CR: Iterations = 1 Final residual = 1.264341e-14 Final X_ERROR = 8.29924e-15 Test 3 Matrix order N = 20 Inner iteration limit = 4 Outer iteration limit = 5 Initial X_ERROR = 53.5724 PMGMRES_ILU_CR Number of unknowns = 20 ITR = 0 Residual = 5.357238e+01 K = 0 Residual = 1.264341e-14 PMGMRES_ILU_CR: Iterations = 1 Final residual = 1.264341e-14 Final X_ERROR = 8.29924e-15 TEST04 Test PMGMRES_ILU_CR on a simple 5 x 5 matrix. ia[0] = 0 ia[1] = 3 ia[2] = 4 ia[3] = 6 ia[4] = 7 ia[5] = 9 Test 1 Matrix order N = 5 Inner iteration limit = 20 Outer iteration limit = 1 Initial X_ERROR = 7.4162 PMGMRES_ILU_CR Number of unknowns = 5 ITR = 0 Residual = 1.208305e+01 K = 0 Residual = 3.676955e+00 K = 1 Residual = 2.461373e-15 PMGMRES_ILU_CR: Iterations = 2 Final residual = 2.461373e-15 Final X_ERROR = 1.9984e-15 Test 2 Matrix order N = 5 Inner iteration limit = 10 Outer iteration limit = 2 Initial X_ERROR = 7.4162 PMGMRES_ILU_CR Number of unknowns = 5 ITR = 0 Residual = 1.208305e+01 K = 0 Residual = 3.676955e+00 K = 1 Residual = 2.461373e-15 PMGMRES_ILU_CR: Iterations = 2 Final residual = 2.461373e-15 Final X_ERROR = 1.9984e-15 Test 3 Matrix order N = 5 Inner iteration limit = 4 Outer iteration limit = 5 Initial X_ERROR = 7.4162 PMGMRES_ILU_CR Number of unknowns = 5 ITR = 0 Residual = 1.208305e+01 K = 0 Residual = 3.676955e+00 K = 1 Residual = 2.461373e-15 PMGMRES_ILU_CR: Iterations = 2 Final residual = 2.461373e-15 Final X_ERROR = 1.9984e-15 MGMRES_TEST: Normal end of execution. 11 June 2018 02:58:53 PM