Skip to content
Snippets Groups Projects
Commit 3917d6ac authored by Elias Pipping's avatar Elias Pipping Committed by Elias Pipping
Browse files

Revert "Use ud as the accuracy criterion"

Use u again since with absolute errors, it's independent of refinement
in time (whereas ud is not)
parent 8db1e3af
No related branches found
No related tags found
No related merge requests found
...@@ -338,8 +338,7 @@ int main(int argc, char *argv[]) { ...@@ -338,8 +338,7 @@ int main(int argc, char *argv[]) {
timeSteppingScheme->setup(ell, tau, time, problem_rhs, problem_iterate, timeSteppingScheme->setup(ell, tau, time, problem_rhs, problem_iterate,
problem_A); problem_A);
VectorType ud_saved(finestSize); VectorType u_saved;
ud_saved = 0.0; // FIXME
auto const state_fpi_max = auto const state_fpi_max =
parset.get<size_t>("solver.tnnmg.fixed_point_iterations"); parset.get<size_t>("solver.tnnmg.fixed_point_iterations");
for (size_t state_fpi = 1; state_fpi <= state_fpi_max; ++state_fpi) { for (size_t state_fpi = 1; state_fpi <= state_fpi_max; ++state_fpi) {
...@@ -388,11 +387,12 @@ int main(int argc, char *argv[]) { ...@@ -388,11 +387,12 @@ int main(int argc, char *argv[]) {
std::cerr << '.'; std::cerr << '.';
std::cerr.flush(); std::cerr.flush();
} }
if (energyNorm.diff(ud_saved, ud) < if (state_fpi > 1 &&
parset.get<double>("solver.tnnmg.fixed_point_tolerance")) energyNorm.diff(u_saved, u) <
parset.get<double>("solver.tnnmg.fixed_point_tolerance"))
break; break;
else else
ud_saved = ud; u_saved = u;
if (state_fpi == state_fpi_max) if (state_fpi == state_fpi_max)
std::cerr << "[ref = " << refinements std::cerr << "[ref = " << refinements
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment