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__
Definition Macros.h:49
Vector extends Array with algebraic operations.
Definition Vector.h:36
Implementation of sparse matrix, i.e. matrix storing only non-zero elements.
Definition SparseMatrix.h:55
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: 32915 RES: 0.004604
Jacobi stage: ITER: 65253 RES: 3.2047e-05
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: 5175 RES: 0.32975
Jacobi stage: ITER: 5503 RES: 0.31288
Jacobi stage: ITER: 5757 RES: 0.30041
Jacobi stage: ITER: 6009 RES: 0.28868
Jacobi stage: ITER: 6261 RES: 0.27746
Jacobi stage: ITER: 6513 RES: 0.26671
Jacobi stage: ITER: 6767 RES: 0.25641
Jacobi stage: ITER: 7019 RES: 0.24654
Jacobi stage: ITER: 7271 RES: 0.23707
Jacobi stage: ITER: 7523 RES: 0.22798
Jacobi stage: ITER: 7777 RES: 0.21911
Jacobi stage: ITER: 8031 RES: 0.21074
Jacobi stage: ITER: 8235 RES: 0.2042
Jacobi stage: ITER: 8451 RES: 0.1975
Jacobi stage: ITER: 8603 RES: 0.19292
Jacobi stage: ITER: 8753 RES: 0.18845
Jacobi stage: ITER: 8883 RES: 0.18477
Jacobi stage: ITER: 9035 RES: 0.18049
Jacobi stage: ITER: 9167 RES: 0.17685
Jacobi stage: ITER: 9315 RES: 0.17287
Jacobi stage: ITER: 9467 RES: 0.16887
Jacobi stage: ITER: 9597 RES: 0.16547
Jacobi stage: ITER: 9749 RES: 0.16164
Jacobi stage: ITER: 9879 RES: 0.15849
Jacobi stage: ITER: 10029 RES: 0.15483
Jacobi stage: ITER: 10183 RES: 0.15125
Jacobi stage: ITER: 10311 RES: 0.1483
Jacobi stage: ITER: 10463 RES: 0.14487
Jacobi stage: ITER: 10581 RES: 0.14222
Jacobi stage: ITER: 10813 RES: 0.13724
Jacobi stage: ITER: 11017 RES: 0.133
Jacobi stage: ITER: 11267 RES: 0.12803
Jacobi stage: ITER: 11511 RES: 0.12332
Jacobi stage: ITER: 11761 RES: 0.11863
Jacobi stage: ITER: 12003 RES: 0.11434
Jacobi stage: ITER: 12217 RES: 0.1106
Jacobi stage: ITER: 12421 RES: 0.10719
Jacobi stage: ITER: 12661 RES: 0.10331
Jacobi stage: ITER: 12875 RES: 0.099998
Jacobi stage: ITER: 13121 RES: 0.09626
Jacobi stage: ITER: 13375 RES: 0.092604
Jacobi stage: ITER: 13593 RES: 0.089527
Jacobi stage: ITER: 13775 RES: 0.087085
Jacobi stage: ITER: 14017 RES: 0.083881
Jacobi stage: ITER: 14269 RES: 0.080696
Jacobi stage: ITER: 14489 RES: 0.078015
Jacobi stage: ITER: 14739 RES: 0.075099
Jacobi stage: ITER: 14975 RES: 0.072425
Jacobi stage: ITER: 15183 RES: 0.070147
Jacobi stage: ITER: 15393 RES: 0.0679
Jacobi stage: ITER: 15639 RES: 0.065402
Jacobi stage: ITER: 15893 RES: 0.06288
Jacobi stage: ITER: 16115 RES: 0.060791
Jacobi stage: ITER: 16367 RES: 0.058483
Jacobi stage: ITER: 16597 RES: 0.056435
Jacobi stage: ITER: 16815 RES: 0.054593
Jacobi stage: ITER: 17023 RES: 0.052877
Jacobi stage: ITER: 17271 RES: 0.0509
Jacobi stage: ITER: 17521 RES: 0.048968
Jacobi stage: ITER: 17715 RES: 0.047545
Jacobi stage: ITER: 17951 RES: 0.045852
Jacobi stage: ITER: 18199 RES: 0.044138
Jacobi stage: ITER: 18453 RES: 0.042436
Jacobi stage: ITER: 18709 RES: 0.0408
Jacobi stage: ITER: 18943 RES: 0.039372
Jacobi stage: ITER: 19131 RES: 0.038251
Jacobi stage: ITER: 19365 RES: 0.036889
Jacobi stage: ITER: 19565 RES: 0.035773
Jacobi stage: ITER: 19787 RES: 0.034585
Jacobi stage: ITER: 20027 RES: 0.033333
Jacobi stage: ITER: 20275 RES: 0.032087
Jacobi stage: ITER: 20507 RES: 0.030964
Jacobi stage: ITER: 20719 RES: 0.029972
Jacobi stage: ITER: 20939 RES: 0.028976
Jacobi stage: ITER: 21191 RES: 0.027876
Jacobi stage: ITER: 21445 RES: 0.026801
Jacobi stage: ITER: 21697 RES: 0.025783
Jacobi stage: ITER: 21951 RES: 0.024804
Jacobi stage: ITER: 22203 RES: 0.023862
Jacobi stage: ITER: 22455 RES: 0.022956
Jacobi stage: ITER: 22707 RES: 0.022085
Jacobi stage: ITER: 22959 RES: 0.021246
Jacobi stage: ITER: 23211 RES: 0.02044
Jacobi stage: ITER: 23463 RES: 0.019664
Jacobi stage: ITER: 23717 RES: 0.018905
Jacobi stage: ITER: 23969 RES: 0.018188
Jacobi stage: ITER: 24221 RES: 0.017497
Jacobi stage: ITER: 24475 RES: 0.016833
Jacobi stage: ITER: 24727 RES: 0.016194
Jacobi stage: ITER: 24979 RES: 0.015579
Jacobi stage: ITER: 25231 RES: 0.014987
Jacobi stage: ITER: 25483 RES: 0.014418
Jacobi stage: ITER: 25735 RES: 0.013871
Jacobi stage: ITER: 25987 RES: 0.013344
Jacobi stage: ITER: 26239 RES: 0.012837
Jacobi stage: ITER: 26491 RES: 0.01235
Jacobi stage: ITER: 26745 RES: 0.011874
Jacobi stage: ITER: 26997 RES: 0.011423
Jacobi stage: ITER: 27249 RES: 0.010989
Jacobi stage: ITER: 27503 RES: 0.010572
Jacobi stage: ITER: 27755 RES: 0.010171
Jacobi stage: ITER: 28007 RES: 0.0097845
Jacobi stage: ITER: 28259 RES: 0.009413
Jacobi stage: ITER: 28511 RES: 0.0090556
Jacobi stage: ITER: 28763 RES: 0.0087118
Jacobi stage: ITER: 29015 RES: 0.008381
Jacobi stage: ITER: 29269 RES: 0.0080579
Jacobi stage: ITER: 29521 RES: 0.0077519
Jacobi stage: ITER: 29773 RES: 0.0074576
Jacobi stage: ITER: 30025 RES: 0.0071744
Jacobi stage: ITER: 30279 RES: 0.006902
Jacobi stage: ITER: 30531 RES: 0.00664
Jacobi stage: ITER: 30783 RES: 0.0063879
Jacobi stage: ITER: 31035 RES: 0.0061453
Jacobi stage: ITER: 31287 RES: 0.005912
Jacobi stage: ITER: 31539 RES: 0.0056876
Jacobi stage: ITER: 31793 RES: 0.0054682
Jacobi stage: ITER: 32045 RES: 0.0052606
Jacobi stage: ITER: 32299 RES: 0.0050609
Jacobi stage: ITER: 32551 RES: 0.0048687
Jacobi stage: ITER: 32803 RES: 0.0046839
Jacobi stage: ITER: 33055 RES: 0.004506
Jacobi stage: ITER: 33307 RES: 0.004335
Jacobi stage: ITER: 33561 RES: 0.0041678
Jacobi stage: ITER: 33813 RES: 0.0040096
Jacobi stage: ITER: 34065 RES: 0.0038573
Jacobi stage: ITER: 34319 RES: 0.0037109
Jacobi stage: ITER: 34571 RES: 0.00357
Jacobi stage: ITER: 34823 RES: 0.0034344
Jacobi stage: ITER: 35075 RES: 0.003304
Jacobi stage: ITER: 35329 RES: 0.0031766
Jacobi stage: ITER: 35581 RES: 0.003056
Jacobi stage: ITER: 35833 RES: 0.00294
Jacobi stage: ITER: 36087 RES: 0.0028284
Jacobi stage: ITER: 36339 RES: 0.002721
Jacobi stage: ITER: 36591 RES: 0.0026177
Jacobi stage: ITER: 36843 RES: 0.0025183
Jacobi stage: ITER: 37095 RES: 0.0024227
Jacobi stage: ITER: 37349 RES: 0.0023293
Jacobi stage: ITER: 37601 RES: 0.0022408
Jacobi stage: ITER: 37855 RES: 0.0021557
Jacobi stage: ITER: 38107 RES: 0.0020739
Jacobi stage: ITER: 38359 RES: 0.0019951
Jacobi stage: ITER: 38611 RES: 0.0019194
Jacobi stage: ITER: 38863 RES: 0.0018465
Jacobi stage: ITER: 39117 RES: 0.0017753
Jacobi stage: ITER: 39369 RES: 0.0017079
Jacobi stage: ITER: 39623 RES: 0.0016431
Jacobi stage: ITER: 39875 RES: 0.0015807
Jacobi stage: ITER: 40127 RES: 0.0015207
Jacobi stage: ITER: 40379 RES: 0.0014629
Jacobi stage: ITER: 40631 RES: 0.0014074
Jacobi stage: ITER: 40885 RES: 0.0013531
Jacobi stage: ITER: 41137 RES: 0.0013017
Jacobi stage: ITER: 41389 RES: 0.0012523
Jacobi stage: ITER: 41643 RES: 0.0012048
Jacobi stage: ITER: 41895 RES: 0.001159
Jacobi stage: ITER: 42147 RES: 0.001115
Jacobi stage: ITER: 42399 RES: 0.0010727
Jacobi stage: ITER: 42651 RES: 0.001032
Jacobi stage: ITER: 42905 RES: 0.00099217
Jacobi stage: ITER: 43157 RES: 0.0009545
Jacobi stage: ITER: 43409 RES: 0.00091826
Jacobi stage: ITER: 43663 RES: 0.00088339
Jacobi stage: ITER: 43915 RES: 0.00084985
Jacobi stage: ITER: 44167 RES: 0.00081758
Jacobi stage: ITER: 44419 RES: 0.00078654
Jacobi stage: ITER: 44671 RES: 0.00075668
Jacobi stage: ITER: 44925 RES: 0.0007275
Jacobi stage: ITER: 45177 RES: 0.00069988
Jacobi stage: ITER: 45431 RES: 0.00067331
Jacobi stage: ITER: 45683 RES: 0.00064774
Jacobi stage: ITER: 45935 RES: 0.00062315
Jacobi stage: ITER: 46187 RES: 0.00059949
Jacobi stage: ITER: 46439 RES: 0.00057673
Jacobi stage: ITER: 46691 RES: 0.00055483
Jacobi stage: ITER: 46945 RES: 0.00053344
Jacobi stage: ITER: 47197 RES: 0.00051318
Jacobi stage: ITER: 47451 RES: 0.0004937
Jacobi stage: ITER: 47703 RES: 0.00047495
Jacobi stage: ITER: 47955 RES: 0.00045692
Jacobi stage: ITER: 48207 RES: 0.00043957
Jacobi stage: ITER: 48459 RES: 0.00042288
Jacobi stage: ITER: 48713 RES: 0.00040658
Jacobi stage: ITER: 48965 RES: 0.00039114
Jacobi stage: ITER: 49219 RES: 0.00037629
Jacobi stage: ITER: 49471 RES: 0.000362
Jacobi stage: ITER: 49723 RES: 0.00034826
Jacobi stage: ITER: 49975 RES: 0.00033504
Jacobi stage: ITER: 50227 RES: 0.00032231
Jacobi stage: ITER: 50481 RES: 0.00030989
Jacobi stage: ITER: 50733 RES: 0.00029812
Jacobi stage: ITER: 50985 RES: 0.0002868
Jacobi stage: ITER: 51239 RES: 0.00027591
Jacobi stage: ITER: 51491 RES: 0.00026544
Jacobi stage: ITER: 51743 RES: 0.00025536
Jacobi stage: ITER: 51995 RES: 0.00024566
Jacobi stage: ITER: 52247 RES: 0.00023634
Jacobi stage: ITER: 52501 RES: 0.00022722
Jacobi stage: ITER: 52753 RES: 0.0002186
Jacobi stage: ITER: 53005 RES: 0.0002103
Jacobi stage: ITER: 53259 RES: 0.00020231
Jacobi stage: ITER: 53511 RES: 0.00019463
Jacobi stage: ITER: 53763 RES: 0.00018724
Jacobi stage: ITER: 54015 RES: 0.00018013
Jacobi stage: ITER: 54267 RES: 0.00017329
Jacobi stage: ITER: 54521 RES: 0.00016661
Jacobi stage: ITER: 54773 RES: 0.00016028
Jacobi stage: ITER: 55025 RES: 0.0001542
Jacobi stage: ITER: 55279 RES: 0.00014834
Jacobi stage: ITER: 55531 RES: 0.00014271
Jacobi stage: ITER: 55783 RES: 0.00013729
Jacobi stage: ITER: 56035 RES: 0.00013208
Jacobi stage: ITER: 56287 RES: 0.00012707
Jacobi stage: ITER: 56541 RES: 0.00012217
Jacobi stage: ITER: 56793 RES: 0.00011753
Jacobi stage: ITER: 57047 RES: 0.00011307
Jacobi stage: ITER: 57299 RES: 0.00010877
Jacobi stage: ITER: 57551 RES: 0.00010464
Jacobi stage: ITER: 57803 RES: 0.00010067
Jacobi stage: ITER: 58055 RES: 9.6847e-05
Jacobi stage: ITER: 58307 RES: 9.317e-05
Jacobi stage: ITER: 58561 RES: 8.9578e-05
Jacobi stage: ITER: 58813 RES: 8.6176e-05
Jacobi stage: ITER: 59067 RES: 8.2905e-05
Jacobi stage: ITER: 59319 RES: 7.9757e-05
Jacobi stage: ITER: 59571 RES: 7.6729e-05
Jacobi stage: ITER: 59823 RES: 7.3815e-05
Jacobi stage: ITER: 60075 RES: 7.1013e-05
Jacobi stage: ITER: 60327 RES: 6.8317e-05
Jacobi stage: ITER: 60581 RES: 6.5682e-05
Jacobi stage: ITER: 60833 RES: 6.3188e-05
Jacobi stage: ITER: 61087 RES: 6.0789e-05
Jacobi stage: ITER: 61339 RES: 5.8481e-05
Jacobi stage: ITER: 61591 RES: 5.6261e-05
Jacobi stage: ITER: 61843 RES: 5.4125e-05
Jacobi stage: ITER: 62095 RES: 5.207e-05
Jacobi stage: ITER: 62347 RES: 5.0093e-05
Jacobi stage: ITER: 62601 RES: 4.8161e-05
Jacobi stage: ITER: 62853 RES: 4.6333e-05
Jacobi stage: ITER: 63105 RES: 4.4573e-05
Jacobi stage: ITER: 63357 RES: 4.2881e-05
Jacobi stage: ITER: 63609 RES: 4.1253e-05
Jacobi stage: ITER: 63863 RES: 3.9687e-05
Jacobi stage: ITER: 64115 RES: 3.818e-05
Jacobi stage: ITER: 64367 RES: 3.673e-05
Jacobi stage: ITER: 64619 RES: 3.5336e-05
Jacobi stage: ITER: 64871 RES: 3.3994e-05
Jacobi stage: ITER: 65125 RES: 3.2683e-05
Jacobi stage: ITER: 65377 RES: 3.1442e-05
Jacobi stage: ITER: 65631 RES: 3.0249e-05
Jacobi stage: ITER: 65883 RES: 2.91e-05
Jacobi stage: ITER: 66135 RES: 2.7995e-05
Jacobi stage: ITER: 66387 RES: 2.6932e-05
Jacobi stage: ITER: 66639 RES: 2.591e-05
Jacobi stage: ITER: 66891 RES: 2.4926e-05
Jacobi stage: ITER: 67145 RES: 2.3965e-05
Jacobi stage: ITER: 67397 RES: 2.3055e-05
Jacobi stage: ITER: 67651 RES: 2.218e-05
Jacobi stage: ITER: 67903 RES: 2.1337e-05
Jacobi stage: ITER: 68155 RES: 2.0527e-05
Jacobi stage: ITER: 68407 RES: 1.9748e-05
Jacobi stage: ITER: 68659 RES: 1.8998e-05
Jacobi stage: ITER: 68911 RES: 1.8277e-05
Jacobi stage: ITER: 69165 RES: 1.7572e-05
Jacobi stage: ITER: 69417 RES: 1.6905e-05
Jacobi stage: ITER: 69671 RES: 1.6263e-05
Jacobi stage: ITER: 69923 RES: 1.5646e-05
Jacobi stage: ITER: 70175 RES: 1.5052e-05
Jacobi stage: ITER: 70427 RES: 1.448e-05
Jacobi stage: ITER: 70679 RES: 1.393e-05
Jacobi stage: ITER: 70933 RES: 1.3393e-05
Jacobi stage: ITER: 71185 RES: 1.2885e-05
Jacobi stage: ITER: 71437 RES: 1.2395e-05
Jacobi stage: ITER: 71691 RES: 1.1925e-05
Jacobi stage: ITER: 71943 RES: 1.1472e-05
Jacobi stage: ITER: 72195 RES: 1.1036e-05
Jacobi stage: ITER: 72447 RES: 1.0617e-05
Jacobi stage: ITER: 72699 RES: 1.0214e-05
Jacobi stage: ITER: 72953 RES: 9.8205e-06
Jacobi stage: ITER: 73205 RES: 9.4476e-06
Jacobi stage: ITER: 73459 RES: 9.0889e-06
Jacobi stage: ITER: 73711 RES: 8.7438e-06
Jacobi stage: ITER: 73963 RES: 8.4118e-06
Jacobi stage: ITER: 74215 RES: 8.0925e-06
Jacobi stage: ITER: 74467 RES: 7.7852e-06
Jacobi stage: ITER: 74719 RES: 7.4896e-06
Jacobi stage: ITER: 74973 RES: 7.2008e-06
Jacobi stage: ITER: 75225 RES: 6.9274e-06
Jacobi stage: ITER: 75477 RES: 6.6644e-06
Jacobi stage: ITER: 75731 RES: 6.4114e-06
Jacobi stage: ITER: 75983 RES: 6.1679e-06
Jacobi stage: ITER: 76235 RES: 5.9338e-06
Jacobi stage: ITER: 76487 RES: 5.7085e-06
Jacobi stage: ITER: 76739 RES: 5.4917e-06
Jacobi stage: ITER: 76993 RES: 5.28e-06
Jacobi stage: ITER: 77245 RES: 5.0795e-06
Jacobi stage: ITER: 77497 RES: 4.8866e-06
Jacobi stage: ITER: 77751 RES: 4.7011e-06
Jacobi stage: ITER: 78003 RES: 4.5226e-06
Jacobi stage: ITER: 78255 RES: 4.3509e-06
Jacobi stage: ITER: 78507 RES: 4.1857e-06
Jacobi stage: ITER: 78759 RES: 4.0268e-06
Jacobi stage: ITER: 79011 RES: 3.8739e-06
Jacobi stage: ITER: 79265 RES: 3.7245e-06
Jacobi stage: ITER: 79517 RES: 3.5831e-06
Jacobi stage: ITER: 79771 RES: 3.4471e-06
Jacobi stage: ITER: 80023 RES: 3.3162e-06
Jacobi stage: ITER: 80275 RES: 3.1903e-06
Jacobi stage: ITER: 80527 RES: 3.0691e-06
Jacobi stage: ITER: 80779 RES: 2.9526e-06
Jacobi stage: ITER: 81031 RES: 2.8405e-06
Jacobi stage: ITER: 81285 RES: 2.731e-06
Jacobi stage: ITER: 81537 RES: 2.6273e-06
Jacobi stage: ITER: 81789 RES: 2.5275e-06
Jacobi stage: ITER: 82043 RES: 2.4316e-06
Jacobi stage: ITER: 82295 RES: 2.3393e-06
Jacobi stage: ITER: 82547 RES: 2.2504e-06
Jacobi stage: ITER: 82799 RES: 2.165e-06
Jacobi stage: ITER: 83051 RES: 2.0828e-06
Jacobi stage: ITER: 83305 RES: 2.0025e-06
Jacobi stage: ITER: 83557 RES: 1.9264e-06
Jacobi stage: ITER: 83809 RES: 1.8533e-06
Jacobi stage: ITER: 84063 RES: 1.7829e-06
Jacobi stage: ITER: 84315 RES: 1.7152e-06
Jacobi stage: ITER: 84567 RES: 1.6501e-06
Jacobi stage: ITER: 84819 RES: 1.5875e-06
Jacobi stage: ITER: 85071 RES: 1.5272e-06
Jacobi stage: ITER: 85323 RES: 1.4692e-06
Jacobi stage: ITER: 85577 RES: 1.4126e-06
Jacobi stage: ITER: 85829 RES: 1.3589e-06
Jacobi stage: ITER: 86079 RES: 1.3081e-06
Jacobi stage: ITER: 86331 RES: 1.2585e-06
Jacobi stage: ITER: 86581 RES: 1.2107e-06
Jacobi stage: ITER: 86831 RES: 1.1654e-06
Jacobi stage: ITER: 87083 RES: 1.1212e-06
Jacobi stage: ITER: 87333 RES: 1.0786e-06
Jacobi stage: ITER: 87583 RES: 1.0383e-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.7896e-
ELA: 0.10017 Jacobi stage: ITER: 29447 RES: 0.0078429
ELA: 0.20028 Jacobi stage: ITER: 60871 RES: 6.2801e-05
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.2417e-
ELA: 0.10012 Jacobi stage: ITER: 351 RES: 0.89113
ELA: 0.20022 Jacobi stage: ITER: 603 RES: 0.82525
ELA: 0.30031 Jacobi stage: ITER: 855 RES: 0.76808
ELA: 0.40041 Jacobi stage: ITER: 1107 RES: 0.71808
ELA: 0.50051 Jacobi stage: ITER: 1359 RES: 0.67401
ELA: 0.60062 Jacobi stage: ITER: 1611 RES: 0.63486
ELA: 0.70073 Jacobi stage: ITER: 1863 RES: 0.59981
ELA: 0.80084 Jacobi stage: ITER: 2117 RES: 0.56773
ELA: 0.90094 Jacobi stage: ITER: 2369 RES: 0.53907
ELA: 1.001 Jacobi stage: ITER: 2623 RES: 0.51287
ELA: 1.1011 Jacobi stage: ITER: 2877 RES: 0.4884
ELA: 1.2012 Jacobi stage: ITER: 3091 RES: 0.46956
ELA: 1.3013 Jacobi stage: ITER: 3315 RES: 0.45088
ELA: 1.4014 Jacobi stage: ITER: 3467 RES: 0.43884
ELA: 1.5015 Jacobi stage: ITER: 3619 RES: 0.42728
ELA: 1.6016 Jacobi stage: ITER: 3749 RES: 0.4176
ELA: 1.7017 Jacobi stage: ITER: 3901 RES: 0.40684
ELA: 1.8018 Jacobi stage: ITER: 4033 RES: 0.3978
ELA: 1.9019 Jacobi stage: ITER: 4181 RES: 0.388
ELA: 2.002 Jacobi stage: ITER: 4333 RES: 0.37826
ELA: 2.1021 Jacobi stage: ITER: 4463 RES: 0.37032
ELA: 2.2022 Jacobi stage: ITER: 4615 RES: 0.36115
ELA: 2.3023 Jacobi stage: ITER: 4747 RES: 0.35343
ELA: 2.4024 Jacobi stage: ITER: 4895 RES: 0.34501
ELA: 2.5025 Jacobi stage: ITER: 5047 RES: 0.33663
ELA: 2.6026 Jacobi stage: ITER: 5175 RES: 0.32975
ELA: 2.7027 Jacobi stage: ITER: 5329 RES: 0.3216
ELA: 2.8028 Jacobi stage: ITER: 5467 RES: 0.31468
ELA: 2.9029 Jacobi stage: ITER: 5665 RES: 0.30483
ELA: 3.003 Jacobi stage: ITER: 5871 RES: 0.29513
ELA: 3.1031 Jacobi stage: ITER: 6123 RES: 0.28363
ELA: 3.2032 Jacobi stage: ITER: 6369 RES: 0.2728
ELA: 3.3033 Jacobi stage: ITER: 6621 RES: 0.26225
ELA: 3.4034 Jacobi stage: ITER: 6879 RES: 0.25198
ELA: 3.5035 Jacobi stage: ITER: 7105 RES: 0.24319
ELA: 3.6036 Jacobi stage: ITER: 7283 RES: 0.23663
ELA: 3.7037 Jacobi stage: ITER: 7527 RES: 0.22784
ELA: 3.8038 Jacobi stage: ITER: 7743 RES: 0.22034
ELA: 3.9039 Jacobi stage: ITER: 7989 RES: 0.21204
ELA: 4.004 Jacobi stage: ITER: 8243 RES: 0.20394
ELA: 4.1041 Jacobi stage: ITER: 8461 RES: 0.19713
ELA: 4.2042 Jacobi stage: ITER: 8649 RES: 0.1915
ELA: 4.3043 Jacobi stage: ITER: 8893 RES: 0.18442
ELA: 4.4044 Jacobi stage: ITER: 9145 RES: 0.1774
ELA: 4.5045 Jacobi stage: ITER: 9369 RES: 0.17138
ELA: 4.6046 Jacobi stage: ITER: 9621 RES: 0.16486
ELA: 4.7047 Jacobi stage: ITER: 9877 RES: 0.15849
ELA: 4.8048 Jacobi stage: ITER: 10065 RES: 0.15397
ELA: 4.9049 Jacobi stage: ITER: 10275 RES: 0.14912
ELA: 5.005 Jacobi stage: ITER: 10525 RES: 0.14345
ELA: 5.1051 Jacobi stage: ITER: 10779 RES: 0.138
ELA: 5.2052 Jacobi stage: ITER: 11003 RES: 0.13333
ELA: 5.3053 Jacobi stage: ITER: 11255 RES: 0.12826
ELA: 5.4054 Jacobi stage: ITER: 11513 RES: 0.12324
ELA: 5.5055 Jacobi stage: ITER: 11707 RES: 0.11966
ELA: 5.6056 Jacobi stage: ITER: 11915 RES: 0.11589
ELA: 5.7057 Jacobi stage: ITER: 12167 RES: 0.11149
ELA: 5.8058 Jacobi stage: ITER: 12419 RES: 0.10726
ELA: 5.9059 Jacobi stage: ITER: 12641 RES: 0.10363
ELA: 6.006 Jacobi stage: ITER: 12851 RES: 0.10037
ELA: 6.106 Jacobi stage: ITER: 13103 RES: 0.096556
ELA: 6.2062 Jacobi stage: ITER: 13359 RES: 0.092832
ELA: 6.3062 Jacobi stage: ITER: 13615 RES: 0.089252
ELA: 6.4064 Jacobi stage: ITER: 13871 RES: 0.08581
ELA: 6.5065 Jacobi stage: ITER: 14037 RES: 0.083624
ELA: 6.6066 Jacobi stage: ITER: 14273 RES: 0.080647
ELA: 6.7067 Jacobi stage: ITER: 14475 RES: 0.078207
ELA: 6.8068 Jacobi stage: ITER: 14697 RES: 0.075561
ELA: 6.9069 Jacobi stage: ITER: 14939 RES: 0.072826
ELA: 7.007 Jacobi stage: ITER: 15191 RES: 0.070061
ELA: 7.107 Jacobi stage: ITER: 15423 RES: 0.067608
ELA: 7.2071 Jacobi stage: ITER: 15637 RES: 0.065402
ELA: 7.3072 Jacobi stage: ITER: 15861 RES: 0.06319
ELA: 7.4074 Jacobi stage: ITER: 16113 RES: 0.060791
ELA: 7.5075 Jacobi stage: ITER: 16365 RES: 0.058483
ELA: 7.6075 Jacobi stage: ITER: 16619 RES: 0.056262
ELA: 7.7077 Jacobi stage: ITER: 16871 RES: 0.054126
ELA: 7.8078 Jacobi stage: ITER: 17123 RES: 0.052071
ELA: 7.9079 Jacobi stage: ITER: 17375 RES: 0.050094
ELA: 8.008 Jacobi stage: ITER: 17627 RES: 0.048192
ELA: 8.1081 Jacobi stage: ITER: 17879 RES: 0.046362
ELA: 8.2082 Jacobi stage: ITER: 18133 RES: 0.044574
ELA: 8.3083 Jacobi stage: ITER: 18385 RES: 0.042882
ELA: 8.4084 Jacobi stage: ITER: 18637 RES: 0.041254
ELA: 8.5085 Jacobi stage: ITER: 18891 RES: 0.039687
ELA: 8.6086 Jacobi stage: ITER: 19143 RES: 0.038181
ELA: 8.7087 Jacobi stage: ITER: 19395 RES: 0.036731
ELA: 8.8088 Jacobi stage: ITER: 19647 RES: 0.035336
ELA: 8.9089 Jacobi stage: ITER: 19899 RES: 0.033995
ELA: 9.0091 Jacobi stage: ITER: 20151 RES: 0.032704
ELA: 9.1092 Jacobi stage: ITER: 20403 RES: 0.031462
ELA: 9.2093 Jacobi stage: ITER: 20655 RES: 0.030268
ELA: 9.3094 Jacobi stage: ITER: 20909 RES: 0.029101
ELA: 9.4095 Jacobi stage: ITER: 21161 RES: 0.027996
ELA: 9.5096 Jacobi stage: ITER: 21415 RES: 0.026933
ELA: 9.6097 Jacobi stage: ITER: 21667 RES: 0.02591
ELA: 9.7097 Jacobi stage: ITER: 21919 RES: 0.024926
ELA: 9.8098 Jacobi stage: ITER: 22171 RES: 0.02398
ELA: 9.9099 Jacobi stage: ITER: 22423 RES: 0.02307
ELA: 10.01 Jacobi stage: ITER: 22675 RES: 0.022194
ELA: 10.11 Jacobi stage: ITER: 22929 RES: 0.021338
ELA: 10.21 Jacobi stage: ITER: 23181 RES: 0.020528
ELA: 10.31 Jacobi stage: ITER: 23435 RES: 0.019748
ELA: 10.411 Jacobi stage: ITER: 23687 RES: 0.018999
ELA: 10.511 Jacobi stage: ITER: 23939 RES: 0.018277
ELA: 10.611 Jacobi stage: ITER: 24191 RES: 0.017583
ELA: 10.711 Jacobi stage: ITER: 24443 RES: 0.016916
ELA: 10.811 Jacobi stage: ITER: 24695 RES: 0.016273
ELA: 10.911 Jacobi stage: ITER: 24949 RES: 0.015646
ELA: 11.011 Jacobi stage: ITER: 25201 RES: 0.015052
ELA: 11.111 Jacobi stage: ITER: 25455 RES: 0.01448
ELA: 11.212 Jacobi stage: ITER: 25707 RES: 0.013931
ELA: 11.312 Jacobi stage: ITER: 25959 RES: 0.013402
ELA: 11.412 Jacobi stage: ITER: 26211 RES: 0.012893
ELA: 11.512 Jacobi stage: ITER: 26463 RES: 0.012403
ELA: 11.612 Jacobi stage: ITER: 26715 RES: 0.011932
ELA: 11.712 Jacobi stage: ITER: 26969 RES: 0.011472
ELA: 11.812 Jacobi stage: ITER: 27221 RES: 0.011037
ELA: 11.912 Jacobi stage: ITER: 27475 RES: 0.010618
ELA: 12.013 Jacobi stage: ITER: 27727 RES: 0.010215
ELA: 12.113 Jacobi stage: ITER: 27979 RES: 0.0098267
ELA: 12.213 Jacobi stage: ITER: 28231 RES: 0.0094536
ELA: 12.313 Jacobi stage: ITER: 28483 RES: 0.0090947
ELA: 12.413 Jacobi stage: ITER: 28737 RES: 0.008744
ELA: 12.513 Jacobi stage: ITER: 28989 RES: 0.008412
ELA: 12.613 Jacobi stage: ITER: 29241 RES: 0.0080926
ELA: 12.713 Jacobi stage: ITER: 29495 RES: 0.0077853
ELA: 12.814 Jacobi stage: ITER: 29747 RES: 0.0074897
ELA: 12.914 Jacobi stage: ITER: 29999 RES: 0.0072054
ELA: 13.014 Jacobi stage: ITER: 30251 RES: 0.0069318
ELA: 13.114 Jacobi stage: ITER: 30505 RES: 0.0066645
ELA: 13.214 Jacobi stage: ITER: 30757 RES: 0.0064115
ELA: 13.314 Jacobi stage: ITER: 31009 RES: 0.006168
ELA: 13.414 Jacobi stage: ITER: 31263 RES: 0.0059339
ELA: 13.515 Jacobi stage: ITER: 31515 RES: 0.0057086
ELA: 13.615 Jacobi stage: ITER: 31767 RES: 0.0054918
ELA: 13.715 Jacobi stage: ITER: 32019 RES: 0.0052833
ELA: 13.815 Jacobi stage: ITER: 32271 RES: 0.0050827
ELA: 13.915 Jacobi stage: ITER: 32525 RES: 0.0048867
ELA: 14.015 Jacobi stage: ITER: 32777 RES: 0.0047012
ELA: 14.115 Jacobi stage: ITER: 33031 RES: 0.0045227
ELA: 14.215 Jacobi stage: ITER: 33283 RES: 0.004351
ELA: 14.316 Jacobi stage: ITER: 33535 RES: 0.0041858
ELA: 14.416 Jacobi stage: ITER: 33787 RES: 0.0040268
ELA: 14.516 Jacobi stage: ITER: 34039 RES: 0.003874
ELA: 14.616 Jacobi stage: ITER: 34293 RES: 0.0037246
ELA: 14.716 Jacobi stage: ITER: 34545 RES: 0.0035832
ELA: 14.816 Jacobi stage: ITER: 34799 RES: 0.0034471
ELA: 14.916 Jacobi stage: ITER: 35051 RES: 0.0033162
ELA: 15.017 Jacobi stage: ITER: 35303 RES: 0.0031903
ELA: 15.117 Jacobi stage: ITER: 35555 RES: 0.0030692
ELA: 15.217 Jacobi stage: ITER: 35807 RES: 0.0029527
ELA: 15.317 Jacobi stage: ITER: 36059 RES: 0.0028406
ELA: 15.417 Jacobi stage: ITER: 36313 RES: 0.002731
ELA: 15.517 Jacobi stage: ITER: 36565 RES: 0.0026273
ELA: 15.617 Jacobi stage: ITER: 36819 RES: 0.0025276
ELA: 15.717 Jacobi stage: ITER: 37071 RES: 0.0024316
ELA: 15.818 Jacobi stage: ITER: 37323 RES: 0.0023393
ELA: 15.918 Jacobi stage: ITER: 37575 RES: 0.0022505
ELA: 16.018 Jacobi stage: ITER: 37827 RES: 0.002165
ELA: 16.118 Jacobi stage: ITER: 38081 RES: 0.0020815
ELA: 16.218 Jacobi stage: ITER: 38333 RES: 0.0020025
ELA: 16.318 Jacobi stage: ITER: 38585 RES: 0.0019265
ELA: 16.418 Jacobi stage: ITER: 38839 RES: 0.0018533
ELA: 16.518 Jacobi stage: ITER: 39091 RES: 0.001783
ELA: 16.619 Jacobi stage: ITER: 39343 RES: 0.0017153
ELA: 16.719 Jacobi stage: ITER: 39595 RES: 0.0016501
ELA: 16.819 Jacobi stage: ITER: 39847 RES: 0.0015875
ELA: 16.919 Jacobi stage: ITER: 40101 RES: 0.0015263
ELA: 17.019 Jacobi stage: ITER: 40353 RES: 0.0014683
ELA: 17.119 Jacobi stage: ITER: 40605 RES: 0.0014126
ELA: 17.219 Jacobi stage: ITER: 40859 RES: 0.001359
ELA: 17.32 Jacobi stage: ITER: 41111 RES: 0.0013074
ELA: 17.42 Jacobi stage: ITER: 41363 RES: 0.0012577
ELA: 17.52 Jacobi stage: ITER: 41615 RES: 0.00121
ELA: 17.62 Jacobi stage: ITER: 41869 RES: 0.0011633
ELA: 17.72 Jacobi stage: ITER: 42121 RES: 0.0011191
ELA: 17.82 Jacobi stage: ITER: 42373 RES: 0.0010766
ELA: 17.92 Jacobi stage: ITER: 42627 RES: 0.0010358
ELA: 18.02 Jacobi stage: ITER: 42879 RES: 0.00099644
ELA: 18.121 Jacobi stage: ITER: 43131 RES: 0.00095861
ELA: 18.221 Jacobi stage: ITER: 43383 RES: 0.00092221
ELA: 18.321 Jacobi stage: ITER: 43635 RES: 0.0008872
ELA: 18.421 Jacobi stage: ITER: 43889 RES: 0.00085299
ELA: 18.521 Jacobi stage: ITER: 44141 RES: 0.0008206
ELA: 18.621 Jacobi stage: ITER: 44395 RES: 0.00078945
ELA: 18.721 Jacobi stage: ITER: 44647 RES: 0.00075947
ELA: 18.822 Jacobi stage: ITER: 44899 RES: 0.00073064
ELA: 18.922 Jacobi stage: ITER: 45151 RES: 0.0007029
ELA: 19.022 Jacobi stage: ITER: 45403 RES: 0.00067621
ELA: 19.122 Jacobi stage: ITER: 45657 RES: 0.00065014
ELA: 19.222 Jacobi stage: ITER: 45909 RES: 0.00062545
ELA: 19.322 Jacobi stage: ITER: 46161 RES: 0.0006017
ELA: 19.422 Jacobi stage: ITER: 46415 RES: 0.00057886
ELA: 19.522 Jacobi stage: ITER: 46667 RES: 0.00055688
ELA: 19.623 Jacobi stage: ITER: 46919 RES: 0.00053574
ELA: 19.723 Jacobi stage: ITER: 47171 RES: 0.0005154
ELA: 19.823 Jacobi stage: ITER: 47423 RES: 0.00049583
ELA: 19.923 Jacobi stage: ITER: 47677 RES: 0.00047671
ELA: 20.023 Jacobi stage: ITER: 47929 RES: 0.00045861
ELA: 20.123 Jacobi stage: ITER: 48181 RES: 0.0004412
ELA: 20.223 Jacobi stage: ITER: 48435 RES: 0.00042444
ELA: 20.323 Jacobi stage: ITER: 48687 RES: 0.00040833
ELA: 20.424 Jacobi stage: ITER: 48939 RES: 0.00039283
ELA: 20.524 Jacobi stage: ITER: 49191 RES: 0.00037791
ELA: 20.624 Jacobi stage: ITER: 49443 RES: 0.00036356
ELA: 20.724 Jacobi stage: ITER: 49697 RES: 0.00034954
ELA: 20.824 Jacobi stage: ITER: 49949 RES: 0.00033627
ELA: 20.924 Jacobi stage: ITER: 50203 RES: 0.0003235
ELA: 21.024 Jacobi stage: ITER: 50455 RES: 0.00031122
ELA: 21.125 Jacobi stage: ITER: 50707 RES: 0.00029941
ELA: 21.225 Jacobi stage: ITER: 50959 RES: 0.00028804
ELA: 21.325 Jacobi stage: ITER: 51211 RES: 0.0002771
ELA: 21.425 Jacobi stage: ITER: 51463 RES: 0.00026658
ELA: 21.525 Jacobi stage: ITER: 51717 RES: 0.0002563
ELA: 21.625 Jacobi stage: ITER: 51969 RES: 0.00024657
ELA: 21.725 Jacobi stage: ITER: 52223 RES: 0.00023721
ELA: 21.825 Jacobi stage: ITER: 52475 RES: 0.0002282
ELA: 21.926 Jacobi stage: ITER: 52727 RES: 0.00021954
ELA: 22.026 Jacobi stage: ITER: 52979 RES: 0.0002112
ELA: 22.126 Jacobi stage: ITER: 53231 RES: 0.00020318
ELA: 22.226 Jacobi stage: ITER: 53485 RES: 0.00019535
ELA: 22.326 Jacobi stage: ITER: 53737 RES: 0.00018793
ELA: 22.426 Jacobi stage: ITER: 53991 RES: 0.0001808
ELA: 22.526 Jacobi stage: ITER: 54243 RES: 0.00017393
ELA: 22.627 Jacobi stage: ITER: 54495 RES: 0.00016733
ELA: 22.727 Jacobi stage: ITER: 54747 RES: 0.00016097
ELA: 22.827 Jacobi stage: ITER: 54999 RES: 0.00015486
ELA: 22.927 Jacobi stage: ITER: 55251 RES: 0.00014898
ELA: 23.027 Jacobi stage: ITER: 55505 RES: 0.00014324
ELA: 23.127 Jacobi stage: ITER: 55757 RES: 0.0001378
ELA: 23.227 Jacobi stage: ITER: 56011 RES: 0.00013257
ELA: 23.327 Jacobi stage: ITER: 56263 RES: 0.00012753
ELA: 23.428 Jacobi stage: ITER: 56515 RES: 0.00012269
ELA: 23.528 Jacobi stage: ITER: 56767 RES: 0.00011803
ELA: 23.628 Jacobi stage: ITER: 57019 RES: 0.00011355
ELA: 23.728 Jacobi stage: ITER: 57271 RES: 0.00010924
ELA: 23.828 Jacobi stage: ITER: 57525 RES: 0.00010503
ELA: 23.928 Jacobi stage: ITER: 57777 RES: 0.00010104
ELA: 24.028 Jacobi stage: ITER: 58029 RES: 9.7205e-05
ELA: 24.129 Jacobi stage: ITER: 58281 RES: 9.3514e-05
ELA: 24.229 Jacobi stage: ITER: 58533 RES: 8.9964e-05
ELA: 24.329 Jacobi stage: ITER: 58787 RES: 8.6548e-05
ELA: 24.429 Jacobi stage: ITER: 59039 RES: 8.3262e-05
ELA: 24.529 Jacobi stage: ITER: 59291 RES: 8.0101e-05
ELA: 24.629 Jacobi stage: ITER: 59543 RES: 7.7059e-05
ELA: 24.729 Jacobi stage: ITER: 59795 RES: 7.4134e-05
ELA: 24.829 Jacobi stage: ITER: 60047 RES: 7.1319e-05
ELA: 24.929 Jacobi stage: ITER: 60299 RES: 6.8611e-05
ELA: 25.029 Jacobi stage: ITER: 60553 RES: 6.5965e-05
ELA: 25.129 Jacobi stage: ITER: 60805 RES: 6.3461e-05
ELA: 25.229 Jacobi stage: ITER: 61057 RES: 6.1051e-05
ELA: 25.33 Jacobi stage: ITER: 61311 RES: 5.8733e-05
ELA: 25.43 Jacobi stage: ITER: 61563 RES: 5.6503e-05
ELA: 25.53 Jacobi stage: ITER: 61815 RES: 5.4358e-05
ELA: 25.63 Jacobi stage: ITER: 62067 RES: 5.2294e-05
ELA: 25.73 Jacobi stage: ITER: 62319 RES: 5.0309e-05
ELA: 25.83 Jacobi stage: ITER: 62571 RES: 4.8399e-05
ELA: 25.93 Jacobi stage: ITER: 62823 RES: 4.6561e-05
ELA: 26.03 Jacobi stage: ITER: 63075 RES: 4.4793e-05
ELA: 26.13 Jacobi stage: ITER: 63329 RES: 4.3066e-05
ELA: 26.23 Jacobi stage: ITER: 63581 RES: 4.1431e-05
ELA: 26.33 Jacobi stage: ITER: 63833 RES: 3.9858e-05
ELA: 26.43 Jacobi stage: ITER: 64087 RES: 3.8344e-05
ELA: 26.53 Jacobi stage: ITER: 64339 RES: 3.6889e-05
ELA: 26.631 Jacobi stage: ITER: 64591 RES: 3.5488e-05
ELA: 26.731 Jacobi stage: ITER: 64843 RES: 3.4141e-05
ELA: 26.831 Jacobi stage: ITER: 65095 RES: 3.2844e-05
ELA: 26.931 Jacobi stage: ITER: 65347 RES: 3.1597e-05
ELA: 27.031 Jacobi stage: ITER: 65599 RES: 3.0398e-05
ELA: 27.131 Jacobi stage: ITER: 65853 RES: 2.9226e-05
ELA: 27.231 Jacobi stage: ITER: 66105 RES: 2.8116e-05
ELA: 27.331 Jacobi stage: ITER: 66357 RES: 2.7048e-05
ELA: 27.431 Jacobi stage: ITER: 66611 RES: 2.6021e-05
ELA: 27.531 Jacobi stage: ITER: 66863 RES: 2.5033e-05
ELA: 27.631 Jacobi stage: ITER: 67115 RES: 2.4083e-05
ELA: 27.731 Jacobi stage: ITER: 67367 RES: 2.3169e-05
ELA: 27.831 Jacobi stage: ITER: 67619 RES: 2.2289e-05
ELA: 27.932 Jacobi stage: ITER: 67871 RES: 2.1443e-05
ELA: 28.032 Jacobi stage: ITER: 68123 RES: 2.0628e-05
ELA: 28.132 Jacobi stage: ITER: 68377 RES: 1.9833e-05
ELA: 28.232 Jacobi stage: ITER: 68629 RES: 1.908e-05
ELA: 28.332 Jacobi stage: ITER: 68881 RES: 1.8356e-05
ELA: 28.432 Jacobi stage: ITER: 69135 RES: 1.7659e-05
ELA: 28.532 Jacobi stage: ITER: 69387 RES: 1.6988e-05
ELA: 28.632 Jacobi stage: ITER: 69639 RES: 1.6343e-05
ELA: 28.733 Jacobi stage: ITER: 69891 RES: 1.5723e-05
ELA: 28.833 Jacobi stage: ITER: 70143 RES: 1.5126e-05
ELA: 28.933 Jacobi stage: ITER: 70397 RES: 1.4543e-05
ELA: 29.033 Jacobi stage: ITER: 70649 RES: 1.399e-05
ELA: 29.133 Jacobi stage: ITER: 70901 RES: 1.3459e-05
ELA: 29.233 Jacobi stage: ITER: 71155 RES: 1.2948e-05
ELA: 29.333 Jacobi stage: ITER: 71407 RES: 1.2457e-05
ELA: 29.433 Jacobi stage: ITER: 71659 RES: 1.1984e-05
ELA: 29.534 Jacobi stage: ITER: 71911 RES: 1.1529e-05
ELA: 29.634 Jacobi stage: ITER: 72163 RES: 1.1091e-05
ELA: 29.734 Jacobi stage: ITER: 72415 RES: 1.067e-05
ELA: 29.834 Jacobi stage: ITER: 72669 RES: 1.0258e-05
ELA: 29.934 Jacobi stage: ITER: 72921 RES: 9.8689e-06
ELA: 30.034 Jacobi stage: ITER: 73173 RES: 9.4942e-06
ELA: 30.134 Jacobi stage: ITER: 73427 RES: 9.1337e-06
ELA: 30.234 Jacobi stage: ITER: 73679 RES: 8.7869e-06
ELA: 30.334 Jacobi stage: ITER: 73931 RES: 8.4533e-06
ELA: 30.434 Jacobi stage: ITER: 74183 RES: 8.1323e-06
ELA: 30.535 Jacobi stage: ITER: 74435 RES: 7.8236e-06
ELA: 30.635 Jacobi stage: ITER: 74687 RES: 7.5265e-06
ELA: 30.735 Jacobi stage: ITER: 74939 RES: 7.2407e-06
ELA: 30.835 Jacobi stage: ITER: 75193 RES: 6.9616e-06
ELA: 30.935 Jacobi stage: ITER: 75445 RES: 6.6972e-06
ELA: 31.035 Jacobi stage: ITER: 75699 RES: 6.443e-06
ELA: 31.135 Jacobi stage: ITER: 75951 RES: 6.1983e-06
ELA: 31.235 Jacobi stage: ITER: 76203 RES: 5.963e-06
ELA: 31.336 Jacobi stage: ITER: 76455 RES: 5.7366e-06
ELA: 31.436 Jacobi stage: ITER: 76707 RES: 5.5188e-06
ELA: 31.536 Jacobi stage: ITER: 76959 RES: 5.3092e-06
ELA: 31.636 Jacobi stage: ITER: 77213 RES: 5.1045e-06
ELA: 31.736 Jacobi stage: ITER: 77465 RES: 4.9107e-06
ELA: 31.836 Jacobi stage: ITER: 77717 RES: 4.7243e-06
ELA: 31.936 Jacobi stage: ITER: 77971 RES: 4.5449e-06
ELA: 32.037 Jacobi stage: ITER: 78223 RES: 4.3723e-06
ELA: 32.137 Jacobi stage: ITER: 78475 RES: 4.2063e-06
ELA: 32.237 Jacobi stage: ITER: 78727 RES: 4.0466e-06
ELA: 32.337 Jacobi stage: ITER: 78979 RES: 3.893e-06
ELA: 32.437 Jacobi stage: ITER: 79233 RES: 3.7429e-06
ELA: 32.537 Jacobi stage: ITER: 79485 RES: 3.6008e-06
ELA: 32.637 Jacobi stage: ITER: 79737 RES: 3.464e-06
ELA: 32.737 Jacobi stage: ITER: 79991 RES: 3.3325e-06
ELA: 32.838 Jacobi stage: ITER: 80243 RES: 3.206e-06
ELA: 32.938 Jacobi stage: ITER: 80495 RES: 3.0843e-06
ELA: 33.038 Jacobi stage: ITER: 80747 RES: 2.9672e-06
ELA: 33.138 Jacobi stage: ITER: 80999 RES: 2.8545e-06
ELA: 33.238 Jacobi stage: ITER: 81249 RES: 2.7461e-06
ELA: 33.338 Jacobi stage: ITER: 81499 RES: 2.6435e-06
ELA: 33.438 Jacobi stage: ITER: 81751 RES: 2.5431e-06
ELA: 33.539 Jacobi stage: ITER: 82001 RES: 2.4466e-06
ELA: 33.639 Jacobi stage: ITER: 82251 RES: 2.3551e-06
ELA: 33.739 Jacobi stage: ITER: 82503 RES: 2.2657e-06
ELA: 33.839 Jacobi stage: ITER: 82753 RES: 2.1797e-06
ELA: 33.939 Jacobi stage: ITER: 83111 RES: 2.0637e-06
ELA: 34.039 Jacobi stage: ITER: 83489 RES: 1.9467e-06
ELA: 34.139 Jacobi stage: ITER: 83867 RES: 1.8374e-06
ELA: 34.239 Jacobi stage: ITER: 84243 RES: 1.7343e-06
ELA: 34.34 Jacobi stage: ITER: 84621 RES: 1.636e-06
ELA: 34.44 Jacobi stage: ITER: 84999 RES: 1.5442e-06
ELA: 34.54 Jacobi stage: ITER: 85375 RES: 1.4575e-06
ELA: 34.64 Jacobi stage: ITER: 85763 RES: 1.3732e-06
ELA: 34.74 Jacobi stage: ITER: 86141 RES: 1.2953e-06
ELA: 34.84 Jacobi stage: ITER: 86519 RES: 1.2226e-06
ELA: 34.94 Jacobi stage: ITER: 86895 RES: 1.154e-06
ELA: 35.04 Jacobi stage: ITER: 87271 RES: 1.0893e-06
ELA: 35.141 Jacobi stage: ITER: 87649 RES: 1.0275e-06
Vector x = [ 0.999999, 0.999999, 0.999998, 0.999999, 0.999999 ]