diff --git a/demo/init/ball.dat.2d b/demo/init/ball.dat.2d
index 04d0dca15aa865b8e209a386593ec4b21c2a2daf..d916ae381f672a3f93a04d86601a51aee18b190f 100644
--- a/demo/init/ball.dat.2d
+++ b/demo/init/ball.dat.2d
@@ -7,9 +7,8 @@ ball->mesh:                   ballMesh
 ball->dim:                    2
 ball->polynomial degree:      1
 
-ball->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+ball->solver:                 cg
 ball->solver->max iteration:  1000
-ball->solver->restart:        10  %  only used for GMRES
 ball->solver->tolerance:      1.e-8
 ball->solver->info:           2
 ball->solver->left precon:    diag
diff --git a/demo/init/ball.dat.3d b/demo/init/ball.dat.3d
index 381fbfede915eaab07373bd2fe8c613a2c2beaed..b792d55747b16cfacf907eb0db2b619dd316f59a 100644
--- a/demo/init/ball.dat.3d
+++ b/demo/init/ball.dat.3d
@@ -7,7 +7,7 @@ ball->mesh:                   ballMesh
 ball->dim:                    3
 ball->polynomial degree:      1
 
-ball->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+ball->solver:                 cg
 ball->solver->max iteration:  1000
 ball->solver->tolerance:      1.e-8
 ball->solver->left precon:    diag
diff --git a/demo/init/bunny.init b/demo/init/bunny.init
index ab46c172b82bf4680a4f93d17e4a3c5223e755a6..de130891fcb6ac357681b8b64976a4f068296a00 100644
--- a/demo/init/bunny.init
+++ b/demo/init/bunny.init
@@ -10,7 +10,6 @@ bunny->polynomial degree:    1
 
 bunny->solver:                cg
 bunny->solver->max iteration: 100
-bunny->solver->restart:       10  %  only used for GMRES
 bunny->solver->tolerance:     1.e-8
 bunny->solver->info:          5
 bunny->solver->left precon:   diag
diff --git a/demo/init/couple.dat.2d b/demo/init/couple.dat.2d
index 21931cce73ade3206c14ff05ea899605b98c5891..b8f84dc862ebcfe6ce616fa7336a595d8d4113c4 100644
--- a/demo/init/couple.dat.2d
+++ b/demo/init/couple.dat.2d
@@ -11,7 +11,7 @@ problem1->mesh:                 coupleMesh
 problem1->dim:                  2
 problem1->polynomial degree:    1
 
-problem1->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+problem1->solver:                 cg
 problem1->solver->max iteration:  1000
 problem1->solver->tolerance:      1.e-8
 problem1->solver->left precon:    diag
@@ -32,7 +32,7 @@ problem1->output->AMDiS data ext: .dat
 problem2->dim:                  2
 problem2->polynomial degree:    1
 
-problem2->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+problem2->solver:                 cg
 problem2->solver->max iteration:  1000
 problem2->solver->tolerance:      1.e-8
 problem2->solver->left precon:    diag
diff --git a/demo/init/ellipt.dat.1d b/demo/init/ellipt.dat.1d
index 2ef12e83686dd6d03d823729025c8a9561c3a0e2..71a8646cbd704459c6b6b8181c9807ee7839d7c3 100644
--- a/demo/init/ellipt.dat.1d
+++ b/demo/init/ellipt.dat.1d
@@ -7,9 +7,8 @@ ellipt->mesh:                   elliptMesh
 ellipt->dim:                    1
 ellipt->polynomial degree:      1
 
-ellipt->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+ellipt->solver:                 cg
 ellipt->solver->max iteration:  1000
-ellipt->solver->restart:        10  %  only used for GMRES
 ellipt->solver->tolerance:      1.e-8
 ellipt->solver->info:           2
 ellipt->solver->left precon:    diag   
diff --git a/demo/init/ellipt.dat.2d b/demo/init/ellipt.dat.2d
index bba9359710fab10164012bf0d4934433e4d91159..042bc41ce2c328119ff81c4a54d263fa03c9c153 100644
--- a/demo/init/ellipt.dat.2d
+++ b/demo/init/ellipt.dat.2d
@@ -7,9 +7,8 @@ ellipt->mesh:                   elliptMesh
 ellipt->dim:                    2
 ellipt->polynomial degree:      1
 
-ellipt->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+ellipt->solver:                 cg
 ellipt->solver->max iteration:  1000
-ellipt->solver->restart:        10  %  only used for GMRES
 ellipt->solver->tolerance:      1.e-8
 ellipt->solver->info:           2
 ellipt->solver->left precon:    diag
