diff --git a/src/MNH/p_abs.f90 b/src/MNH/p_abs.f90 index 16f888bc871cd2519f079ed9883dd8e8aa7fb27f..82f03829b11a2a01f3b14a0e4e73c7ddbbc618b9 100644 --- a/src/MNH/p_abs.f90 +++ b/src/MNH/p_abs.f90 @@ -120,7 +120,7 @@ USE MODD_REF, ONLY: LBOUSS USE MODE_ll USE MODE_REPRO_SUM ! -#ifdef MNH_BITREP +#if defined(MNH_BITREP) || defined(MNH_BITREP_OMP) USE MODI_BITREP #endif ! @@ -243,7 +243,7 @@ IF ( CEQNSYS=='DUR' .OR. CEQNSYS=='MAE' ) THEN DO JJ = IJB,IJE DO JI = IIB,IIE ZMASSGUESS_2D(JI,JJ) = ZMASSGUESS_2D(JI,JJ) + & -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) (PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK))**ZCVD_O_RD & #else BR_POW((PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK)),ZCVD_O_RD) & @@ -261,7 +261,7 @@ IF ( CEQNSYS=='DUR' .OR. CEQNSYS=='MAE' ) THEN DO JJ = IJB,IJE DO JI = IIB,IIE ZMASSGUESS_2D(JI,JJ) = ZMASSGUESS_2D(JI,JJ) + & -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) (PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK))**ZCVD_O_RD & #else BR_POW((PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK)),ZCVD_O_RD) & @@ -295,7 +295,7 @@ IF ( CEQNSYS=='DUR' .OR. CEQNSYS=='MAE' ) THEN DO JJ = IJB,IJE DO JI = IIB,IIE ZMASSGUESS_2D(JI,JJ) = ZMASSGUESS_2D(JI,JJ) + & -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) (PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK))**ZCVD_O_RD & #else BR_POW((PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK)),ZCVD_O_RD) & @@ -309,7 +309,7 @@ IF ( CEQNSYS=='DUR' .OR. CEQNSYS=='MAE' ) THEN DO JJ = IJB,IJE DO JI = IIB,IIE ZMASSGUESS_2D(JI,JJ) = ZMASSGUESS_2D(JI,JJ) + & -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) (PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK))**ZCVD_O_RD & #else BR_POW((PEXNREF(JI,JJ,JK)+PPHIT(JI,JJ,JK)),ZCVD_O_RD) & @@ -343,7 +343,7 @@ ELSEIF( CEQNSYS == 'LHE' ) THEN IF (LBOUSS) THEN ZRHOREF(:,:,:) = PRHODREF(:,:,:) ELSE -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) ZRHOREF(:,:,:) = PEXNREF(:,:,:) ** ZCVD_O_RD & #else ZRHOREF(:,:,:) = BR_POW( PEXNREF(:,:,:), ZCVD_O_RD )& diff --git a/src/MNH/pressurez.f90 b/src/MNH/pressurez.f90 index ee3bbf18be8ebcf6b0de7e34f6f6a86576f6fbc9..92cb564261eb006f752a59d619546b292260e27a 100644 --- a/src/MNH/pressurez.f90 +++ b/src/MNH/pressurez.f90 @@ -247,7 +247,7 @@ USE MODE_MPPDB USE MODE_MSG USE MODE_SUM2_ll, ONLY: GMAXLOC_ll ! -#ifdef MNH_BITREP +#if defined(MNH_BITREP) || defined(MNH_BITREP_OMP) USE MODI_BITREP #endif USE MODI_CONJGRAD @@ -546,7 +546,7 @@ IF(CEQNSYS=='MAE' .OR. CEQNSYS=='DUR') THEN ENDWHERE ENDIF ! -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) ZPHIT(:,:,:)=(PPABST(:,:,:)/XP00)**(XRD/XCPD)-PEXNREF(:,:,:) #else ZPHIT(:,:,:)=BR_POW(PPABST(:,:,:)/XP00,XRD/XCPD)-PEXNREF(:,:,:) @@ -830,7 +830,7 @@ IF ((ZMAX_ll > 1.E-12) .AND. KTCOUNT >0 ) THEN PRVREF, PEXNREF, ZPHIT, ZPHI0 ) ! IF(CEQNSYS=='MAE' .OR. CEQNSYS=='DUR') THEN -#ifndef MNH_BITREP +#if !defined(MNH_BITREP) && !defined(MNH_BITREP_OMP) PPABST(:,:,:)=XP00*(ZPHIT+PEXNREF)**(XCPD/XRD) #else PPABST(:,:,:)=XP00*BR_POW((ZPHIT+PEXNREF),(XCPD/XRD)) diff --git a/src/ZSOLVER/modeln.f90 b/src/ZSOLVER/modeln.f90 index 9b7ece1a6c90222eea6f1d307f74324ef4fa6ed8..ce37ab13b86dab14b34389ce438acddfa791483b 100644 --- a/src/ZSOLVER/modeln.f90 +++ b/src/ZSOLVER/modeln.f90 @@ -459,6 +459,9 @@ USE MODI_WRITE_LFIFM_n USE MODI_WRITE_SERIES_n USE MODI_WRITE_STATION_n USE MODI_WRITE_SURF_ATM_N +#ifdef MNH_BITREP_OMP +USE MODI_BITREPZ +#endif ! IMPLICIT NONE ! @@ -1649,6 +1652,10 @@ XTIME_LES_BU_PROCESS = 0. !$acc data copyin (XTKET, XRSVS_CLD) & !$acc & copy (XRTKES, XRSVS) & !$acc & copyout(XRTKEMS) +#ifdef MNH_BITREP_OMP +CALL SBR_FZ(XRRS_CLD) +CALL SBR_FZ(XRT) +#endif CALL ADVECTION_METSV ( TZBAKFILE, CUVW_ADV_SCHEME, & CMET_ADV_SCHEME, CSV_ADV_SCHEME, CCLOUD, NSPLIT, & LSPLIT_CFL, XSPLIT_CFL, LCFL_WRIT, &