template<typename Real = double>
class TNL::Solvers::IterativeSolverMonitor< Real >
Object for monitoring convergence of iterative solvers.
- Template Parameters
-
| Real | is a type of the floating-point arithmetics. |
| Index | is an indexing type. |
The following example shows how to use the iterative solver monitor for monitoring convergence of linear iterative solver:
1#include <iostream>
2#include <memory>
3#include <TNL/Matrices/SparseMatrix.h>
4#include <TNL/Devices/Sequential.h>
5#include <TNL/Devices/Cuda.h>
6#include <TNL/Solvers/Linear/Jacobi.h>
7
8template< typename Device >
9void
10iterativeLinearSolverExample()
11{
12
13
14
15
16
17
18
19
20
23 const int size( 5 );
25 matrix_ptr->setDimensions( size, size );
26 matrix_ptr->setRowCapacities( Vector( { 2, 3, 3, 3, 2 } ) );
27
29 {
30 const int rowIdx = row.getRowIndex();
31 if( rowIdx == 0 ) {
32 row.setElement( 0, rowIdx, 2.5 );
33 row.setElement( 1, rowIdx + 1, -1 );
34 }
35 else if( rowIdx == size - 1 ) {
36 row.setElement( 0, rowIdx - 1, -1.0 );
37 row.setElement( 1, rowIdx, 2.5 );
38 }
39 else {
40 row.setElement( 0, rowIdx - 1, -1.0 );
41 row.setElement( 1, rowIdx, 2.5 );
42 row.setElement( 2, rowIdx + 1, -1.0 );
43 }
44 };
45
46
47
48
49 matrix_ptr->forAllRows( f );
51
52
53
54
55 Vector x( size, 1.0 );
56 Vector b( size );
57 matrix_ptr->vectorProduct( x, b );
58 x = 0.0;
60
61
62
63
65 LinearSolver solver;
67 solver.setOmega( 0.0005 );
68
69
70
71
73 IterativeSolverMonitorType monitor;
75 monitor.setRefreshRate( 10 );
76 monitor.setVerbose( 1 );
77 monitor.setStage( "Jacobi stage:" );
78 solver.setSolverMonitor( monitor );
79 solver.setConvergenceResidue( 1.0e-6 );
80 solver.solve( b, x );
81 monitor.stopMainLoop();
83}
84
85int
86main( int argc, char* argv[] )
87{
88 std::cout <<
"Solving linear system on host:\n";
89 iterativeLinearSolverExample< TNL::Devices::Sequential >();
90
91#ifdef __CUDACC__
92 std::cout <<
"Solving linear system on CUDA device:\n";
93 iterativeLinearSolverExample< TNL::Devices::Cuda >();
94#endif
95}
#define __cuda_callable__
This macro serves for annotating functions which are supposed to be called even from the GPU device.
Definition Macros.h:50
Vector extends Array with algebraic operations.
Definition Vector.h:37
Implementation of sparse matrix, i.e. matrix storing only non-zero elements.
Definition SparseMatrix.h:59
Iterative solver of linear systems based on the Jacobi method.
Definition Jacobi.h:21
virtual void setMatrix(const MatrixPointer &matrix)
Set the matrix of the linear system.
Definition LinearSolver.h:120
A RAII wrapper for launching the SolverMonitor's main loop in a separate thread.
Definition SolverMonitor.h:142
The result looks as follows:
Solving linear system on host:
Row: 0 -> 0:2.5 1:-1
Row: 1 -> 0:-1 1:2.5 2:-1
Row: 2 -> 1:-1 2:2.5 3:-1
Row: 3 -> 2:-1 3:2.5 4:-1
Row: 4 -> 3:-1 4:2.5
Vector b = [ 1.5, 0.5, 0.5, 0.5, 1.5 ]
Jacobi stage: ITER: 40101 RES: 0.0015263
Jacobi stage: ITER: 80177 RES: 3.2377e-06
Vector x = [ 0.999999, 0.999999, 0.999998, 0.999999, 0.999999 ]
Solving linear system on CUDA device:
Row: 0 -> 0:2.5 1:-1
Row: 1 -> 0:-1 1:2.5 2:-1
Row: 2 -> 1:-1 2:2.5 3:-1
Row: 3 -> 2:-1 3:2.5 4:-1
Row: 4 -> 3:-1 4:2.5
Vector b = [ 1.5, 0.5, 0.5, 0.5, 1.5 ]
Jacobi stage: ITER: 5771 RES: 0.29984
Jacobi stage: ITER: 7715 RES: 0.2213
Jacobi stage: ITER: 8151 RES: 0.20686
Jacobi stage: ITER: 8451 RES: 0.1975
Jacobi stage: ITER: 8763 RES: 0.18822
Jacobi stage: ITER: 9067 RES: 0.1796
Jacobi stage: ITER: 9379 RES: 0.17117
Jacobi stage: ITER: 9695 RES: 0.16304
Jacobi stage: ITER: 10005 RES: 0.1554
Jacobi stage: ITER: 10313 RES: 0.14821
Jacobi stage: ITER: 10619 RES: 0.14144
Jacobi stage: ITER: 10919 RES: 0.13506
Jacobi stage: ITER: 11151 RES: 0.13033
Jacobi stage: ITER: 11335 RES: 0.1267
Jacobi stage: ITER: 11515 RES: 0.12324
Jacobi stage: ITER: 11701 RES: 0.11973
Jacobi stage: ITER: 11887 RES: 0.11639
Jacobi stage: ITER: 12075 RES: 0.11308
Jacobi stage: ITER: 12265 RES: 0.10979
Jacobi stage: ITER: 12447 RES: 0.10679
Jacobi stage: ITER: 12627 RES: 0.10388
Jacobi stage: ITER: 12819 RES: 0.10086
Jacobi stage: ITER: 13007 RES: 0.097991
Jacobi stage: ITER: 13199 RES: 0.095142
Jacobi stage: ITER: 13451 RES: 0.091529
Jacobi stage: ITER: 13759 RES: 0.0873
Jacobi stage: ITER: 14065 RES: 0.083265
Jacobi stage: ITER: 14375 RES: 0.079417
Jacobi stage: ITER: 14693 RES: 0.075608
Jacobi stage: ITER: 15011 RES: 0.072025
Jacobi stage: ITER: 15315 RES: 0.068739
Jacobi stage: ITER: 15619 RES: 0.065603
Jacobi stage: ITER: 15935 RES: 0.062495
Jacobi stage: ITER: 16253 RES: 0.059497
Jacobi stage: ITER: 16567 RES: 0.056713
Jacobi stage: ITER: 16859 RES: 0.054226
Jacobi stage: ITER: 17157 RES: 0.051784
Jacobi stage: ITER: 17467 RES: 0.049391
Jacobi stage: ITER: 17783 RES: 0.047051
Jacobi stage: ITER: 18103 RES: 0.044794
Jacobi stage: ITER: 18401 RES: 0.042777
Jacobi stage: ITER: 18713 RES: 0.040775
Jacobi stage: ITER: 19029 RES: 0.038843
Jacobi stage: ITER: 19347 RES: 0.037003
Jacobi stage: ITER: 19659 RES: 0.035271
Jacobi stage: ITER: 19937 RES: 0.033786
Jacobi stage: ITER: 20241 RES: 0.032245
Jacobi stage: ITER: 20555 RES: 0.030736
Jacobi stage: ITER: 20871 RES: 0.02928
Jacobi stage: ITER: 21187 RES: 0.027893
Jacobi stage: ITER: 21495 RES: 0.026604
Jacobi stage: ITER: 21807 RES: 0.025359
Jacobi stage: ITER: 22103 RES: 0.024232
Jacobi stage: ITER: 22419 RES: 0.023084
Jacobi stage: ITER: 22725 RES: 0.022017
Jacobi stage: ITER: 23017 RES: 0.021051
Jacobi stage: ITER: 23305 RES: 0.02014
Jacobi stage: ITER: 23575 RES: 0.019328
Jacobi stage: ITER: 23883 RES: 0.018435
Jacobi stage: ITER: 24167 RES: 0.017648
Jacobi stage: ITER: 25643 RES: 0.014068
Jacobi stage: ITER: 26071 RES: 0.013173
Jacobi stage: ITER: 26417 RES: 0.012487
Jacobi stage: ITER: 26733 RES: 0.011896
Jacobi stage: ITER: 27047 RES: 0.011339
Jacobi stage: ITER: 27363 RES: 0.010802
Jacobi stage: ITER: 27679 RES: 0.01029
Jacobi stage: ITER: 27991 RES: 0.0098086
Jacobi stage: ITER: 28303 RES: 0.0093496
Jacobi stage: ITER: 28571 RES: 0.0089725
Jacobi stage: ITER: 28843 RES: 0.0086054
Jacobi stage: ITER: 29149 RES: 0.0082078
Jacobi stage: ITER: 29455 RES: 0.0078333
Jacobi stage: ITER: 29769 RES: 0.0074622
Jacobi stage: ITER: 30085 RES: 0.0071086
Jacobi stage: ITER: 30419 RES: 0.0067552
Jacobi stage: ITER: 30743 RES: 0.0064273
Jacobi stage: ITER: 31061 RES: 0.006119
Jacobi stage: ITER: 31383 RES: 0.0058255
Jacobi stage: ITER: 31695 RES: 0.0055529
Jacobi stage: ITER: 31985 RES: 0.0053093
Jacobi stage: ITER: 32269 RES: 0.0050827
Jacobi stage: ITER: 32597 RES: 0.004833
Jacobi stage: ITER: 32895 RES: 0.0046182
Jacobi stage: ITER: 33199 RES: 0.0044075
Jacobi stage: ITER: 33513 RES: 0.0041987
Jacobi stage: ITER: 33943 RES: 0.0039315
Jacobi stage: ITER: 34249 RES: 0.0037498
Jacobi stage: ITER: 34565 RES: 0.0035722
Jacobi stage: ITER: 34875 RES: 0.0034071
Jacobi stage: ITER: 35171 RES: 0.0032557
Jacobi stage: ITER: 35467 RES: 0.003111
Jacobi stage: ITER: 35759 RES: 0.0029745
Jacobi stage: ITER: 36065 RES: 0.0028371
Jacobi stage: ITER: 36375 RES: 0.002706
Jacobi stage: ITER: 36679 RES: 0.0025825
Jacobi stage: ITER: 36995 RES: 0.0024602
Jacobi stage: ITER: 37311 RES: 0.0023436
Jacobi stage: ITER: 37631 RES: 0.0022312
Jacobi stage: ITER: 37949 RES: 0.0021242
Jacobi stage: ITER: 38263 RES: 0.0020248
Jacobi stage: ITER: 38577 RES: 0.0019289
Jacobi stage: ITER: 38863 RES: 0.0018465
Jacobi stage: ITER: 39173 RES: 0.0017601
Jacobi stage: ITER: 39495 RES: 0.0016757
Jacobi stage: ITER: 39827 RES: 0.0015924
Jacobi stage: ITER: 40127 RES: 0.0015207
Jacobi stage: ITER: 40433 RES: 0.0014504
Jacobi stage: ITER: 40749 RES: 0.0013817
Jacobi stage: ITER: 41061 RES: 0.001317
Jacobi stage: ITER: 41371 RES: 0.0012562
Jacobi stage: ITER: 41683 RES: 0.0011974
Jacobi stage: ITER: 41995 RES: 0.0011414
Jacobi stage: ITER: 42307 RES: 0.001088
Jacobi stage: ITER: 42617 RES: 0.001037
Jacobi stage: ITER: 42929 RES: 0.00098852
Jacobi stage: ITER: 43239 RES: 0.00094284
Jacobi stage: ITER: 43551 RES: 0.00089872
Jacobi stage: ITER: 43863 RES: 0.00085667
Jacobi stage: ITER: 44175 RES: 0.00081658
Jacobi stage: ITER: 44485 RES: 0.00077837
Jacobi stage: ITER: 44797 RES: 0.00074195
Jacobi stage: ITER: 45107 RES: 0.00070766
Jacobi stage: ITER: 45419 RES: 0.00067455
Jacobi stage: ITER: 45731 RES: 0.00064298
Jacobi stage: ITER: 46043 RES: 0.0006129
Jacobi stage: ITER: 46355 RES: 0.00058422
Jacobi stage: ITER: 46665 RES: 0.00055688
Jacobi stage: ITER: 46977 RES: 0.00053082
Jacobi stage: ITER: 47287 RES: 0.00050629
Jacobi stage: ITER: 47599 RES: 0.0004826
Jacobi stage: ITER: 47911 RES: 0.00046002
Jacobi stage: ITER: 48223 RES: 0.00043849
Jacobi stage: ITER: 48533 RES: 0.00041798
Jacobi stage: ITER: 48845 RES: 0.00039842
Jacobi stage: ITER: 49157 RES: 0.00037977
Jacobi stage: ITER: 49467 RES: 0.00036222
Jacobi stage: ITER: 49779 RES: 0.00034528
Jacobi stage: ITER: 50091 RES: 0.00032912
Jacobi stage: ITER: 50403 RES: 0.00031372
Jacobi stage: ITER: 50713 RES: 0.00029904
Jacobi stage: ITER: 51025 RES: 0.00028504
Jacobi stage: ITER: 51337 RES: 0.00027171
Jacobi stage: ITER: 51647 RES: 0.00025915
Jacobi stage: ITER: 51959 RES: 0.00024703
Jacobi stage: ITER: 52271 RES: 0.00023547
Jacobi stage: ITER: 52583 RES: 0.00022445
Jacobi stage: ITER: 52893 RES: 0.00021394
Jacobi stage: ITER: 53205 RES: 0.00020393
Jacobi stage: ITER: 53515 RES: 0.00019451
Jacobi stage: ITER: 53827 RES: 0.00018541
Jacobi stage: ITER: 54139 RES: 0.00017673
Jacobi stage: ITER: 54451 RES: 0.00016846
Jacobi stage: ITER: 54761 RES: 0.00016058
Jacobi stage: ITER: 55073 RES: 0.00015307
Jacobi stage: ITER: 55385 RES: 0.0001459
Jacobi stage: ITER: 55695 RES: 0.00013916
Jacobi stage: ITER: 56007 RES: 0.00013265
Jacobi stage: ITER: 56319 RES: 0.00012644
Jacobi stage: ITER: 56631 RES: 0.00012053
Jacobi stage: ITER: 56941 RES: 0.00011489
Jacobi stage: ITER: 57253 RES: 0.00010951
Jacobi stage: ITER: 57563 RES: 0.00010445
Jacobi stage: ITER: 57875 RES: 9.9562e-05
Jacobi stage: ITER: 58187 RES: 9.4903e-05
Jacobi stage: ITER: 58499 RES: 9.0462e-05
Jacobi stage: ITER: 58809 RES: 8.6229e-05
Jacobi stage: ITER: 59121 RES: 8.2194e-05
Jacobi stage: ITER: 59433 RES: 7.8348e-05
Jacobi stage: ITER: 59743 RES: 7.4728e-05
Jacobi stage: ITER: 60055 RES: 7.1231e-05
Jacobi stage: ITER: 60367 RES: 6.7898e-05
Jacobi stage: ITER: 60679 RES: 6.4721e-05
Jacobi stage: ITER: 60989 RES: 6.1692e-05
Jacobi stage: ITER: 61301 RES: 5.8806e-05
Jacobi stage: ITER: 61613 RES: 5.6054e-05
Jacobi stage: ITER: 61923 RES: 5.3464e-05
Jacobi stage: ITER: 62235 RES: 5.0962e-05
Jacobi stage: ITER: 62547 RES: 4.8577e-05
Jacobi stage: ITER: 62859 RES: 4.6304e-05
Jacobi stage: ITER: 63169 RES: 4.4137e-05
Jacobi stage: ITER: 63481 RES: 4.2072e-05
Jacobi stage: ITER: 63791 RES: 4.0128e-05
Jacobi stage: ITER: 64103 RES: 3.825e-05
Jacobi stage: ITER: 64415 RES: 3.646e-05
Jacobi stage: ITER: 64727 RES: 3.4754e-05
Jacobi stage: ITER: 65037 RES: 3.3128e-05
Jacobi stage: ITER: 65349 RES: 3.1578e-05
Jacobi stage: ITER: 65661 RES: 3.01e-05
Jacobi stage: ITER: 65971 RES: 2.8709e-05
Jacobi stage: ITER: 66283 RES: 2.7366e-05
Jacobi stage: ITER: 66595 RES: 2.6085e-05
Jacobi stage: ITER: 66907 RES: 2.4865e-05
Jacobi stage: ITER: 67217 RES: 2.3701e-05
Jacobi stage: ITER: 67529 RES: 2.2592e-05
Jacobi stage: ITER: 67839 RES: 2.1548e-05
Jacobi stage: ITER: 68151 RES: 2.054e-05
Jacobi stage: ITER: 68463 RES: 1.9579e-05
Jacobi stage: ITER: 68775 RES: 1.8663e-05
Jacobi stage: ITER: 69085 RES: 1.7789e-05
Jacobi stage: ITER: 69397 RES: 1.6957e-05
Jacobi stage: ITER: 69707 RES: 1.6173e-05
Jacobi stage: ITER: 70019 RES: 1.5417e-05
Jacobi stage: ITER: 70331 RES: 1.4695e-05
Jacobi stage: ITER: 70643 RES: 1.4008e-05
Jacobi stage: ITER: 70955 RES: 1.3352e-05
Jacobi stage: ITER: 71265 RES: 1.2727e-05
Jacobi stage: ITER: 71577 RES: 1.2132e-05
Jacobi stage: ITER: 71887 RES: 1.1571e-05
Jacobi stage: ITER: 72199 RES: 1.103e-05
Jacobi stage: ITER: 72511 RES: 1.0514e-05
Jacobi stage: ITER: 72823 RES: 1.0022e-05
Jacobi stage: ITER: 73133 RES: 9.5527e-06
Jacobi stage: ITER: 73445 RES: 9.1057e-06
Jacobi stage: ITER: 73757 RES: 8.6796e-06
Jacobi stage: ITER: 74067 RES: 8.2785e-06
Jacobi stage: ITER: 74379 RES: 7.8911e-06
Jacobi stage: ITER: 74691 RES: 7.5219e-06
Jacobi stage: ITER: 75003 RES: 7.1699e-06
Jacobi stage: ITER: 75313 RES: 6.8344e-06
Jacobi stage: ITER: 75625 RES: 6.5146e-06
Jacobi stage: ITER: 75935 RES: 6.2136e-06
Jacobi stage: ITER: 76247 RES: 5.9228e-06
Jacobi stage: ITER: 76559 RES: 5.6457e-06
Jacobi stage: ITER: 76871 RES: 5.3815e-06
Jacobi stage: ITER: 77183 RES: 5.1297e-06
Jacobi stage: ITER: 77493 RES: 4.8896e-06
Jacobi stage: ITER: 77805 RES: 4.6608e-06
Jacobi stage: ITER: 78115 RES: 4.4455e-06
Jacobi stage: ITER: 78427 RES: 4.2375e-06
Jacobi stage: ITER: 78739 RES: 4.0392e-06
Jacobi stage: ITER: 79051 RES: 3.8502e-06
Jacobi stage: ITER: 79363 RES: 3.67e-06
Jacobi stage: ITER: 79673 RES: 3.4983e-06
Jacobi stage: ITER: 79983 RES: 3.3366e-06
Jacobi stage: ITER: 80295 RES: 3.1805e-06
Jacobi stage: ITER: 80607 RES: 3.0317e-06
Jacobi stage: ITER: 80919 RES: 2.8898e-06
Jacobi stage: ITER: 81231 RES: 2.7546e-06
Jacobi stage: ITER: 81541 RES: 2.6257e-06
Jacobi stage: ITER: 82003 RES: 2.4466e-06
Jacobi stage: ITER: 82315 RES: 2.3321e-06
Jacobi stage: ITER: 82627 RES: 2.2229e-06
Jacobi stage: ITER: 82937 RES: 2.1189e-06
Jacobi stage: ITER: 83249 RES: 2.0198e-06
Jacobi stage: ITER: 83559 RES: 1.9264e-06
Jacobi stage: ITER: 83871 RES: 1.8363e-06
Jacobi stage: ITER: 84183 RES: 1.7504e-06
Jacobi stage: ITER: 84493 RES: 1.6685e-06
Jacobi stage: ITER: 84805 RES: 1.5904e-06
Jacobi stage: ITER: 85115 RES: 1.5169e-06
Jacobi stage: ITER: 85427 RES: 1.4459e-06
Jacobi stage: ITER: 85739 RES: 1.3783e-06
Jacobi stage: ITER: 86049 RES: 1.3138e-06
Jacobi stage: ITER: 86361 RES: 1.2523e-06
Jacobi stage: ITER: 86671 RES: 1.1944e-06
Jacobi stage: ITER: 86983 RES: 1.1385e-06
Jacobi stage: ITER: 87295 RES: 1.0853e-06
Jacobi stage: ITER: 87605 RES: 1.0345e-06
Vector x = [ 0.999999, 0.999999, 0.999998, 0.999999, 0.999999 ]
The following example shows how to employ timer (TNL::Timer) to the monitor of iterative solvers:
1#include <iostream>
2#include <memory>
3#include <TNL/Timer.h>
4#include <TNL/Matrices/SparseMatrix.h>
5#include <TNL/Devices/Sequential.h>
6#include <TNL/Devices/Cuda.h>
7#include <TNL/Solvers/Linear/Jacobi.h>
8
9template< typename Device >
10void
11iterativeLinearSolverExample()
12{
13
14
15
16
17
18
19
20
21
24 const int size( 5 );
26 matrix_ptr->setDimensions( size, size );
27 matrix_ptr->setRowCapacities( Vector( { 2, 3, 3, 3, 2 } ) );
28
30 {
31 const int rowIdx = row.getRowIndex();
32 if( rowIdx == 0 ) {
33 row.setElement( 0, rowIdx, 2.5 );
34 row.setElement( 1, rowIdx + 1, -1 );
35 }
36 else if( rowIdx == size - 1 ) {
37 row.setElement( 0, rowIdx - 1, -1.0 );
38 row.setElement( 1, rowIdx, 2.5 );
39 }
40 else {
41 row.setElement( 0, rowIdx - 1, -1.0 );
42 row.setElement( 1, rowIdx, 2.5 );
43 row.setElement( 2, rowIdx + 1, -1.0 );
44 }
45 };
46
47
48
49
50 matrix_ptr->forAllRows( f );
52
53
54
55
56 Vector x( size, 1.0 );
57 Vector b( size );
58 matrix_ptr->vectorProduct( x, b );
59 x = 0.0;
61
62
63
64
66 LinearSolver solver;
68 solver.setOmega( 0.0005 );
69
70
71
72
74 IterativeSolverMonitorType monitor;
76 monitor.setRefreshRate( 10 );
77 monitor.setVerbose( 1 );
78 monitor.setStage( "Jacobi stage:" );
80 monitor.setTimer( timer );
82 solver.setSolverMonitor( monitor );
83 solver.setConvergenceResidue( 1.0e-6 );
84 solver.solve( b, x );
85 monitor.stopMainLoop();
87}
88
89int
90main( int argc, char* argv[] )
91{
92 std::cout <<
"Solving linear system on host:\n";
93 iterativeLinearSolverExample< TNL::Devices::Sequential >();
94
95#ifdef __CUDACC__
96 std::cout <<
"Solving linear system on CUDA device:\n";
97 iterativeLinearSolverExample< TNL::Devices::Cuda >();
98#endif
99}
Class for real time, CPU time and CPU cycles measuring.
Definition Timer.h:25
void start()
Starts timer.
The result looks as follows:
Solving linear system on host:
Row: 0 -> 0:2.5 1:-1
Row: 1 -> 0:-1 1:2.5 2:-1
Row: 2 -> 1:-1 2:2.5 3:-1
Row: 3 -> 2:-1 3:2.5 4:-1
Row: 4 -> 3:-1 4:2.5
Vector b = [ 1.5, 0.5, 0.5, 0.5, 1.5 ]
ELA:6.892e-0
ELA: 0.10017 Jacobi stage: ITER: 39865 RES: 0.0015826
ELA: 0.20028 Jacobi stage: ITER: 80187 RES: 3.2337e-06
Vector x = [ 0.999999, 0.999999, 0.999998, 0.999999, 0.999999 ]
Solving linear system on CUDA device:
Row: 0 -> 0:2.5 1:-1
Row: 1 -> 0:-1 1:2.5 2:-1
Row: 2 -> 1:-1 2:2.5 3:-1
Row: 3 -> 2:-1 3:2.5 4:-1
Row: 4 -> 3:-1 4:2.5
Vector b = [ 1.5, 0.5, 0.5, 0.5, 1.5 ]
ELA:1.8204e-
ELA: 0.10016 Jacobi stage: ITER: 465 RES: 0.85961
ELA: 0.20027 Jacobi stage: ITER: 845 RES: 0.76978
ELA: 0.30039 Jacobi stage: ITER: 1143 RES: 0.71145
ELA: 0.40049 Jacobi stage: ITER: 1455 RES: 0.65856
ELA: 0.5006 Jacobi stage: ITER: 1755 RES: 0.61437
ELA: 0.6007 Jacobi stage: ITER: 2071 RES: 0.5735
ELA: 0.70082 Jacobi stage: ITER: 2383 RES: 0.53777
ELA: 0.80092 Jacobi stage: ITER: 2691 RES: 0.50617
ELA: 0.90103 Jacobi stage: ITER: 2997 RES: 0.47759
ELA: 1.0011 Jacobi stage: ITER: 3303 RES: 0.45185
ELA: 1.1012 Jacobi stage: ITER: 3599 RES: 0.42878
ELA: 1.2013 Jacobi stage: ITER: 3783 RES: 0.4153
ELA: 1.3014 Jacobi stage: ITER: 3965 RES: 0.40242
ELA: 1.4015 Jacobi stage: ITER: 4149 RES: 0.39009
ELA: 1.5016 Jacobi stage: ITER: 4335 RES: 0.37826
ELA: 1.6017 Jacobi stage: ITER: 4519 RES: 0.36691
ELA: 1.7019 Jacobi stage: ITER: 4707 RES: 0.35575
ELA: 1.802 Jacobi stage: ITER: 4897 RES: 0.34479
ELA: 1.9021 Jacobi stage: ITER: 5073 RES: 0.33511
ELA: 2.0022 Jacobi stage: ITER: 5257 RES: 0.32533
ELA: 2.1023 Jacobi stage: ITER: 5445 RES: 0.31569
ELA: 2.2024 Jacobi stage: ITER: 5635 RES: 0.30638
ELA: 2.3025 Jacobi stage: ITER: 5823 RES: 0.29738
ELA: 2.4026 Jacobi stage: ITER: 6121 RES: 0.28363
ELA: 2.5027 Jacobi stage: ITER: 6423 RES: 0.27058
ELA: 2.6028 Jacobi stage: ITER: 6731 RES: 0.25786
ELA: 2.7029 Jacobi stage: ITER: 7041 RES: 0.24562
ELA: 2.803 Jacobi stage: ITER: 7359 RES: 0.23385
ELA: 2.9031 Jacobi stage: ITER: 7675 RES: 0.22267
ELA: 3.0032 Jacobi stage: ITER: 7969 RES: 0.2127
ELA: 3.1033 Jacobi stage: ITER: 8277 RES: 0.20281
ELA: 3.2034 Jacobi stage: ITER: 8593 RES: 0.19316
ELA: 3.3035 Jacobi stage: ITER: 8911 RES: 0.18397
ELA: 3.4036 Jacobi stage: ITER: 9219 RES: 0.17544
ELA: 3.5037 Jacobi stage: ITER: 9507 RES: 0.16783
ELA: 3.6038 Jacobi stage: ITER: 9803 RES: 0.16036
ELA: 3.7039 Jacobi stage: ITER: 10115 RES: 0.15284
ELA: 3.804 Jacobi stage: ITER: 10431 RES: 0.14559
ELA: 3.9041 Jacobi stage: ITER: 10747 RES: 0.13868
ELA: 4.0042 Jacobi stage: ITER: 11047 RES: 0.13243
ELA: 4.1043 Jacobi stage: ITER: 11359 RES: 0.12623
ELA: 4.2045 Jacobi stage: ITER: 11675 RES: 0.12025
ELA: 4.3046 Jacobi stage: ITER: 11991 RES: 0.11455
ELA: 4.4047 Jacobi stage: ITER: 12283 RES: 0.10952
ELA: 4.5047 Jacobi stage: ITER: 12575 RES: 0.10472
ELA: 4.6048 Jacobi stage: ITER: 12877 RES: 0.099937
ELA: 4.705 Jacobi stage: ITER: 13187 RES: 0.095318
ELA: 4.8051 Jacobi stage: ITER: 13503 RES: 0.090801
ELA: 4.9052 Jacobi stage: ITER: 13815 RES: 0.086552
ELA: 5.0053 Jacobi stage: ITER: 14125 RES: 0.082501
ELA: 5.1054 Jacobi stage: ITER: 14437 RES: 0.07864
ELA: 5.2055 Jacobi stage: ITER: 14729 RES: 0.075191
ELA: 5.3093 Jacobi stage: ITER: 15047 RES: 0.071628
ELA: 5.4094 Jacobi stage: ITER: 15343 RES: 0.068444
ELA: 5.5096 Jacobi stage: ITER: 15631 RES: 0.065482
ELA: 5.6097 Jacobi stage: ITER: 15933 RES: 0.062495
ELA: 5.7098 Jacobi stage: ITER: 16519 RES: 0.057133
ELA: 5.8137 Jacobi stage: ITER: 16825 RES: 0.054493
ELA: 5.9137 Jacobi stage: ITER: 17073 RES: 0.052456
ELA: 6.0138 Jacobi stage: ITER: 17259 RES: 0.050994
ELA: 6.1156 Jacobi stage: ITER: 17519 RES: 0.048998
ELA: 6.2157 Jacobi stage: ITER: 17815 RES: 0.04682
ELA: 6.3158 Jacobi stage: ITER: 18127 RES: 0.044629
ELA: 6.416 Jacobi stage: ITER: 18443 RES: 0.042515
ELA: 6.5161 Jacobi stage: ITER: 18759 RES: 0.0405
ELA: 6.6163 Jacobi stage: ITER: 19075 RES: 0.038581
ELA: 6.7166 Jacobi stage: ITER: 19381 RES: 0.036799
ELA: 6.8202 Jacobi stage: ITER: 19679 RES: 0.035163
ELA: 6.9203 Jacobi stage: ITER: 19939 RES: 0.033786
ELA: 7.0204 Jacobi stage: ITER: 20235 RES: 0.032285
ELA: 7.1205 Jacobi stage: ITER: 20539 RES: 0.030812
ELA: 7.2206 Jacobi stage: ITER: 20845 RES: 0.029388
ELA: 7.3207 Jacobi stage: ITER: 21161 RES: 0.027996
ELA: 7.4207 Jacobi stage: ITER: 21475 RES: 0.026686
ELA: 7.5252 Jacobi stage: ITER: 21823 RES: 0.025297
ELA: 7.6253 Jacobi stage: ITER: 22149 RES: 0.024054
ELA: 7.7257 Jacobi stage: ITER: 22459 RES: 0.022942
ELA: 7.8258 Jacobi stage: ITER: 22767 RES: 0.021882
ELA: 7.9288 Jacobi stage: ITER: 23071 RES: 0.020884
ELA: 8.0289 Jacobi stage: ITER: 23361 RES: 0.019968
ELA: 8.129 Jacobi stage: ITER: 23683 RES: 0.01901
ELA: 8.2291 Jacobi stage: ITER: 23989 RES: 0.018132
ELA: 8.3292 Jacobi stage: ITER: 24295 RES: 0.017305
ELA: 8.4293 Jacobi stage: ITER: 24607 RES: 0.016495
ELA: 8.5319 Jacobi stage: ITER: 24939 RES: 0.015675
ELA: 8.632 Jacobi stage: ITER: 25241 RES: 0.01496
ELA: 8.7321 Jacobi stage: ITER: 25555 RES: 0.01426
ELA: 8.833 Jacobi stage: ITER: 25875 RES: 0.013576
ELA: 8.9336 Jacobi stage: ITER: 26175 RES: 0.012964
ELA: 9.0336 Jacobi stage: ITER: 26479 RES: 0.012373
ELA: 9.1338 Jacobi stage: ITER: 26775 RES: 0.011823
ELA: 9.2339 Jacobi stage: ITER: 27067 RES: 0.011304
ELA: 9.334 Jacobi stage: ITER: 27373 RES: 0.010782
ELA: 9.4341 Jacobi stage: ITER: 27677 RES: 0.01029
ELA: 9.5342 Jacobi stage: ITER: 27981 RES: 0.0098207
ELA: 9.6347 Jacobi stage: ITER: 28291 RES: 0.0093669
ELA: 9.7348 Jacobi stage: ITER: 28593 RES: 0.0089395
ELA: 9.8349 Jacobi stage: ITER: 28909 RES: 0.008516
ELA: 9.9351 Jacobi stage: ITER: 29227 RES: 0.0081125
ELA: 10.035 Jacobi stage: ITER: 29539 RES: 0.0077329
ELA: 10.136 Jacobi stage: ITER: 29841 RES: 0.0073801
ELA: 10.236 Jacobi stage: ITER: 30135 RES: 0.0070564
ELA: 10.336 Jacobi stage: ITER: 30463 RES: 0.0067097
ELA: 10.436 Jacobi stage: ITER: 30765 RES: 0.0064036
ELA: 10.537 Jacobi stage: ITER: 31029 RES: 0.0061491
ELA: 10.637 Jacobi stage: ITER: 31325 RES: 0.0058758
ELA: 10.737 Jacobi stage: ITER: 31637 RES: 0.0056009
ELA: 10.838 Jacobi stage: ITER: 31951 RES: 0.0053388
ELA: 10.938 Jacobi stage: ITER: 32263 RES: 0.005089
ELA: 11.038 Jacobi stage: ITER: 32575 RES: 0.0048508
ELA: 11.138 Jacobi stage: ITER: 32887 RES: 0.0046238
ELA: 11.238 Jacobi stage: ITER: 33197 RES: 0.0044075
ELA: 11.338 Jacobi stage: ITER: 33509 RES: 0.0042012
ELA: 11.438 Jacobi stage: ITER: 33819 RES: 0.0040071
ELA: 11.539 Jacobi stage: ITER: 34131 RES: 0.0038196
ELA: 11.639 Jacobi stage: ITER: 34443 RES: 0.0036409
ELA: 11.739 Jacobi stage: ITER: 34755 RES: 0.0034705
ELA: 11.839 Jacobi stage: ITER: 35067 RES: 0.0033081
ELA: 11.939 Jacobi stage: ITER: 35377 RES: 0.0031533
ELA: 12.039 Jacobi stage: ITER: 35687 RES: 0.0030076
ELA: 12.139 Jacobi stage: ITER: 35999 RES: 0.0028669
ELA: 12.24 Jacobi stage: ITER: 36311 RES: 0.0027327
ELA: 12.34 Jacobi stage: ITER: 36623 RES: 0.0026048
ELA: 12.44 Jacobi stage: ITER: 36935 RES: 0.0024829
ELA: 12.54 Jacobi stage: ITER: 37245 RES: 0.0023668
ELA: 12.64 Jacobi stage: ITER: 37557 RES: 0.002256
ELA: 12.74 Jacobi stage: ITER: 37867 RES: 0.0021518
ELA: 12.84 Jacobi stage: ITER: 38179 RES: 0.0020511
ELA: 12.94 Jacobi stage: ITER: 38491 RES: 0.0019551
ELA: 13.041 Jacobi stage: ITER: 38803 RES: 0.0018636
ELA: 13.141 Jacobi stage: ITER: 39113 RES: 0.0017764
ELA: 13.241 Jacobi stage: ITER: 39425 RES: 0.0016933
ELA: 13.341 Jacobi stage: ITER: 39735 RES: 0.001615
ELA: 13.441 Jacobi stage: ITER: 40047 RES: 0.0015395
ELA: 13.541 Jacobi stage: ITER: 40359 RES: 0.0014674
ELA: 13.641 Jacobi stage: ITER: 40671 RES: 0.0013988
ELA: 13.741 Jacobi stage: ITER: 40983 RES: 0.0013333
ELA: 13.842 Jacobi stage: ITER: 41293 RES: 0.0012709
ELA: 13.942 Jacobi stage: ITER: 41605 RES: 0.0012115
ELA: 14.042 Jacobi stage: ITER: 41915 RES: 0.0011555
ELA: 14.142 Jacobi stage: ITER: 42227 RES: 0.0011014
ELA: 14.242 Jacobi stage: ITER: 42539 RES: 0.0010499
ELA: 14.342 Jacobi stage: ITER: 42851 RES: 0.0010007
ELA: 14.442 Jacobi stage: ITER: 43163 RES: 0.00095391
ELA: 14.543 Jacobi stage: ITER: 43473 RES: 0.00090927
ELA: 14.643 Jacobi stage: ITER: 43785 RES: 0.00086673
ELA: 14.743 Jacobi stage: ITER: 44095 RES: 0.00082668
ELA: 14.843 Jacobi stage: ITER: 44407 RES: 0.00078799
ELA: 14.943 Jacobi stage: ITER: 44719 RES: 0.00075112
ELA: 15.043 Jacobi stage: ITER: 45031 RES: 0.00071597
ELA: 15.143 Jacobi stage: ITER: 45341 RES: 0.00068247
ELA: 15.243 Jacobi stage: ITER: 45653 RES: 0.00065053
ELA: 15.344 Jacobi stage: ITER: 45963 RES: 0.00062009
ELA: 15.444 Jacobi stage: ITER: 46275 RES: 0.00059144
ELA: 15.544 Jacobi stage: ITER: 46587 RES: 0.00056377
ELA: 15.644 Jacobi stage: ITER: 46899 RES: 0.00053738
ELA: 15.744 Jacobi stage: ITER: 47211 RES: 0.00051224
ELA: 15.844 Jacobi stage: ITER: 47521 RES: 0.00048827
ELA: 15.944 Jacobi stage: ITER: 47833 RES: 0.00046542
ELA: 16.044 Jacobi stage: ITER: 48143 RES: 0.00044392
ELA: 16.145 Jacobi stage: ITER: 48455 RES: 0.00042314
ELA: 16.245 Jacobi stage: ITER: 48767 RES: 0.00040334
ELA: 16.345 Jacobi stage: ITER: 49079 RES: 0.00038447
ELA: 16.445 Jacobi stage: ITER: 49389 RES: 0.00036648
ELA: 16.545 Jacobi stage: ITER: 49701 RES: 0.00034933
ELA: 16.645 Jacobi stage: ITER: 50011 RES: 0.00033319
ELA: 16.745 Jacobi stage: ITER: 50323 RES: 0.0003176
ELA: 16.846 Jacobi stage: ITER: 50635 RES: 0.00030274
ELA: 16.946 Jacobi stage: ITER: 50947 RES: 0.00028857
ELA: 17.046 Jacobi stage: ITER: 51259 RES: 0.00027507
ELA: 17.146 Jacobi stage: ITER: 51569 RES: 0.00026219
ELA: 17.246 Jacobi stage: ITER: 51881 RES: 0.00024993
ELA: 17.346 Jacobi stage: ITER: 52191 RES: 0.00023838
ELA: 17.446 Jacobi stage: ITER: 52503 RES: 0.00022722
ELA: 17.546 Jacobi stage: ITER: 52815 RES: 0.00021659
ELA: 17.647 Jacobi stage: ITER: 53127 RES: 0.00020646
ELA: 17.747 Jacobi stage: ITER: 53437 RES: 0.00019679
ELA: 17.847 Jacobi stage: ITER: 53749 RES: 0.00018759
ELA: 17.947 Jacobi stage: ITER: 54061 RES: 0.00017881
ELA: 18.047 Jacobi stage: ITER: 54371 RES: 0.00017055
ELA: 18.147 Jacobi stage: ITER: 54683 RES: 0.00016257
ELA: 18.247 Jacobi stage: ITER: 54995 RES: 0.00015496
ELA: 18.347 Jacobi stage: ITER: 55307 RES: 0.00014771
ELA: 18.448 Jacobi stage: ITER: 55617 RES: 0.0001408
ELA: 18.548 Jacobi stage: ITER: 55929 RES: 0.00013421
ELA: 18.648 Jacobi stage: ITER: 56239 RES: 0.00012801
ELA: 18.748 Jacobi stage: ITER: 56549 RES: 0.00012202
ELA: 18.848 Jacobi stage: ITER: 56861 RES: 0.00011631
ELA: 18.948 Jacobi stage: ITER: 57171 RES: 0.00011093
ELA: 19.048 Jacobi stage: ITER: 57483 RES: 0.00010574
ELA: 19.148 Jacobi stage: ITER: 57795 RES: 0.00010079
ELA: 19.249 Jacobi stage: ITER: 58107 RES: 9.6077e-05
ELA: 19.349 Jacobi stage: ITER: 58419 RES: 9.1581e-05
ELA: 19.449 Jacobi stage: ITER: 58729 RES: 8.7296e-05
ELA: 19.549 Jacobi stage: ITER: 59041 RES: 8.3211e-05
ELA: 19.649 Jacobi stage: ITER: 59351 RES: 7.9366e-05
ELA: 19.749 Jacobi stage: ITER: 59663 RES: 7.5652e-05
ELA: 19.849 Jacobi stage: ITER: 59975 RES: 7.2112e-05
ELA: 19.95 Jacobi stage: ITER: 60287 RES: 6.8738e-05
ELA: 20.05 Jacobi stage: ITER: 60597 RES: 6.5521e-05
ELA: 20.15 Jacobi stage: ITER: 60909 RES: 6.2455e-05
ELA: 20.25 Jacobi stage: ITER: 61219 RES: 5.9569e-05
ELA: 20.35 Jacobi stage: ITER: 61531 RES: 5.6782e-05
ELA: 20.45 Jacobi stage: ITER: 61843 RES: 5.4125e-05
ELA: 20.55 Jacobi stage: ITER: 62155 RES: 5.1592e-05
ELA: 20.651 Jacobi stage: ITER: 62467 RES: 4.9178e-05
ELA: 20.751 Jacobi stage: ITER: 62777 RES: 4.6877e-05
ELA: 20.851 Jacobi stage: ITER: 63089 RES: 4.4683e-05
ELA: 20.951 Jacobi stage: ITER: 63399 RES: 4.2618e-05
ELA: 21.051 Jacobi stage: ITER: 63711 RES: 4.0624e-05
ELA: 21.151 Jacobi stage: ITER: 64023 RES: 3.8723e-05
ELA: 21.251 Jacobi stage: ITER: 64335 RES: 3.6911e-05
ELA: 21.351 Jacobi stage: ITER: 64647 RES: 3.5184e-05
ELA: 21.452 Jacobi stage: ITER: 64957 RES: 3.3538e-05
ELA: 21.552 Jacobi stage: ITER: 65269 RES: 3.1968e-05
ELA: 21.652 Jacobi stage: ITER: 65579 RES: 3.0491e-05
ELA: 21.752 Jacobi stage: ITER: 65891 RES: 2.9064e-05
ELA: 21.852 Jacobi stage: ITER: 66203 RES: 2.7704e-05
ELA: 21.952 Jacobi stage: ITER: 66515 RES: 2.6408e-05
ELA: 22.052 Jacobi stage: ITER: 66827 RES: 2.5172e-05
ELA: 22.153 Jacobi stage: ITER: 67137 RES: 2.3994e-05
ELA: 22.253 Jacobi stage: ITER: 67449 RES: 2.2872e-05
ELA: 22.353 Jacobi stage: ITER: 67759 RES: 2.1815e-05
ELA: 22.453 Jacobi stage: ITER: 68071 RES: 2.0794e-05
ELA: 22.553 Jacobi stage: ITER: 68383 RES: 1.9821e-05
ELA: 22.653 Jacobi stage: ITER: 68695 RES: 1.8893e-05
ELA: 22.753 Jacobi stage: ITER: 69007 RES: 1.8009e-05
ELA: 22.854 Jacobi stage: ITER: 69317 RES: 1.7167e-05
ELA: 22.954 Jacobi stage: ITER: 69629 RES: 1.6363e-05
ELA: 23.054 Jacobi stage: ITER: 69939 RES: 1.5607e-05
ELA: 23.154 Jacobi stage: ITER: 70251 RES: 1.4877e-05
ELA: 23.254 Jacobi stage: ITER: 70563 RES: 1.4181e-05
ELA: 23.354 Jacobi stage: ITER: 70875 RES: 1.3517e-05
ELA: 23.454 Jacobi stage: ITER: 71185 RES: 1.2885e-05
ELA: 23.554 Jacobi stage: ITER: 71497 RES: 1.2282e-05
ELA: 23.655 Jacobi stage: ITER: 71809 RES: 1.1707e-05
ELA: 23.755 Jacobi stage: ITER: 72119 RES: 1.1166e-05
ELA: 23.855 Jacobi stage: ITER: 72431 RES: 1.0644e-05
ELA: 23.955 Jacobi stage: ITER: 72743 RES: 1.0146e-05
ELA: 24.055 Jacobi stage: ITER: 73055 RES: 9.6708e-06
ELA: 24.155 Jacobi stage: ITER: 73365 RES: 9.2183e-06
ELA: 24.255 Jacobi stage: ITER: 73677 RES: 8.7869e-06
ELA: 24.355 Jacobi stage: ITER: 73987 RES: 8.3809e-06
ELA: 24.455 Jacobi stage: ITER: 74299 RES: 7.9887e-06
ELA: 24.555 Jacobi stage: ITER: 74611 RES: 7.6149e-06
ELA: 24.655 Jacobi stage: ITER: 74921 RES: 7.2586e-06
ELA: 24.756 Jacobi stage: ITER: 75231 RES: 6.9232e-06
ELA: 24.856 Jacobi stage: ITER: 75543 RES: 6.5992e-06
ELA: 24.956 Jacobi stage: ITER: 75855 RES: 6.2904e-06
ELA: 25.056 Jacobi stage: ITER: 76167 RES: 5.9961e-06
ELA: 25.156 Jacobi stage: ITER: 76477 RES: 5.7155e-06
ELA: 25.256 Jacobi stage: ITER: 76787 RES: 5.4514e-06
ELA: 25.356 Jacobi stage: ITER: 77099 RES: 5.1963e-06
ELA: 25.456 Jacobi stage: ITER: 77411 RES: 4.9531e-06
ELA: 25.556 Jacobi stage: ITER: 77723 RES: 4.7214e-06
ELA: 25.656 Jacobi stage: ITER: 78033 RES: 4.5004e-06
ELA: 25.756 Jacobi stage: ITER: 78345 RES: 4.2898e-06
ELA: 25.856 Jacobi stage: ITER: 78655 RES: 4.0916e-06
ELA: 25.957 Jacobi stage: ITER: 79015 RES: 3.8715e-06
ELA: 26.057 Jacobi stage: ITER: 79487 RES: 3.6008e-06
ELA: 26.157 Jacobi stage: ITER: 79955 RES: 3.351e-06
ELA: 26.257 Jacobi stage: ITER: 80423 RES: 3.1186e-06
ELA: 26.357 Jacobi stage: ITER: 80891 RES: 2.9023e-06
ELA: 26.457 Jacobi stage: ITER: 81359 RES: 2.7009e-06
ELA: 26.557 Jacobi stage: ITER: 81829 RES: 2.5121e-06
ELA: 26.658 Jacobi stage: ITER: 82297 RES: 2.3378e-06
ELA: 26.758 Jacobi stage: ITER: 82765 RES: 2.1757e-06
ELA: 26.858 Jacobi stage: ITER: 83235 RES: 2.0247e-06
ELA: 26.958 Jacobi stage: ITER: 83703 RES: 1.8843e-06
ELA: 27.058 Jacobi stage: ITER: 84183 RES: 1.7504e-06
ELA: 27.158 Jacobi stage: ITER: 84651 RES: 1.629e-06
ELA: 27.258 Jacobi stage: ITER: 85119 RES: 1.516e-06
ELA: 27.359 Jacobi stage: ITER: 85587 RES: 1.4108e-06
ELA: 27.459 Jacobi stage: ITER: 86057 RES: 1.3122e-06
ELA: 27.559 Jacobi stage: ITER: 86525 RES: 1.2211e-06
ELA: 27.659 Jacobi stage: ITER: 86993 RES: 1.1364e-06
ELA: 27.759 Jacobi stage: ITER: 87463 RES: 1.0576e-06
Vector x = [ 0.999999, 0.999999, 0.999998, 0.999999, 0.999999 ]