diff --git a/demo/init/ellipt.dat.3d b/demo/init/ellipt.dat.3d
index dcb1ad42ea0cdb024f6963854cd87298e55e403e..1b2da4dc0f241e8d63b579ed86e1814483238277 100644
--- a/demo/init/ellipt.dat.3d
+++ b/demo/init/ellipt.dat.3d
@@ -7,9 +7,8 @@ ellipt->mesh:                   elliptMesh
 ellipt->dim:                    3
 ellipt->polynomial degree:      2
 
-ellipt->solver:                 bicgstab % no, bicgstab, cg, gmres, odir, ores
+ellipt->solver:                 bicgstab
 ellipt->solver->max iteration:  1000
-ellipt->solver->restart:        10  %  only used for GMRES
 ellipt->solver->tolerance:      1.e-8
 ellipt->solver->info:           2
 ellipt->solver->left precon:    ilu
diff --git a/demo/init/heat.dat.1d b/demo/init/heat.dat.1d
index 2a90e1d973fa9e7e595f5486cdb8caf7e44da02b..3345984e9c379e873b66db480a605552e8acdee5 100644
--- a/demo/init/heat.dat.1d
+++ b/demo/init/heat.dat.1d
@@ -9,7 +9,6 @@ heat->space->mesh:                    heatMesh
 
 heat->space->solver:                  cg
 heat->space->solver->max iteration:   1000
-heat->space->solver->restart:         10  %  only used for GMRES
 heat->space->solver->tolerance:       1.e-8
 heat->space->solver->info:            8
 heat->space->solver->left precon:     diag
diff --git a/demo/init/heat.dat.2d b/demo/init/heat.dat.2d
index be45ba28d80a4242a7d91d8ffe730b04a1b94cc1..5bc6a4bab230324a80def56c44996308f9ceef5e 100644
--- a/demo/init/heat.dat.2d
+++ b/demo/init/heat.dat.2d
@@ -10,7 +10,6 @@ heat->space->mesh:                    heatMesh
 
 heat->space->solver:                  cg
 heat->space->solver->max iteration:   1000
-heat->space->solver->restart:         10  %  only used for GMRES
 heat->space->solver->tolerance:       1.e-8
 heat->space->solver->info:            2
 heat->space->solver->left precon:     diag
diff --git a/demo/init/heat.dat.3d b/demo/init/heat.dat.3d
index 3632c4b48979d26ac5c5500d14879a9e75a147e8..816b974dc348b71d7298f70abe87051fcb3cd142 100644
--- a/demo/init/heat.dat.3d
+++ b/demo/init/heat.dat.3d
@@ -9,7 +9,6 @@ heat->space->mesh:                    heatMesh
 
 heat->space->solver:                  cg
 heat->space->solver->max iteration:   1000
-heat->space->solver->restart:         10  %  only used for GMRES
 heat->space->solver->tolerance:       1.e-8
 heat->space->solver->info:            2
 heat->space->solver->left precon:     diag
diff --git a/demo/init/mpcci1.dat.2d b/demo/init/mpcci1.dat.2d
index e6be269ddcef9f8169fe7bba79da513f4122d4f7..2adc669f1da452c852e8b78cd79b62a1cd0ceef4 100644
--- a/demo/init/mpcci1.dat.2d
+++ b/demo/init/mpcci1.dat.2d
@@ -7,9 +7,8 @@ mpcci1->mesh:                   mpcci1Mesh
 mpcci1->dim:                    2
 mpcci1->polynomial degree:      1
 
-mpcci1->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+mpcci1->solver:                 cg
 mpcci1->solver->max iteration:  1000
-mpcci1->solver->restart:        10  %  only used for GMRES
 mpcci1->solver->tolerance:      1.e-8
 mpcci1->solver->info:           2
 mpcci1->solver->left precon:    diag
diff --git a/demo/init/mpcci2.dat.2d b/demo/init/mpcci2.dat.2d
index c04fbe1449596ed29554e2603c0ee67f7c09f66c..e57614fcdb0ec19702e60ae16781ef81dfe49276 100644
--- a/demo/init/mpcci2.dat.2d
+++ b/demo/init/mpcci2.dat.2d
@@ -7,9 +7,8 @@ mpcci2->mesh:                   mpcci2Mesh
 mpcci2->dim:                    2
 mpcci2->polynomial degree:      1
 
-mpcci2->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+mpcci2->solver:                 cg
 mpcci2->solver->max iteration:  1000
-mpcci2->solver->restart:        10  %  only used for GMRES
 mpcci2->solver->tolerance:      1.e-8
 mpcci2->solver->info:           2
 mpcci2->solver->left precon:    diag
diff --git a/demo/init/mpccitest.dat.2d b/demo/init/mpccitest.dat.2d
index 4bcb1a18c048221de324e5aac48cabb58fa3d2a3..bde117f58552ed25d956615433cf508f027cab74 100644
--- a/demo/init/mpccitest.dat.2d
+++ b/demo/init/mpccitest.dat.2d
@@ -7,9 +7,8 @@ mpccitest->mesh:                   mpccitestMesh
 mpccitest->dim:                    2
 mpccitest->polynomial degree:      1
 
