From b72b6138b9b1e16e750ffa35deb68cc96a9712b5 Mon Sep 17 00:00:00 2001 From: Elias Pipping <elias.pipping@fu-berlin.de> Date: Mon, 7 Jul 2014 12:17:46 +0200 Subject: [PATCH] [Cleanup] Track time incrementally --- src/sand-wedge.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/sand-wedge.cc b/src/sand-wedge.cc index 0b77d199..14806f47 100644 --- a/src/sand-wedge.cc +++ b/src/sand-wedge.cc @@ -488,16 +488,19 @@ int main(int argc, char *argv[]) { parset.get<double>("boundary.friction.V0")); auto const finalTime = parset.get<double>("problem.finalTime"); - auto const timeSteps = parset.get<size_t>("timeSteps.number"); - auto const relativeTau = 1.0 / timeSteps; - for (size_t timeStep = 1; timeStep <= timeSteps; ++timeStep) { - auto const relativeTime = double(timeStep) / double(timeSteps); + auto const relativeTau = 1.0 / parset.get<size_t>("timeSteps.number"); + double relativeTime = 0.0; + size_t timeStep = 1; + while (relativeTime < 1.0 - 1e-10) { + CoupledTimeStepper<NonlinearFactory, StateUpdater<ScalarVector, Vector>, TimeSteppingScheme<Vector, Matrix, Function, dims>> coupledTimeStepper(finalTime, factory, parset, myGlobalFriction, stateUpdater, velocityUpdater, computeExternalForces); coupledTimeStepper.step(relativeTime, relativeTau); + relativeTime += relativeTau; + Vector u, ur, vr; ScalarVector alpha; velocityUpdater->extractDisplacement(u); @@ -521,6 +524,7 @@ int main(int argc, char *argv[]) { body.getPoissonRatio(), u, stress); vtkWriter.write(timeStep, ur, vr, alpha, stress); } + timeStep++; } Python::stop(); } -- GitLab