diff --git a/src/MNH/tridiag_thermo.f90 b/src/MNH/tridiag_thermo.f90
index 8d3954f66469b2d3325e2c00d3a868e0038f179e..eefe1b37a7c740249b069e433d93e044e142d6e2 100644
--- a/src/MNH/tridiag_thermo.f90
+++ b/src/MNH/tridiag_thermo.f90
@@ -398,7 +398,9 @@ END DO !CONCURRENT
 !*       3.3 going down
 !            ----------
 !
+!$acc loop seq
 DO JK = IKE-KKL,IKB,-1*KKL
+   !$acc loop gang, vector collapse(2)
    DO CONCURRENT ( JI=1:JIU,JJ=1:JJU)
       PVARP(JI,JJ,JK) = PVARP(JI,JJ,JK) - ZGAM(JI,JJ,JK+KKL) * PVARP(JI,JJ,JK+KKL)
    END DO !CONCURRENT
diff --git a/src/MNH/tridiag_tke.f90 b/src/MNH/tridiag_tke.f90
index b4743a2123ed7607ebce235b476e6b9b1284155b..135d4c31995a6c143bc462ebb8f533eb0e2b44a2 100644
--- a/src/MNH/tridiag_tke.f90
+++ b/src/MNH/tridiag_tke.f90
@@ -291,7 +291,9 @@ IF ( PIMPL > 1.E-10 ) THEN
   !
   !  going down
   !
+  !$acc loop seq
   DO JK = IKE-KKL,IKB,-1*KKL
+     !$acc loop gang, vector collapse(2)
      DO CONCURRENT ( JI=1:JIU,JJ=1:JJU)
         PVARP(JI,JJ,JK) = PVARP(JI,JJ,JK) - ZGAM(JI,JJ,JK+KKL) * PVARP(JI,JJ,JK+KKL)
      END DO !CONCURRENT   
diff --git a/src/MNH/tridiag_wind.f90 b/src/MNH/tridiag_wind.f90
index bc7697d9dae020c8941f101a1a11a9e4d807bba8..0152538c27395a50e8181b77d16c9a0ac7e15864 100644
--- a/src/MNH/tridiag_wind.f90
+++ b/src/MNH/tridiag_wind.f90
@@ -300,7 +300,9 @@ IF ( PIMPL > 1.E-10 ) THEN
   !
   !  going down 
   !
+  !$acc loop seq
   DO JK = IKE-KKL,IKB,-1*KKL
+     !$acc loop gang, vector collapse(2)
       DO CONCURRENT ( JI=1:JIU,JJ=1:JJU)
          PVARP(JI,JJ,JK) = PVARP(JI,JJ,JK) - ZGAM(JI,JJ,JK+KKL) * PVARP(JI,JJ,JK+KKL)
       END DO !CONCURRENT