-mpccitest->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+mpccitest->solver:                 cg
 mpccitest->solver->max iteration:  1000
-mpccitest->solver->restart:        10  %  only used for GMRES
 mpccitest->solver->tolerance:      1.e-8
 mpccitest->solver->info:           2
 mpccitest->solver->left precon:    diag
diff --git a/demo/init/multigrid.dat.2d b/demo/init/multigrid.dat.2d
deleted file mode 100644
index 7e22ce2918edb0fa3a1b1e8b76ce94c2713cca87..0000000000000000000000000000000000000000
--- a/demo/init/multigrid.dat.2d
+++ /dev/null
@@ -1,56 +0,0 @@
-dimension of world:             2
-
-multigridMesh->macro file name:    ./macro/macro.stand.2d
-multigridMesh->global refinements: 0
-multigridMesh->preserve coarse dofs: 1
-
-multigrid->mesh:                   multigridMesh
-multigrid->dim:                    2
-multigrid->polynomial degree:      1
-
-multigrid->solver:                               mg
-multigrid->solver->tolerance:                    1.e-12
-multigrid->solver->max iteration:                100
-multigrid->solver->use galerkin operator:        0
-multigrid->solver->mg cycle index:               1 % 1: V, 2: W
-multigrid->solver->smoother:                     gs
-multigrid->solver->smoother->omega:              1.0
-multigrid->solver->pre smoothing steps:          3
-multigrid->solver->post smoothing steps:         3
-multigrid->solver->coarse level smoothing steps: 1
-multigrid->solver->min level:                    0
-multigrid->solver->min level gap:                1
-multigrid->solver->max mg levels:                100
-multigrid->solver->info:           2
-multigrid->solver->left precon:    diag
-multigrid->solver->right precon:   no
-
-multigrid->estimator:              residual
-multigrid->estimator->error norm:  1   % 1: H1_NORM, 2: L2_NORM
-multigrid->estimator->C0:          0.1 % constant of element residual
-multigrid->estimator->C1:          0.1 % constant of jump residual
-multigrid->estimator->C2:          0.0 % constant of coarsening estimate
-
-multigrid->marker->strategy:       2 % 0: no adaption 1: GR 2: MS 3: ES 4:GERS
-multigrid->marker->MSGamma:        0.5
-
-multigrid->adapt->tolerance:       1e-8
-multigrid->adapt->max iteration:   10
-multigrid->adapt->refine bisections:  2
-
-multigrid->output->filename:       multigrid
-
-multigrid->output->ParaView format: 1
-
-multigrid->output->TecPlot format: 0
-multigrid->output->TecPlot ext:    .tec
-
-multigrid->output->AMDiS format:   0
-multigrid->output->AMDiS mesh ext: .mesh
-multigrid->output->AMDiS data ext: .dat
-
-multigrid->output->append index:   0
-multigrid->output->index length:   6
-multigrid->output->index decimals: 3
-
-WAIT:                           1
diff --git a/demo/init/multigrid.dat.3d b/demo/init/multigrid.dat.3d
deleted file mode 100644
index 7eb722e1f40b35c23dda34d48bf59b261ef638af..0000000000000000000000000000000000000000
--- a/demo/init/multigrid.dat.3d
+++ /dev/null
@@ -1,54 +0,0 @@
-dimension of world:             3
-
-multigridMesh->macro file name:    ./macro/macro.stand.3d
-multigridMesh->global refinements: 0
-multigridMesh->preserve coarse dofs: 1
-
-multigrid->mesh:                   multigridMesh
-multigrid->dim:                    3
-multigrid->polynomial degree:      1
-
-multigrid->solver:                               mg
-multigrid->solver->tolerance:                    1.e-8
-multigrid->solver->max iteration:                1000
-multigrid->solver->full mg:                      0
-multigrid->solver->mg cycle index:               1 % 1: V, 2: W
-multigrid->solver->pre smoothing steps:          3
-multigrid->solver->post smoothing steps:         3
-multigrid->solver->coarse level smoothing steps: 10
-multigrid->solver->min level:                    0
-multigrid->solver->min level gap:                0
-multigrid->solver->max mg levels:                100
-multigrid->solver->info:           2
-multigrid->solver->left precon:    diag
-multigrid->solver->right precon:   no
-
-multigrid->estimator:              residual
-multigrid->estimator->error norm:  1   % 1: H1_NORM, 2: L2_NORM
-multigrid->estimator->C0:          0.1 % constant of element residual
-multigrid->estimator->C1:          0.1 % constant of jump residual
-multigrid->estimator->C2:          0.0 % constant of coarsening estimate
-
-multigrid->marker->strategy:       1 % 0: no adaption 1: GR 2: MS 3: ES 4:GERS
-multigrid->marker->MSGamma:        0.5
-
-multigrid->adapt->tolerance:       1e-8
-multigrid->adapt->max iteration:   20
-multigrid->adapt->refine bisections:  3
-
-multigrid->output->filename:       multigrid
-
-multigrid->output->ParaView format:  1
-
-multigrid->output->TecPlot format: 0
-multigrid->output->TecPlot ext:    .tec
-
-multigrid->output->AMDiS format:   0
-multigrid->output->AMDiS mesh ext: .mesh
-multigrid->output->AMDiS data ext: .dat
-
-multigrid->output->append index:   0
-multigrid->output->index length:   6
-multigrid->output->index decimals: 3
-
-WAIT:                           0
diff --git a/demo/init/navierstokes.dat.2d b/demo/init/navierstokes.dat.2d
index ec53a74dff87e448b074ce89dbbdb4a02b4fc032..9866d55116a4b27127508f9bd07b1abf5ead7b8c 100644
--- a/demo/init/navierstokes.dat.2d
+++ b/demo/init/navierstokes.dat.2d
@@ -45,7 +45,6 @@ navierstokes->adapt[2]->coarsen allowed:        1   % 0|1
 
 navierstokes->space->solver:                    bicgstab
 navierstokes->space->solver->max iteration:     1000
