From 4c462f17dbf436ee93d27fece3a307c63dedcf8d Mon Sep 17 00:00:00 2001 From: Matthieu Schaller <matthieu.schaller@durham.ac.uk> Date: Sat, 13 Feb 2016 13:46:04 +0000 Subject: [PATCH] Get rid of unnecessary divisions --- src/hydro/Gadget2/hydro.h | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/hydro/Gadget2/hydro.h b/src/hydro/Gadget2/hydro.h index 997ecaff54..d8380fe5a3 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; } /** -- GitLab