diff --git a/src/MNH/rain_ice_sedimentation_split.f90 b/src/MNH/rain_ice_sedimentation_split.f90 index 91eb1eda97836cafcb41e49edeef7bc212d12a33..b59d8305e96cebe983362f9a61dc8b67c393fa40 100644 --- a/src/MNH/rain_ice_sedimentation_split.f90 +++ b/src/MNH/rain_ice_sedimentation_split.f90 @@ -147,6 +147,7 @@ REAL, DIMENSION(:,:,:), POINTER, CONTIGUOUS :: ZW ! Work array REAL, DIMENSION(:,:,:), POINTER, CONTIGUOUS :: ZWSED ! sedimentation fluxes INTEGER :: IIU,IJU,IKU, IIJKU +LOGICAL :: GKRR_7,GSEDIC ! !------------------------------------------------------------------------------- ! @@ -301,6 +302,12 @@ IF ( PRESENT( PSEA ) ) THEN ELSE GPRESENT_PSEA = .FALSE. END IF +IF ( KRR == 7 ) THEN + GKRR_7 = .TRUE. +ELSE + GKRR_7 = .FALSE. +END IF +GSEDIC = OSEDIC if ( lbudget_rc .and. osedic ) call Budget_store_init( tbudgets(NBUDGET_RC), 'SEDI', prcs(:, :, :) * prhodj(:, :, :) ) if ( lbudget_rr ) call Budget_store_init( tbudgets(NBUDGET_RR), 'SEDI', prrs(:, :, :) * prhodj(:, :, :) ) @@ -426,21 +433,21 @@ DO JN = 1 , KSPLITR IF ( KRR == 7 ) PRHS(:,:,:) = PRHS(:,:,:) + ZPRHS(:,:,:) * ZTSPLITR END IF ! - !$mnh_do_concurrent( JI=KIB:KIE,JJ=KJB:KJE,JK=KKTB:KKTE ) - IF ( OSEDIC ) GSEDIMC(JI,JJ,JK) = & - PRCS(JI,JJ,JK) > ZRTMIN(2) - GSEDIMR(JI,JJ,JK) = & - PRRS(JI,JJ,JK) > ZRTMIN(3) - GSEDIMI(JI,JJ,JK) = & - PRIS(JI,JJ,JK) > ZRTMIN(4) - GSEDIMS(JI,JJ,JK) = & - PRSS(JI,JJ,JK) > ZRTMIN(5) - GSEDIMG(JI,JJ,JK) = & - PRGS(JI,JJ,JK) > ZRTMIN(6) - IF ( KRR == 7 ) GSEDIMH(JI,JJ,JK) = & - PRHS(JI,JJ,JK) > ZRTMIN(7) - !$mnh_end_do() ! CONCURRENT -!$acc end kernels + ! mnh_do_concurrent( JI=KIB:KIE,JJ=KJB:KJE,JK=KKTB:KKTE ) + IF ( GSEDIC ) GSEDIMC(:,:,:) = & + PRCS(:,:,:) > ZRTMIN(2) + GSEDIMR(:,:,:) = & + PRRS(:,:,:) > ZRTMIN(3) + GSEDIMI(:,:,:) = & + PRIS(:,:,:) > ZRTMIN(4) + GSEDIMS(:,:,:) = & + PRSS(:,:,:) > ZRTMIN(5) + GSEDIMG(:,:,:) = & + PRGS(:,:,:) > ZRTMIN(6) + IF ( GKRR_7 ) GSEDIMH(:,:,:) = & + PRHS(:,:,:) > ZRTMIN(7) + ! mnh_end_do() ! CONCURRENT + !$acc end kernels ! #ifndef MNH_OPENACC IF ( OSEDIC ) ISEDIMC = COUNTJV( GSEDIMC(:,:,:), IC1(:), IC2(:), IC3(:) )