-navierstokes->space->solver->restart:           10  %  only used for GMRES
 navierstokes->space->solver->tolerance:         1.e-8
 navierstokes->space->solver->info:              5
 navierstokes->space->solver->left precon:       ilu
diff --git a/demo/init/neumann.dat.2d b/demo/init/neumann.dat.2d
index 333dfbc8f623c8a2fc76275ebbae34cb90ee101b..808c2334ef16c4a82385fa700f4577dfd2d63923 100644
--- a/demo/init/neumann.dat.2d
+++ b/demo/init/neumann.dat.2d
@@ -7,7 +7,7 @@ neumann->mesh:                   neumannMesh
 neumann->dim:                    2
 neumann->polynomial degree:      1
 
-neumann->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+neumann->solver:                 cg
 neumann->solver->max iteration:  1000
 neumann->solver->tolerance:      1.e-8
 neumann->solver->left precon:    diag
diff --git a/demo/init/nonlin.dat.1d b/demo/init/nonlin.dat.1d
index c82bfedee4c9fd10a2b0f0eebaca6a87ff421f05..425eaed203ac2375853c82118ff087a1277bf59e 100644
--- a/demo/init/nonlin.dat.1d
+++ b/demo/init/nonlin.dat.1d
@@ -14,7 +14,6 @@ nonlin->newton->max iteration: 10
 
 nonlin->solver:                 cg
 nonlin->solver->max iteration:  1000
-nonlin->solver->restart:        10  %  only used for GMRES
 nonlin->solver->tolerance:      1.e-8
 nonlin->solver->left precon:    diag
 
diff --git a/demo/init/nonlin.dat.3d b/demo/init/nonlin.dat.3d
index 21e1b7ca30d480b164f7046e097bd4bfb0b6bb5d..d0c268290cc6c69bc46407888f8c783588ff8018 100644
--- a/demo/init/nonlin.dat.3d
+++ b/demo/init/nonlin.dat.3d
@@ -16,9 +16,8 @@ nonlin->nonlin solver->info:          6         % information level of Newton
 nonlin->nonlin solver->restart:       20        % number of iterations for step size control
 nonlin->nonlin solver->norm:          1         % 1:H1, 2:L2
 
-nonlin->solver:                       gmres
+nonlin->solver:                       bicgstab
 nonlin->solver->max iteration:        1000
-nonlin->solver->restart:              10  %  only used for GMRES
 nonlin->solver->tolerance:            1.e-7
 nonlin->solver->info:                 0    
 nonlin->solver->left precon:          diag
diff --git a/demo/init/parallelellipt.dat.2d b/demo/init/parallelellipt.dat.2d
index 589124b9abe95514c8cf7088d2ba3c12f81fa0b4..98dde05920a88034b545e633afc1eb4854fa7d6f 100644
--- a/demo/init/parallelellipt.dat.2d
+++ b/demo/init/parallelellipt.dat.2d
@@ -3,8 +3,6 @@ dimension of world:             2
 elliptMesh->macro file name:    ./macro/macro.stand.2d
 elliptMesh->global refinements: 4
 
-elliptMesh->preserve coarse dofs: 1
-
 ellipt->mesh:                   elliptMesh
 ellipt->dim:                    2
 ellipt->polynomial degree:      1
