diff --git a/AMDiS/src/Initfile.h b/AMDiS/src/Initfile.h index 36cc97bcdfc6597a8e599738d808c774d9802c97..74fe21bc76cd2c60c75751a1b4826592bbf636db 100644 --- a/AMDiS/src/Initfile.h +++ b/AMDiS/src/Initfile.h @@ -254,9 +254,9 @@ namespace AMDiS { size_t pos = begBrackets.find(val[0]); if (pos == std::string::npos) hasBrackets = false; -/* if (hasBrackets && val[val.length() - 1] != endBrackets[pos]) */ -/* throw WrongVectorFormat("begin and end bracket are different in" */ -/* " value '" + val + "'"); */ + if (hasBrackets && val[val.length() - 1] != endBrackets[pos]) + throw WrongVectorFormat("begin and end bracket are different in" + " value '" + val + "'"); size_t oldPos = (hasBrackets ? 1 : 0); size_t curDelim = 0; typedef typename Container::value_type ValueType; @@ -295,8 +295,8 @@ namespace AMDiS { { std::vector<T> temp_vec; getContainer(valStr, temp_vec); -/* if (static_cast<int>(temp_vec.size()) != c.getSize()) */ -/* throw WrongVectorSize("wrong number of entries for WorldVector"); */ + if (static_cast<int>(temp_vec.size()) != c.getSize()) + throw WrongVectorSize("wrong number of entries for WorldVector"); for (size_t i = 0; i < temp_vec.size(); i++) c[i] = temp_vec[i]; diff --git a/AMDiS/src/solver/LinearSolver.h b/AMDiS/src/solver/LinearSolver.h index 2e06cd2b8acbfba935d05608ccb1173f17c7fd3d..bfd1b1cae095095a11a5e9fd848fb4923760793e 100644 --- a/AMDiS/src/solver/LinearSolver.h +++ b/AMDiS/src/solver/LinearSolver.h @@ -120,6 +120,7 @@ namespace AMDiS { MSG("LinearSolver::solveSystem()\n"); residual = -1.0; + rel_residual = -1.0; int error_code = solveLinearSystem(A, x, b, createMatrixData, storeMatrixData); TEST_EXIT(error_code == 0) @@ -140,7 +141,7 @@ namespace AMDiS { // test for relative tolerance TEST_EXIT((isNumber(rel_residual) && (rel_residual < 0.0 || relative < 1.e-30 || rel_residual <= relative)) - || !breakTolNotReached) + || (residual < 1.e-30) || !breakTolNotReached) ("Relative tolerance rtol = %e could not be reached!\n Set tolerance by '->solver->relative tolerance:' \n", relative); } return error_code; diff --git a/demo/init/ellipt.dat.3d b/demo/init/ellipt.dat.3d index 289cabb39092491b05ae75d8f11f7602ca2b2195..f0cb78688ff3a5510774bc65607b7b556ed3307c 100644 --- a/demo/init/ellipt.dat.3d +++ b/demo/init/ellipt.dat.3d @@ -1,7 +1,7 @@ dimension of world: 3 elliptMesh->macro file name: ./macro/macro.stand.3d -elliptMesh->global refinements: 0 +elliptMesh->global refinements: 1 ellipt->mesh: elliptMesh ellipt->dim: 3