From b320324e904ff4adec1aca4b9eb91c6d11d55602 Mon Sep 17 00:00:00 2001
From: Juan Escobar <juan.escobar@aero.obs-mip.fr>
Date: Thu, 3 Apr 2014 08:58:32 +0000
Subject: [PATCH] Juan 28/03/2014: for pb with emissivity/aerosol reset
 X/MNH/SURF_TINY=1.0e-80 in real8 case

---
 src/MNH/ini_cst.f90     | 8 ++++++--
 src/SURFEX/ini_csts.F90 | 9 +++++++++
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/MNH/ini_cst.f90 b/src/MNH/ini_cst.f90
index 1fe3dc762..b8f02fcb1 100644
--- a/src/MNH/ini_cst.f90
+++ b/src/MNH/ini_cst.f90
@@ -66,6 +66,7 @@ END MODULE MODI_INI_CST
 !!      V. Masson   05/10/98  add XRHOLI
 !!      C. Mari     31/10/00  add NDAYSEC
 !!      V. Masson   01/03/03  add XCONDI
+!!      J. Escobar  28/03/2014 for pb with emissivity/aerosol reset XMNH_TINY=1.0e-80 in real8 case 
 !!
 !-------------------------------------------------------------------------------
 !
@@ -156,22 +157,25 @@ XALPI  = LOG(XESTT) + (XBETAI /XTT) + (XGAMI *LOG(XTT))
 !   Some machine precision value depending of real4/8 use  
 !
 
-XMNH_TINY    = TINY    (XMNH_TINY    )
-XMNH_TINY_12 = SQRT    (XMNH_TINY    )
+
 XMNH_EPSILON = EPSILON (XMNH_EPSILON )
 XMNH_HUGE    = HUGE    (XMNH_HUGE )
 
 #ifdef MNH_MPI_DOUBLE_PRECISION
+XMNH_TINY      = 1.0e-80
 XEPS_DT        = 1.0e-5
 XRES_FLAT_CART = 1.0e-12
 XRES_OTHER     = 1.0e-9
 XRES_PREP      = 1.0e-8
 #else
+XMNH_TINY      = TINY    (XMNH_TINY    )
 XEPS_DT        = 1.0e-4
 XRES_FLAT_CART = 1.0e-12
 XRES_OTHER     = 1.0e-7
 XRES_PREP      = 1.0e-4
 #endif
+XMNH_TINY_12 = SQRT    (XMNH_TINY    )
+
 
 
 !
diff --git a/src/SURFEX/ini_csts.F90 b/src/SURFEX/ini_csts.F90
index a76d2786c..4859d7870 100644
--- a/src/SURFEX/ini_csts.F90
+++ b/src/SURFEX/ini_csts.F90
@@ -46,6 +46,7 @@
 !!      C. Mari     31/10/00  add NDAYSEC
 !!      V. Masson   01/03/03  add XCONDI
 !!      A. Voldoire 01/12/09  add XTTSI, XICEC, XTTS for ESM
+!!      J. Escobar  28/03/2014 for pb with emissivity/aerosol reset XSURF_TINY=1.0e-80 in real8 case 
 !!
 !-------------------------------------------------------------------------------
 !
@@ -76,7 +77,15 @@ REAL(KIND=JPRB) :: ZHOOK_HANDLE
 
 IF (LHOOK) CALL DR_HOOK('INI_CSTS',0,ZHOOK_HANDLE)
 
+#ifdef MNH
+#ifdef MNH_MPI_DOUBLE_PRECISION
+XSURF_TINY    = 1.0e-80
+#else
 XSURF_TINY    = TINY    (XSURF_TINY    )
+#endif
+#else
+XSURF_TINY    = 1.0e-80
+#endif
 XSURF_TINY_12 = SQRT    (XSURF_TINY    )
 XSURF_EPSILON = EPSILON (XSURF_EPSILON ) * 10.0
 
-- 
GitLab