Skip to content
Snippets Groups Projects
Commit 272dd095 authored by WAUTELET Philippe's avatar WAUTELET Philippe
Browse files

Philippe 22/03/2019: SURFEX: use MNH_REAL key instead of MNH_MPI_DOUBLE_PRECISION

parent 709ba804
No related branches found
No related tags found
No related merge requests found
...@@ -54,6 +54,9 @@ ...@@ -54,6 +54,9 @@
! ------------ ! ------------
! !
USE MODD_CSTS USE MODD_CSTS
#ifdef SFX_MNH
USE MODD_PRECISION, ONLY: MNHREAL
#endif
! !
! !
USE YOMHOOK ,ONLY : LHOOK, DR_HOOK USE YOMHOOK ,ONLY : LHOOK, DR_HOOK
...@@ -78,10 +81,12 @@ REAL(KIND=JPRB) :: ZHOOK_HANDLE ...@@ -78,10 +81,12 @@ REAL(KIND=JPRB) :: ZHOOK_HANDLE
IF (LHOOK) CALL DR_HOOK('INI_CSTS',0,ZHOOK_HANDLE) IF (LHOOK) CALL DR_HOOK('INI_CSTS',0,ZHOOK_HANDLE)
#ifdef SFX_MNH #ifdef SFX_MNH
#ifdef MNH_MPI_DOUBLE_PRECISION #if (MNH_REAL == 8)
XSURF_TINY = 1.0e-80 XSURF_TINY = 1.0e-80_MNHREAL
#else #elif (MNH_REAL == 4)
XSURF_TINY = TINY (XSURF_TINY ) XSURF_TINY = TINY (XSURF_TINY )
#else
#error "Invalid MNH_REAL"
#endif #endif
#else #else
XSURF_TINY = 1.0e-80 XSURF_TINY = 1.0e-80
......
...@@ -33,6 +33,9 @@ MODULE MODD_SURF_PAR ...@@ -33,6 +33,9 @@ MODULE MODD_SURF_PAR
!* 0. DECLARATIONS !* 0. DECLARATIONS
! ------------ ! ------------
! !
#ifdef SFX_MNH
USE MODD_PRECISION, ONLY: MNHREAL
#endif
! !
IMPLICIT NONE IMPLICIT NONE
! !
...@@ -43,10 +46,12 @@ INTEGER :: NBUGFIX ! bugfix number of this version ...@@ -43,10 +46,12 @@ INTEGER :: NBUGFIX ! bugfix number of this version
#ifndef SFX_MNH #ifndef SFX_MNH
REAL, PARAMETER :: XUNDEF = 1.E+20 REAL, PARAMETER :: XUNDEF = 1.E+20
#else #else
#ifdef MNH_MPI_DOUBLE_PRECISION #if (MNH_REAL == 8)
REAL, PARAMETER :: XUNDEF = 1.E+20! HUGE(XUNDEF) ! Z'7FFFFFFFFFFFFFFF' ! undefined value REAL, PARAMETER :: XUNDEF = 1.E+20_MNHREAL ! HUGE(XUNDEF) ! Z'7FFFFFFFFFFFFFFF' ! undefined value
#elif (MNH_REAL == 4)
REAL, PARAMETER :: XUNDEF = 1.E+9_MNHREAL ! HUGE(XUNDEF) ! Z'7FBFFFFF' ! undefined value
#else #else
REAL, PARAMETER :: XUNDEF = 1.E+9 ! HUGE(XUNDEF) ! Z'7FBFFFFF' ! undefined value #error "Invalid MNH_REAL"
#endif #endif
#endif #endif
INTEGER, PARAMETER :: NUNDEF = 1E+9 ! HUGE(NUNDEF) ! undefined value INTEGER, PARAMETER :: NUNDEF = 1E+9 ! HUGE(NUNDEF) ! undefined value
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment