diff --git a/src/one-body-sample.cc b/src/one-body-sample.cc index adbfeaeb1b6b2593a518db5d4b73ce423a8d5755..b60eb5061730edfaf9bb13b8835c76fd5426cf52 100644 --- a/src/one-body-sample.cc +++ b/src/one-body-sample.cc @@ -342,13 +342,12 @@ int main(int argc, char *argv[]) { _ell += gravityFunctional; }; + VectorType ud = ud_initial; auto const state_fpi_max = parset.get<size_t>("solver.tnnmg.fixed_point_iterations"); for (size_t run = 1; run <= timesteps; ++run) { VectorType u; - VectorType ud; SingletonVectorType alpha; - stateUpdater->extractState(alpha); stateUpdater->nextTimeStep(); timeSteppingScheme->nextTimeStep(); @@ -394,15 +393,14 @@ int main(int argc, char *argv[]) { double const fixedPointTolerance = parset.get<double>("solver.tnnmg.fixed_point_tolerance"); for (size_t state_fpi = 1; state_fpi <= state_fpi_max; ++state_fpi) { - solveDisplacementProblem(problem_iterate, alpha); + stateUpdater->solve(ud); + stateUpdater->extractState(alpha); + solveDisplacementProblem(problem_iterate, alpha); timeSteppingScheme->postProcess(problem_iterate); timeSteppingScheme->extractDisplacement(u); timeSteppingScheme->extractVelocity(ud); - stateUpdater->solve(ud); - stateUpdater->extractState(alpha); - iteration_writer << iterationCounter << " "; if (parset.get<bool>("printProgress")) { std::cerr << '.';