diff --git a/src/MNH/rain_ice_nucleation.f90 b/src/MNH/rain_ice_nucleation.f90
index c5b38273f03ac6192aacb2aff0b53f8f9d240fbe..509e7ddab2a1cd9a4716fffc38c12fec384141ca 100644
--- a/src/MNH/rain_ice_nucleation.f90
+++ b/src/MNH/rain_ice_nucleation.f90
@@ -196,15 +196,21 @@ IF( INEGT >= 1 ) THEN
     ZZW(1:INEGT) = XNU20 * BR_EXP( XALPHA2*ZSSI(1:INEGT)-XBETA2 )
 #endif
   END WHERE
-  WHERE( (ZZT(1:INEGT)<=XTT-2.0) .AND. (ZZT(1:INEGT)>=XTT-5.0) .AND. (ZSSI(1:INEGT)>0.0) )
+
 #ifndef MNH_BITREP
+  WHERE( (ZZT(1:INEGT)<=XTT-2.0) .AND. (ZZT(1:INEGT)>=XTT-5.0) .AND. (ZSSI(1:INEGT)>0.0) )     
     ZZW(1:INEGT) = MAX( XNU20 * EXP( -XBETA2 ),XNU10 * EXP( -XBETA1*(ZZT(1:INEGT)-XTT) ) * &
-                               ( ZSSI(1:INEGT)/ZUSW(1:INEGT) )**XALPHA1 )
+         ( ZSSI(1:INEGT)/ZUSW(1:INEGT) )**XALPHA1 )
+ END WHERE    
 #else
-    ZZW(1:INEGT) = MAX( XNU20 * BR_EXP( -XBETA2 ),XNU10 * BR_EXP( -XBETA1*(ZZT(1:INEGT)-XTT) ) * &
-                               BR_POW( ZSSI(1:INEGT)/ZUSW(1:INEGT),XALPHA1 ) )
+ DO CONCURRENT ( JL=1:INEGT )
+    IF ( (ZZT(JL)<=XTT-2.0) .AND. (ZZT(JL)>=XTT-5.0) .AND. (ZSSI(JL)>0.0) ) THEN
+       ZZW(JL) = MAX( XNU20 * BR_EXP( -XBETA2 ),XNU10 * BR_EXP( -XBETA1*(ZZT(JL)-XTT) ) * &
+            BR_POW( ZSSI(JL)/ZUSW(JL),XALPHA1 ) )
+    END IF
+ END DO ! CONCURRENT
 #endif
-  END WHERE
+
   ZZW(1:INEGT) = ZZW(1:INEGT) - ZCIT(1:INEGT)
   ZZWMAX = MAXVAL(ZZW(1:INEGT))
 !$acc end kernels