diff --git a/src/hydro/Gadget2/hydro.h b/src/hydro/Gadget2/hydro.h
index 997ecaff544de673ef8ac94d37c00243f4c663e0..d8380fe5a3e59298169d21f609b9dbdb3652ab01 100644
--- a/src/hydro/Gadget2/hydro.h
+++ b/src/hydro/Gadget2/hydro.h
@@ -87,19 +87,21 @@ __attribute__((always_inline))
   /* Finish the calculation by inserting the missing h-factors */
   p->rho *= ih * ih2;
   p->rho_dh *= ih4;
-  p->density.wcount *= (4.0f / 3.0 * M_PI * kernel_gamma3);
-  p->density.wcount_dh *= ih * (4.0f / 3.0 * M_PI * kernel_gamma3);
+  p->density.wcount *= (4.0f / 3.0f * M_PI * kernel_gamma3);
+  p->density.wcount_dh *= ih * (4.0f / 3.0f * M_PI * kernel_gamma3);
 
+  const float irho = 1.f / p->rho;
+  
   /* Compute the derivative term */
-  p->rho_dh = 1.f / (1.f + 0.33333333f * p->h * p->rho_dh / p->rho);
+  p->rho_dh = 1.f / (1.f + 0.33333333f * p->h * p->rho_dh * irho);
 
   /* Finish calculation of the velocity curl components */
-  p->density.rot_v[0] *= ih4 / p->rho;
-  p->density.rot_v[1] *= ih4 / p->rho;
-  p->density.rot_v[2] *= ih4 / p->rho;
+  p->density.rot_v[0] *= ih4 * irho;
+  p->density.rot_v[1] *= ih4 * irho;
+  p->density.rot_v[2] *= ih4 * irho;
 
   /* Finish calculation of the velocity divergence */
-  p->div_v *= ih4 / p->rho;
+  p->div_v *= ih4 * irho;
 }
 
 /**