diff --git a/lib/nBodySim.cpp b/lib/nBodySim.cpp
index cf6a5f778dd6e9c5acc5964ccfa1606a65102589..c49c23074b08a2b0994728d78b74a7270a85d72e 100644
--- a/lib/nBodySim.cpp
+++ b/lib/nBodySim.cpp
@@ -82,6 +82,7 @@ void nBodySim::runSimulation(double dt, unsigned nSteps) {
         drift(dt);
         treeUpdateForces();
         kick(dt/2.0);
+        updateTree();
         auto stop = std::chrono::high_resolution_clock::now();
         auto duration = std::chrono::duration_cast<std::chrono::milliseconds>(stop - start);
 
@@ -94,7 +95,6 @@ void nBodySim::runSimulation(double dt, unsigned nSteps) {
                                 // << ", E = "   << std::setw(12) << calculateTotalEnergy()
                                 << ", T = "   << std::setw(8)  << duration.count()/1000.0 << " s"
                                 << std::endl;
-        updateTree();
     }
     positionsFile.close();
 }