From a762d509fa2c25d8f71e61103cc79dd6d024e0e9 Mon Sep 17 00:00:00 2001
From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr>
Date: Thu, 21 Nov 2019 11:33:22 +0100
Subject: [PATCH] Philippe 21/11/2019: MNH_BITREP for tke_eps_sources

---
 src/MNH/tke_eps_sources.f90 | 22 +++++++++++++++++++++-
 1 file changed, 21 insertions(+), 1 deletion(-)

diff --git a/src/MNH/tke_eps_sources.f90 b/src/MNH/tke_eps_sources.f90
index d56af9565..80ee897c4 100644
--- a/src/MNH/tke_eps_sources.f90
+++ b/src/MNH/tke_eps_sources.f90
@@ -327,7 +327,11 @@ IKB=KKA+JPVEXT_TURB*KKL
 IKE=KKU-JPVEXT_TURB*KKL
 !
 ! compute the effective diffusion coefficient at the mass point
-ZKEFF(:,:,:) = PLM(:,:,:) * SQRT(PTKEM(:,:,:)) 
+#ifndef MNH_BITREP
+ZKEFF(:,:,:) = PLM(:,:,:) * SQRT(PTKEM(:,:,:))
+#else
+ZKEFF(:,:,:) = PLM(:,:,:) * BR_POW(PTKEM(:,:,:),0.5)
+#endif
 !
 !----------------------------------------------------------------------------
 !
@@ -356,7 +360,11 @@ PDP(:,:,IKB) = PDP(:,:,IKB) * (1. + PDZZ(:,:,IKB+KKL)/PDZZ(:,:,IKB))
 !
 ! Compute the source terms for TKE: ( ADVECtion + NUMerical DIFFusion + ..)
 ! + (Dynamical Production) + (Thermal Production) - (dissipation) 
+#ifndef MNH_BITREP
 ZFLX(:,:,:) = XCED * SQRT(PTKEM(:,:,:)) / PLEPS(:,:,:)
+#else
+ZFLX(:,:,:) = XCED * BR_POW(PTKEM(:,:,:),0.5) / PLEPS(:,:,:)
+#endif
 ZSOURCE(:,:,:) = PRTKES(:,:,:) / PRHODJ(:,:,:)  +  PRTKESM(:,:,:) / PRHODJ(:,:,:) &
    - PTKEM(:,:,:) / PTSTEP &
    + PDP(:,:,:) + PTP(:,:,:) + PTR(:,:,:) - PEXPL * ZFLX(:,:,:) * PTKEM(:,:,:)
@@ -500,7 +508,11 @@ IF (LBUDGET_TKE) THEN
 ! add the dissipation
 !
 !$acc kernels
+#ifndef MNH_BITREP
 PRTKES(:,:,:) = PRTKES(:,:,:) - XCED * SQRT(PTKEM(:,:,:)) / PLEPS(:,:,:) * &
+#else
+PRTKES(:,:,:) = PRTKES(:,:,:) - XCED * BR_POW(PTKEM(:,:,:),0.5) / PLEPS(:,:,:) * &
+#endif
                 (PEXPL*PTKEM(:,:,:) + PIMPL*ZRES(:,:,:)) * PRHODJ(:,:,:)
 !$acc end kernels
 !$acc update self(PRTKES)
@@ -527,7 +539,11 @@ END IF
 !             -------------------------------
 !
 !$acc kernels
+#ifndef MNH_BITREP
 PRTHLS(:,:,:) = PRTHLS(:,:,:) + XCED * SQRT(PTKEM(:,:,:)) / PLEPS(:,:,:) * &
+#else
+PRTHLS(:,:,:) = PRTHLS(:,:,:) + XCED * BR_POW(PTKEM(:,:,:),0.5) / PLEPS(:,:,:) * &
+#endif
                 (PEXPL*PTKEM(:,:,:) + PIMPL*ZRES(:,:,:)) * PRHODJ(:,:,:) * PCOEF_DISS(:,:,:)
 !
 !----------------------------------------------------------------------------
@@ -535,7 +551,11 @@ PRTHLS(:,:,:) = PRTHLS(:,:,:) + XCED * SQRT(PTKEM(:,:,:)) / PLEPS(:,:,:) * &
 !*       4.   STORES SOME DIAGNOSTICS
 !             -----------------------
 !
+#ifndef MNH_BITREP
 PDISS(:,:,:) =  -XCED * (PTKEM(:,:,:)**1.5) / PLEPS(:,:,:)
+#else
+PDISS(:,:,:) =  -XCED * BR_POW(PTKEM(:,:,:),1.5) / PLEPS(:,:,:)
+#endif
 !$acc end kernels
 !
 IF ( OTURB_DIAG .AND. OCLOSE_OUT ) THEN
-- 
GitLab