@@ -15,11 +13,8 @@ ellipt->parallel->global coarse grid level: 0
 ellipt->parallel->local coarse grid level: 4
 ellipt->parallel->global refinements: 0
 
-ellipt->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
-ellipt->solver->smoother:       gs
-
+ellipt->solver:                 cg
 ellipt->solver->max iteration:  10000
-ellipt->solver->restart:        10  %  only used for GMRES
 ellipt->solver->tolerance:      1.e-8
 ellipt->solver->info:           2
 ellipt->solver->left precon:    diag
diff --git a/demo/init/parallelheat.dat.2d b/demo/init/parallelheat.dat.2d
index ec05f6c1a84099cba39c0466a571070b95f92f6f..9a8a77dfe4e3fe1bca30785be7cccd03aedec2fd 100644
--- a/demo/init/parallelheat.dat.2d
+++ b/demo/init/parallelheat.dat.2d
@@ -22,7 +22,6 @@ heat->parallel->global refinements: 0
 heat->space->solver:                  cg
 heat->space->solver->use galerkin operator: 1
 heat->space->solver->max iteration:   1000
-heat->space->solver->restart:         10  %  only used for GMRES
 heat->space->solver->tolerance:       1.e-8
 heat->space->solver->info:            8
 heat->space->solver->left precon:     diag
diff --git a/demo/init/parallelvecellipt.dat.2d b/demo/init/parallelvecellipt.dat.2d
index 998094b82caea6ea82722f0f39d26c18e0e22e15..c055a0a14bae3c10aad811b9e385282cf1cb6ade 100644
--- a/demo/init/parallelvecellipt.dat.2d
+++ b/demo/init/parallelvecellipt.dat.2d
@@ -41,14 +41,13 @@ vecellipt->parallelizer->marker strategy:       5 % 5:condES, 6:problems marker
 vecellipt->parallelizer->marker->MSGamma:        0.5
 vecellipt->parallelizer->marker->max partition DOFs: 0
 
-vecellipt->solver:                       gmres
+vecellipt->solver:                       bicgstab
 vecellipt->solver->smoother:             gs
 vecellipt->solver->smoother->omega:      1.0
 vecellipt->solver->coarse level smoothing steps: 1
 vecellipt->solver->pre smoothing steps:  1
 vecellipt->solver->post smoothing steps: 1
 vecellipt->solver->max iteration:        100
-vecellipt->solver->restart:              10  %  only used for GMRES
 vecellipt->solver->tolerance:            1.e-8
 vecellipt->solver->info:                 2
 vecellipt->solver->left precon:          diag
diff --git a/demo/init/parametric.dat.3d b/demo/init/parametric.dat.3d
index 522939fdd3fb4d43031e3ed7330812dcd3891384..01e46e1bea696c88b7e39150d3222e3ee5e3e4db 100644
--- a/demo/init/parametric.dat.3d
+++ b/demo/init/parametric.dat.3d
@@ -9,7 +9,6 @@ parametric->polynomial degree:    2
 
 parametric->solver:                cg
 parametric->solver->max iteration: 100
-parametric->solver->restart:       10  %  only used for GMRES
 parametric->solver->tolerance:     1.e-8
 parametric->solver->info:          2
 parametric->solver->left precon:   diag
diff --git a/demo/init/periodic.dat.1d b/demo/init/periodic.dat.1d
index b9f50e97e5134855b79df688aa3bbf1b589709c1..976179b9db4e9730c01b3ceb23b77cfa1d5ca545 100644
--- a/demo/init/periodic.dat.1d
+++ b/demo/init/periodic.dat.1d
@@ -11,9 +11,8 @@ periodic->mesh:                   periodicMesh
 periodic->dim:                    1
 periodic->polynomial degree:      1
 
-periodic->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+periodic->solver:                 cg
 periodic->solver->max iteration:  1000
-periodic->solver->restart:        10  %  only used for GMRES
 periodic->solver->tolerance:      1.e-8
 periodic->solver->info:           2
 periodic->solver->left precon:    diag
diff --git a/demo/init/periodic.dat.2d b/demo/init/periodic.dat.2d
index 4ef7ac1b9b7a21236b865a6936f587c855a8b550..2af88eee67c193ea4a48f120e13f1bc1fa2fe19d 100644
--- a/demo/init/periodic.dat.2d
+++ b/demo/init/periodic.dat.2d
@@ -11,9 +11,8 @@ periodic->mesh:                   periodicMesh
 periodic->dim:                    2
 periodic->polynomial degree:      1
 
-periodic->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+periodic->solver:                 cg
 periodic->solver->max iteration:  1000
-periodic->solver->restart:        10  %  only used for GMRES
 periodic->solver->tolerance:      1.e-8
 periodic->solver->info:           2
 periodic->solver->left precon:    diag
