diff --git a/src/adaptivetimestepper.cc b/src/adaptivetimestepper.cc
index 2739e711c784b61b40b6f2cfc8efbf47a8f71989..1be9b39924b4c5f351345b3b5dd831d468a954fa 100644
--- a/src/adaptivetimestepper.cc
+++ b/src/adaptivetimestepper.cc
@@ -74,16 +74,16 @@ bool AdaptiveTimeStepper<Factory, Updaters, ErrorNorm>::coarsen() {
 template <class Factory, class Updaters, class ErrorNorm>
 void AdaptiveTimeStepper<Factory, Updaters, ErrorNorm>::refine() {
   while (true) {
-    Updaters F2 = current_.clone();
-    Updaters F1;
+    Updaters F1 = current_.clone();
+    Updaters F2;
     {
       MyCoupledTimeStepper coupledTimeStepper(finalTime_, factory_, parset_,
-                                              globalFriction_, F2, errorNorm_,
+                                              globalFriction_, F1, errorNorm_,
                                               externalForces_);
       stepAndReport("F1", coupledTimeStepper, relativeTime_,
                     relativeTau_ / 2.0);
 
-      F1 = F2.clone();
+      F2 = F1.clone();
       stepAndReport("F2", coupledTimeStepper,
                     relativeTime_ + relativeTau_ / 2.0, relativeTau_ / 2.0);
     }