diff --git a/demo/init/periodic.dat.3d b/demo/init/periodic.dat.3d
index 200ae4e29a341f26ccf99a3db697858e17fe5785..87b20237f9324925e7544942e51e4df17c7b1758 100644
--- a/demo/init/periodic.dat.3d
+++ b/demo/init/periodic.dat.3d
@@ -11,9 +11,8 @@ periodic->mesh:                   periodicMesh
 periodic->dim:                    3
 periodic->polynomial degree:      1
 
-periodic->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+periodic->solver:                 cg
 periodic->solver->max iteration:  1000
-periodic->solver->restart:        10  %  only used for GMRES
 periodic->solver->tolerance:      1.e-8
 periodic->solver->info:           2
 periodic->solver->left precon:    diag
diff --git a/demo/init/smi.dat.2d b/demo/init/smi.dat.2d
index 21bf1a7c22c418d6cdcd5c62ed575dbead62c384..7efeaa49086908771641b98c26d58f1c3482d27d 100644
--- a/demo/init/smi.dat.2d
+++ b/demo/init/smi.dat.2d
@@ -7,9 +7,8 @@ ellipt->mesh:                   elliptMesh
 ellipt->dim:                    2
 ellipt->polynomial degree:      1
 
-ellipt->solver:                 cg % no, bicgstab, cg, gmres, odir, ores
+ellipt->solver:                 cg
 ellipt->solver->max iteration:  1000
-ellipt->solver->restart:        10  %  only used for GMRES
 ellipt->solver->tolerance:      1.e-8
 ellipt->solver->info:           2
 ellipt->solver->left precon:    diag
diff --git a/demo/init/vecellipt.dat.1d b/demo/init/vecellipt.dat.1d
index eeb6dd4a91932cbd0e1560f57192a34ca8b0299f..6efb81d3e392e65ab14cf6eef531ac8cecc05763 100644
--- a/demo/init/vecellipt.dat.1d
+++ b/demo/init/vecellipt.dat.1d
@@ -10,9 +10,8 @@ vecellipt->polynomial degree[1]:         2
 
 vecellipt->components:                   2
 
-vecellipt->solver:                       gmres
+vecellipt->solver:                       bicgstab
 vecellipt->solver->max iteration:        1000
-vecellipt->solver->restart:              10  %  only used for GMRES
 vecellipt->solver->tolerance:            1.e-8
 vecellipt->solver->info:                 2
 vecellipt->solver->left precon:          diag
diff --git a/demo/init/vecellipt.dat.2d b/demo/init/vecellipt.dat.2d
index 609726471cfd33a629ec7e18c682c2a2cf7dcf09..b11883de0fb0f553d9a355ded584c8b7bd8dfc62 100644
--- a/demo/init/vecellipt.dat.2d
+++ b/demo/init/vecellipt.dat.2d
@@ -11,9 +11,8 @@ vecellipt->components:                                     2
 vecellipt->polynomial degree[0]:         1
 vecellipt->polynomial degree[1]:         1
 
-vecellipt->solver:                       gmres
+vecellipt->solver:                       bicgstab
 vecellipt->solver->max iteration:        1000
-vecellipt->solver->restart:              10  %  only used for GMRES
 vecellipt->solver->tolerance:            1.e-8
 vecellipt->solver->info:                 2
 vecellipt->solver->left precon:          diag
@@ -28,7 +27,7 @@ vecellipt->estimator[0]->C2:             0.0 % constant of coarsening estimate
 vecellipt->marker[0]->strategy:          2   % 0: no adaption 1: GR 2: MS 3: ES 4:GERS
 vecellipt->marker[0]->MSGamma:           0.5
 
-vecellipt->estimator[1]:                 no
+vecellipt->estimator[1]:                 0
 vecellipt->marker[1]->strategy:          0   % 0: no adaption 1: GR 2: MS 3: ES 4:GERS
 
 
diff --git a/demo/init/vecellipt.dat.3d b/demo/init/vecellipt.dat.3d
index c843d7f9f4fbf5d40066929bffe67816c5ba8fb4..afca2d9c4f0a7a910a99a13d6dea2a2caf38aad9 100644
--- a/demo/init/vecellipt.dat.3d
+++ b/demo/init/vecellipt.dat.3d
@@ -10,9 +10,8 @@ vecellipt->polynomial degree[1]:            1
 
 vecellipt->components:                   2
 
-vecellipt->solver:                       gmres
+vecellipt->solver:                       bicgstab
 vecellipt->solver->max iteration:        1000
-vecellipt->solver->restart:              10  %  only used for GMRES
 vecellipt->solver->tolerance:            1.e-8
 vecellipt->solver->info:                 2
 vecellipt->solver->left precon:          diag
diff --git a/demo/init/vecheat.dat.1d b/demo/init/vecheat.dat.1d
index 20bbc2392894a95dbb0750206150945bf51cc6e8..b7debf7010b50a4b1364509e51ac32daa21a100e 100644
--- a/demo/init/vecheat.dat.1d
+++ b/demo/init/vecheat.dat.1d
@@ -12,7 +12,6 @@ vecheat->space->components:                  2
 
 vecheat->space->solver:                      cg
 vecheat->space->solver->max iteration:       1000
-vecheat->space->solver->restart:             10  %  only used for GMRES
 vecheat->space->solver->tolerance:           1.e-8
 vecheat->space->solver->info:                8
 vecheat->space->solver->left precon:         diag
diff --git a/demo/init/vecheat.dat.2d b/demo/init/vecheat.dat.2d
index 1412226d6e01fd6a60b2818e4fecacd45a652020..8282313f1ef89f0819b20a24550cc76fb968d33e 100644
--- a/demo/init/vecheat.dat.2d
+++ b/demo/init/vecheat.dat.2d
@@ -12,7 +12,6 @@ vecheat->space->components:                  2
 
 vecheat->space->solver:                      cg
 vecheat->space->solver->max iteration:       1000
-vecheat->space->solver->restart:             10  %  only used for GMRES
 vecheat->space->solver->tolerance:           1.e-8
 vecheat->space->solver->info:                2
 vecheat->space->solver->left precon:         diag
diff --git a/demo/init/vecheat.dat.3d b/demo/init/vecheat.dat.3d
index 7f6d5e586dd413d2e885bde99e834c3560aa726c..2c2b3d1a0b7df8d73c8139a0fac0fe97814256bb 100644
--- a/demo/init/vecheat.dat.3d
+++ b/demo/init/vecheat.dat.3d
@@ -12,7 +12,6 @@ vecheat->space->components:                  2
 
 vecheat->space->solver:                      cg
 vecheat->space->solver->max iteration:       1000
-vecheat->space->solver->restart:             10  %  only used for GMRES
 vecheat->space->solver->tolerance:           1.e-8
 vecheat->space->solver->info:                8
 vecheat->space->solver->left precon:         diag
diff --git a/demo/init/vecmultigrid.dat.2d b/demo/init/vecmultigrid.dat.2d
deleted file mode 100644
index c8e208d6567bd18699d17ffdfd5c52121654b5f7..0000000000000000000000000000000000000000
--- a/demo/init/vecmultigrid.dat.2d
+++ /dev/null
@@ -1,102 +0,0 @@
-dimension of world:                      2
-
-AMDiS mesh file extension:               .mesh
-AMDiS value file extension:              .dat
-TecPlot file extension:                  .tec
-time index length:                       7
-time index decimals:                     3
-
-vecmultigridMesh->macro file name:          ./macro/macro.stand.2d
-vecmultigridMesh->global refinements:       0
-vecmultigridMesh->preserve coarse dofs:     1
-
-%periodicMesh->periodic file:      ./init/periodic.per.2d
-
-
-vecmultigrid->mesh:                         vecmultigridMesh
-vecmultigrid->dim:                          2
-
-vecmultigrid->components:                                     2
-
-vecmultigrid->polynomial degree[0]:         1
-vecmultigrid->polynomial degree[1]:         1
-
-vecmultigrid->solver:                       mg
-vecmultigrid->solver->use galerkin operator: 1
-vecmultigrid->solver->mg cycle index:               1 % 1: V, 2: W
-vecmultigrid->solver->smoother:                     box
-vecmultigrid->solver->pre smoothing steps:          3
-vecmultigrid->solver->post smoothing steps:         3
-vecmultigrid->solver->coarse level smoothing steps:  1
-vecmultigrid->solver->min level:                    0
-vecmultigrid->solver->min level gap:                1
-%vecmultigrid->solver->max mg levels:                100
-
-vecmultigrid->solver->max iteration:        1000
-vecmultigrid->solver->restart:              10  %  only used for GMRES
-vecmultigrid->solver->tolerance:            1.e-12
-vecmultigrid->solver->info:                 2
-vecmultigrid->solver->left precon:          diag
-vecmultigrid->solver->right precon:         no
-
-vecmultigrid->estimator[0]:                 residual
-vecmultigrid->estimator[0]->error norm:     1 % 1: H1_NORM, 2: L2_NORM
-vecmultigrid->estimator[0]->C0:             0.1 % constant of element residual
-vecmultigrid->estimator[0]->C1:             0.1 % constant of jump residual
-vecmultigrid->estimator[0]->C2:             0.0 % constant of coarsening estimate
-
-vecmultigrid->marker[0]->strategy:          2   % 0: no adaption 1: GR 2: MS 3: ES 4:GERS
-vecmultigrid->marker[0]->MSGamma:           0.5
-
-vecmultigrid->estimator[1]:                 residual
-vecmultigrid->estimator[1]->error norm:     1   % 1: H1_NORM, 2: L2_NORM
-vecmultigrid->estimator[1]->C0:             0.1 % constant of element residual
-vecmultigrid->estimator[1]->C1:             0.1 % constant of jump residual
-vecmultigrid->estimator[1]->C2:             0.0 % constant of coarsening estimate
-
-vecmultigrid->marker[1]->strategy:          2   % 0: no adaption 1: GR 2: MS 3: ES 4:GERS
-vecmultigrid->marker[1]->MSGamma:           0.5
-
-vecmultigrid->adapt->max iteration:         10
-vecmultigrid->adapt->info:                  8
-vecmultigrid->adapt->refine bisections: 2
-
-
-vecmultigrid->adapt[0]->tolerance:          1e-4
-vecmultigrid->adapt[1]->tolerance:          1e-4
-
-
-vecmultigrid->output[0]->filename:          vecmultigrid0
-
-vecmultigrid->output[0]->ParaView format:    1
-
-vecmultigrid->output[0]->TecPlot format:    0
-vecmultigrid->output[0]->TecPlot ext:       .tec
-
-vecmultigrid->output[0]->AMDiS format:      0
-vecmultigrid->output[0]->AMDiS mesh ext:    .mesh
-vecmultigrid->output[0]->AMDiS data ext:    .dat
-
-vecmultigrid->output[0]->append index:      0
-vecmultigrid->output[0]->index length:      6
-vecmultigrid->output[0]->index decimals:    3
-
-vecmultigrid->output[1]->filename:          vecmultigrid1
-
-vecmultigrid->output[1]->ParaView format:    1
-
-vecmultigrid->output[1]->TecPlot format:    0
-vecmultigrid->output[1]->TecPlot ext:       .tec
-
-vecmultigrid->output[1]->AMDiS format:      0
-vecmultigrid->output[1]->AMDiS mesh ext:    .mesh
-vecmultigrid->output[1]->AMDiS data ext:    .dat
-
-vecmultigrid->output[1]->append index:      0
-vecmultigrid->output[1]->index length:      6
-vecmultigrid->output[1]->index decimals:    3
-
-vecmultigrid->info:                         8
-
-WAIT: 0
-
diff --git a/demo/init/vecnonlin.dat.1d b/demo/init/vecnonlin.dat.1d
index 8c94b7b5be824ba91e64d01c20ff065a3b0d0ab7..05c7bc17e92f318fec8f9bd7c8691e319a0c8273 100644
--- a/demo/init/vecnonlin.dat.1d
+++ b/demo/init/vecnonlin.dat.1d
@@ -21,7 +21,6 @@ vecnonlin->nonlin solver->norm:          1     % 1: H1_NORM, 2: L2_NORM
 
 vecnonlin->solver:                       cg
 vecnonlin->solver->max iteration:        1000
-vecnonlin->solver->restart:              10  %  only used for GMRES
 vecnonlin->solver->tolerance:            1.e-8
 vecnonlin->solver->info:                 1 
 vecnonlin->solver->left precon:          diag
diff --git a/demo/init/vecnonlin.dat.2d b/demo/init/vecnonlin.dat.2d
index 9678185d83fd63ad9b2d7765e9fd9ef050b4f198..63ca3f1ed0fea8e89c2c7b9e72fab261d1f086ae 100644
--- a/demo/init/vecnonlin.dat.2d
+++ b/demo/init/vecnonlin.dat.2d
@@ -21,7 +21,6 @@ vecnonlin->nonlin solver->norm:          1     % 1: H1_NORM, 2: L2_NORM
 
 vecnonlin->solver:                       cg
 vecnonlin->solver->max iteration:        1000
-vecnonlin->solver->restart:              10  %  only used for GMRES
 vecnonlin->solver->tolerance:            1.e-8
 vecnonlin->solver->info:                 1 
 vecnonlin->solver->left precon:          diag
diff --git a/demo/init/vecnonlin.dat.3d b/demo/init/vecnonlin.dat.3d
index 7ba0ef20833c988f04969e18ff5d861d519dc4eb..bbd294ab257de70b621ccfad0f0ace76e3922fc2 100644
--- a/demo/init/vecnonlin.dat.3d
+++ b/demo/init/vecnonlin.dat.3d
@@ -21,7 +21,6 @@ vecnonlin->nonlin solver->norm:          1     % 1: H1_NORM, 2: L2_NORM
 
 vecnonlin->solver:                       cg
 vecnonlin->solver->max iteration:        1000
-vecnonlin->solver->restart:              10  %  only used for GMRES
 vecnonlin->solver->tolerance:            1.e-8
 vecnonlin->solver->info:                 1 
 vecnonlin->solver->left precon:          diag