Index: /LMDZ4/trunk/libf/phylmd/clmain.F
===================================================================
--- /LMDZ4/trunk/libf/phylmd/clmain.F	(revision 589)
+++ /LMDZ4/trunk/libf/phylmd/clmain.F	(revision 590)
@@ -241,4 +241,9 @@
 c
       REAL yt2m(klon), yq2m(klon), yu10m(klon)
+c -- LOOP
+       REAL yu10mx(klon)
+       REAL yu10my(klon)
+       REAL ywindsp(klon)
+c -- LOOP
 c
       REAL uzon(klon), vmer(klon)
@@ -351,5 +356,9 @@
       ytsoil = 999999.
       yrugoro = 0.
-
+c -- LOOP
+      yu10mx = 0.0
+      yu10my = 0.0
+      ywindsp = 0.0
+c -- LOOP
       DO nsrf = 1, nbsrf
       DO i = 1, klon
@@ -458,4 +467,9 @@
         ypaprs(j,klev+1) = paprs(i,klev+1)
         y_run_off_lic_0(j) = run_off_lic_0(i)
+c -- LOOP
+       yu10mx(j) = u10m(i,nsrf)
+       yu10my(j) = v10m(i,nsrf)
+       ywindsp(j) = SQRT(yu10mx(j)*yu10mx(j) + yu10my(j)*yu10my(j) )
+c -- LOOP
       END DO
 C
@@ -667,5 +681,8 @@
      e          yt,yq,yts,ypaprs,ypplay,
      e          ydelp,yrads,yalb, yalblw, ysnow, yqsurf, 
-     e          yrain_f, ysnow_f, yfder, ytaux, ytauy, 
+     e          yrain_f, ysnow_f, yfder, ytaux, ytauy,
+c -- LOOP
+     e          ywindsp, 
+c -- LOOP
 c$$$     e          ysollw, ysolsw,
      e          ysollw, ysollwdown, ysolsw,yfluxlat,
@@ -900,4 +917,7 @@
      e                delp,radsol,albedo,alblw,snow,qsurf, 
      e                precip_rain, precip_snow, fder, taux, tauy,
+c -- LOOP
+     e                ywindsp,
+c -- LOOP
      $                sollw, sollwdown, swnet,fluxlat, 
      s                pctsrf_new, agesno,
@@ -958,4 +978,10 @@
       character*6 ocean
       integer npas, nexca
+c -- LOOP
+       REAL yu10mx(klon)
+       REAL yu10my(klon)
+       REAL ywindsp(klon)
+c -- LOOP
+
 
 c
@@ -1184,5 +1210,9 @@
      e tq_cdrag, petAcoef, peqAcoef, petBcoef, peqBcoef,
      e precip_rain, precip_snow, sollw, sollwdown, swnet, swdown,
-     e fder, taux, tauy, rugos, rugoro,
+     e fder, taux, tauy, 
+c -- LOOP
+     e ywindsp,
+c -- LOOP
+     e rugos, rugoro,
      e albedo, snow, qsurf,
      e ts, p1lay, psref, radsol,
Index: /LMDZ4/trunk/libf/phylmd/ini_histhf.h
===================================================================
--- /LMDZ4/trunk/libf/phylmd/ini_histhf.h	(revision 589)
+++ /LMDZ4/trunk/libf/phylmd/ini_histhf.h	(revision 590)
@@ -113,9 +113,15 @@
      .                "ave(X)", zsto1,zout)
 c
-c
+c -- LOOP
          CALL histdef(nid_hf, "SWdownOR",
-     .                "Sfce incident SW radiation OR", "W/m^2",
-     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
-     .                "ave(X)", zsto1,zout)
+     .                "Sfce incident SW down radiation OR", "W/m^2",
+     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
+     .                "ave(X)", zsto1,zout)
+c
+         CALL histdef(nid_hf, "SWnetOR",
+     .                "Sfce incident SW net radiation OR", "W/m^2",
+     .                iim,jjmp1,nhori, 1,1,1, -99, 32,
+     .                "ave(X)", zsto1,zout)
+c -- LOOP
 c
          CALL histdef(nid_hf, "LWdownOR",
Index: /LMDZ4/trunk/libf/phylmd/interface_surf.F90
===================================================================
--- /LMDZ4/trunk/libf/phylmd/interface_surf.F90	(revision 589)
+++ /LMDZ4/trunk/libf/phylmd/interface_surf.F90	(revision 590)
@@ -64,5 +64,9 @@
       & tq_cdrag, petAcoef, peqAcoef, petBcoef, peqBcoef, &
       & precip_rain, precip_snow, sollw, sollwdown, swnet, swdown, &
-      & fder, taux, tauy, rugos, rugoro, &
+      & fder, taux, tauy, &
+! -- LOOP
+      & windsp, &
+! -- LOOP
+      & rugos, rugoro, &
       & albedo, snow, qsurf, &
       & tsurf, p1lay, ps, radsol, &
@@ -127,4 +131,7 @@
 !   fder         derivee des flux (pour le couplage)
 !   taux, tauy   tension de vents
+! -- LOOP
+!   windsp       module du vent a 10m
+! -- LOOP
 !   rugos        rugosite
 !   zmasq        masque terre/ocean
@@ -175,4 +182,7 @@
   real, dimension(klon), intent(IN) :: zmasq
   real, dimension(klon), intent(IN) :: taux, tauy, rugos, rugoro
+! -- LOOP
+  real, dimension(klon), intent(IN) :: windsp
+! -- LOOP
   character (len = 6)  :: ocean
   integer              :: npas, nexca ! nombre et pas de temps couplage
@@ -444,6 +454,11 @@
       & ocean, npas, nexca, debut, lafin, &
       & swdown, sollw, precip_rain, precip_snow, evap, tsurf, &
-      & fluxlat, fluxsens, fder, albedo, taux, tauy, zmasq, &
-      & tsurf_new, alb_new, pctsrf_new)
+      & fluxlat, fluxsens, fder, albedo, taux, tauy, &
+! -- LOOP
+      & windsp, &
+! -- LOOP
+      & zmasq, &
+      & tsurf_new, alb_new, &
+      & pctsrf_new)
 
 !    else if (ocean == 'slab  ') then
@@ -498,6 +513,11 @@
       & ocean, npas, nexca, debut, lafin, &
       & swdown, sollw, precip_rain, precip_snow, evap, tsurf, &
-      & fluxlat, fluxsens, fder, albedo, taux, tauy, zmasq, &
-      & tsurf_new, alb_new, pctsrf_new)
+      & fluxlat, fluxsens, fder, albedo, taux, tauy, &
+! -- LOOP
+      & windsp, &
+! -- LOOP
+      & zmasq, &
+      & tsurf_new, alb_new, &
+      & pctsrf_new)
 
 !    else if (ocean == 'slab  ') then
@@ -549,6 +569,11 @@
       & ocean, npas, nexca, debut, lafin, &
       & swdown, sollw, precip_rain, precip_snow, evap, tsurf, &
-      & fluxlat, fluxsens, fder, albedo, taux, tauy, zmasq, &
-      & tsurf_new, alb_new, pctsrf_new)
+      & fluxlat, fluxsens, fder, albedo, taux, tauy, &
+! -- LOOP
+      & windsp, &
+! -- LOOP
+      & zmasq, &
+      & tsurf_new, alb_new, &
+      & pctsrf_new)
 
       tsurf_temp = tsurf_new
@@ -644,6 +669,11 @@
       & ocean, npas, nexca, debut, lafin, &
       & swdown, sollw, precip_rain, precip_snow, evap, tsurf, &
-      & fluxlat, fluxsens, fder, albedo, taux, tauy, zmasq, &
-      & tsurf_new, alb_new, pctsrf_new)
+      & fluxlat, fluxsens, fder, albedo, taux, tauy, &
+! -- LOOP
+      & windsp, &
+! -- LOOP
+      & zmasq, &
+      & tsurf_new, alb_new, &
+      & pctsrf_new)
 
 !    else if (ocean == 'slab  ') then
@@ -1198,6 +1228,11 @@
       & ocean, npas, nexca, debut, lafin, &
       & swdown, lwdown, precip_rain, precip_snow, evap, tsurf, &
-      & fluxlat, fluxsens, fder, albsol, taux, tauy, zmasq, &
-      & tsurf_new, alb_new, pctsrf_new)
+      & fluxlat, fluxsens, fder, albsol, taux, tauy, &
+! -- LOOP
+      & windsp, &
+! -- LOOP
+      & zmasq, &
+      & tsurf_new, alb_new, &
+      & pctsrf_new)
 
 ! Cette routine sert d'interface entre le modele atmospherique et un 
@@ -1242,4 +1277,7 @@
 !   taux         tension de vent en x
 !   tauy         tension de vent en y
+! -- LOOP
+!    windsp       module du vent a 10m
+! -- LOOP
 !   nexca        frequence de couplage
 !   zmasq        masque terre/ocean
@@ -1269,4 +1307,7 @@
   real, dimension(klon), intent(IN) :: precip_rain, precip_snow
   real, dimension(klon), intent(IN) :: tsurf, fder, albsol, taux, tauy
+! -- LOOP
+   real, dimension(klon), intent(IN) :: windsp
+! -- LOOP
   INTEGER              :: nexca, npas, kstep
   real, dimension(klon), intent(IN) :: zmasq
@@ -1281,4 +1322,7 @@
 ! Variables locales
   integer                    :: j, error, sum_error, ig, cpl_index,i
+! -- LOOP
+  INTEGER :: nsrf
+! -- LOOP
   character (len = 20) :: modname = 'interfoce_cpl'
   character (len = 80) :: abort_message
@@ -1288,4 +1332,7 @@
   real, allocatable, dimension(:,:),save :: cpl_snow, cpl_evap, cpl_tsol
   real, allocatable, dimension(:,:),save :: cpl_fder, cpl_albe, cpl_taux
+! -- LOOP
+  real, allocatable, dimension(:,:),save :: cpl_windsp
+! -- LOOP
   real, allocatable, dimension(:,:),save :: cpl_tauy
   REAL, ALLOCATABLE, DIMENSION(:,:),SAVE :: cpl_rriv, cpl_rcoa, cpl_rlic
@@ -1295,4 +1342,7 @@
   real, allocatable, dimension(:,:,:),save :: tmp_snow, tmp_evap, tmp_tsol
   real, allocatable, dimension(:,:,:),save :: tmp_fder, tmp_albe, tmp_taux
+! -- LOOP
+  real, allocatable, dimension(:,:,:),save :: tmp_windsp
+! -- LOOP
 !!$  real, allocatable, dimension(:,:,:),save :: tmp_tauy, tmp_rriv, tmp_rcoa
   REAL, ALLOCATABLE, DIMENSION(:,:,:),SAVE :: tmp_tauy
@@ -1302,4 +1352,7 @@
   REAL, DIMENSION(iim, jjm+1) :: wri_evap_sea, wri_rcoa, wri_rriv
   REAL, DIMENSION(iim, jjm+1) :: wri_rain, wri_snow, wri_taux, wri_tauy
+! -- LOOP
+   REAL, DIMENSION(iim, jjm+1) :: wri_windsp
+! -- LOOP
   REAL, DIMENSION(iim, jjm+1) :: wri_calv
   REAL, DIMENSION(iim, jjm+1) :: wri_tauxx, wri_tauyy, wri_tauzz
@@ -1334,4 +1387,7 @@
 !med  integer :: itau_w
   integer,save :: itau_w
+! -- LOOP
+  integer :: nb_interf_cpl
+! -- LOOP
 #include "param_cou.h"
 #include "inc_cpl.h"
@@ -1369,4 +1425,7 @@
     allocate(cpl_albe(klon,2), stat = error); sum_error = sum_error + error
     allocate(cpl_taux(klon,2), stat = error); sum_error = sum_error + error
+! -- LOOP
+     allocate(cpl_windsp(klon,2), stat = error); sum_error = sum_error + error
+! -- LOOP
     allocate(cpl_tauy(klon,2), stat = error); sum_error = sum_error + error
     ALLOCATE(cpl_rriv(iim,jjm+1), stat=error); sum_error = sum_error + error
@@ -1386,4 +1445,7 @@
     cpl_evap = 0.; cpl_tsol = 0.; cpl_fder = 0.; cpl_albe = 0.
     cpl_taux = 0.; cpl_tauy = 0.; cpl_rriv = 0.; cpl_rcoa = 0.; cpl_rlic = 0.
+! -- LOOP
+     cpl_windsp = 0.
+! -- LOOP
 
     sum_error = 0
@@ -1465,8 +1527,15 @@
 
 ! calcul des fluxs a passer
-
+! -- LOOP
+  nb_interf_cpl = nb_interf_cpl + 1  
+  if (check) write(lunout,*)'passage dans interface_surf.F90 :  ',nb_interf_cpl 
+! -- LOOP
   cpl_index = 1
   if (nisurf == is_sic) cpl_index = 2
   if (cumul) then
+! -- LOOP
+      if (check) write(lunout,*)'passage dans cumul '
+      if (check) write(lunout,*)'valeur de cpl_index ', cpl_index 
+! -- LOOP  
     if (check) write(*,*) modname, 'cumul des champs'
     do ig = 1, knon
@@ -1492,4 +1561,10 @@
       cpl_tauy(ig,cpl_index) = cpl_tauy(ig,cpl_index) &
        &                          + tauy(ig)        / FLOAT(nexca)
+! -- LOOP
+      IF (cpl_index .EQ. 1) THEN
+      cpl_windsp(ig,cpl_index) = cpl_windsp(ig,cpl_index) &
+       &                          + windsp(ig)      / FLOAT(nexca) 
+      ENDIF
+! -- LOOP
     enddo
     IF (cpl_index .EQ. 1) THEN 
@@ -1603,4 +1678,7 @@
       allocate(tmp_taux(iim,jjm+1,2), stat=error); sum_error = sum_error + error
       allocate(tmp_tauy(iim,jjm+1,2), stat=error); sum_error = sum_error + error
+! -- LOOP
+       allocate(tmp_windsp(iim,jjm+1,2), stat=error); sum_error = sum_error + error
+! -- LOOP
 !!$      allocate(tmp_rriv(iim,jjm+1,2), stat=error); sum_error = sum_error + error
 !!$      allocate(tmp_rcoa(iim,jjm+1,2), stat=error); sum_error = sum_error + error
@@ -1625,4 +1703,7 @@
     call gath2cpl(cpl_albe(1,cpl_index), tmp_albe(1,1,cpl_index), klon, knon,iim,jjm,                  knindex)
     call gath2cpl(cpl_taux(1,cpl_index), tmp_taux(1,1,cpl_index), klon, knon,iim,jjm,                  knindex)
+! -- LOOP
+     call gath2cpl(cpl_windsp(1,cpl_index), tmp_windsp(1,1,cpl_index), klon, knon,iim,jjm,             knindex)
+! -- LOOP
     call gath2cpl(cpl_tauy(1,cpl_index), tmp_tauy(1,1,cpl_index), klon, knon,iim,jjm,                  knindex)
 
@@ -1633,4 +1714,7 @@
       wri_rain = 0.; wri_snow = 0.; wri_rcoa = 0.; wri_rriv = 0. 
       wri_taux = 0.; wri_tauy = 0.
+! -- LOOP
+       wri_windsp = 0.
+! -- LOOP      
       call gath2cpl(pctsrf(1,is_oce), tamp_srf(1,1,1), klon, klon, iim, jjm, tamp_ind)
       call gath2cpl(pctsrf(1,is_sic), tamp_srf(1,1,2), klon, klon, iim, jjm, tamp_ind)
@@ -1643,4 +1727,8 @@
       wri_evap_ice = tmp_evap(:,:,2)
       wri_evap_sea = tmp_evap(:,:,1)
+! -- LOOP
+       wri_windsp = tmp_windsp(:,:,1)
+! -- LOOP
+
 !!$PB
       wri_rriv = cpl_rriv(:,:)
@@ -1696,22 +1784,25 @@
 ! envoi au coupleur
 !
-      CALL histwrite(nidct,cl_writ(1),itau_w,wri_sol_ice,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(2),itau_w,wri_sol_sea,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(3),itau_w,wri_nsol_ice,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(4),itau_w,wri_nsol_sea,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(5),itau_w,wri_fder_ice,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(6),itau_w,wri_evap_ice,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(7),itau_w,wri_evap_sea,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(8),itau_w,wri_rain,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(9),itau_w,wri_snow,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(10),itau_w,wri_rcoa,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(11),itau_w,wri_rriv,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(12),itau_w,wri_calv,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(13),itau_w,wri_tauxx,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(14),itau_w,wri_tauyy,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(15),itau_w,wri_tauzz,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(16),itau_w,wri_tauxx,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(17),itau_w,wri_tauyy,iim*(jjm+1),ndexct)
-      CALL histwrite(nidct,cl_writ(18),itau_w,wri_tauzz,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(8),itau_w,wri_sol_ice,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(9),itau_w,wri_sol_sea,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(10),itau_w,wri_nsol_ice,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(11),itau_w,wri_nsol_sea,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(12),itau_w,wri_fder_ice,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(13),itau_w,wri_evap_ice,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(14),itau_w,wri_evap_sea,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(15),itau_w,wri_rain,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(16),itau_w,wri_snow,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(17),itau_w,wri_rcoa,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(18),itau_w,wri_rriv,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(19),itau_w,wri_calv,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(1),itau_w,wri_tauxx,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(2),itau_w,wri_tauyy,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(3),itau_w,wri_tauzz,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(4),itau_w,wri_tauxx,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(5),itau_w,wri_tauyy,iim*(jjm+1),ndexct)
+      CALL histwrite(nidct,cl_writ(6),itau_w,wri_tauzz,iim*(jjm+1),ndexct)
+! -- LOOP
+      CALL histwrite(nidct,cl_writ(7),itau_w,wri_windsp,iim*(jjm+1),ndexct)
+! -- LOOP
       CALL histsync(nidct)
 ! pas utile      IF (lafin) CALL histclo(nidct)
@@ -1723,10 +1814,16 @@
       & wri_nsol_sea, wri_fder_ice, wri_evap_ice, wri_evap_sea, wri_rain, &
       & wri_snow, wri_rcoa, wri_rriv, wri_calv, wri_tauxx, wri_tauyy,     &
-      & wri_tauzz, wri_tauxx, wri_tauyy, wri_tauzz,lafin )
+      & wri_tauzz, wri_tauxx, wri_tauyy, wri_tauzz,                       &
+! -- LOOP
+      & wri_windsp,lafin)
+! -- LOOP
 #else
       call intocpl(itime, (jjm+1)*iim, wri_sol_ice, wri_sol_sea, wri_nsol_ice,&
       & wri_nsol_sea, wri_fder_ice, wri_evap_ice, wri_evap_sea, wri_rain, &
       & wri_snow, wri_rcoa, wri_rriv, wri_calv, wri_tauxx, wri_tauyy,     &
-      & wri_tauzz, wri_tauxx, wri_tauyy, wri_tauzz,lafin )
+      & wri_tauzz, wri_tauxx, wri_tauyy, wri_tauzz,                       &
+! -- LOOP
+      & wri_windsp,lafin)
+! -- LOOP
 #endif
 #endif
@@ -1735,4 +1832,7 @@
       cpl_evap = 0.; cpl_tsol = 0.; cpl_fder = 0.; cpl_albe = 0.
       cpl_taux = 0.; cpl_tauy = 0.; cpl_rriv = 0.; cpl_rcoa = 0.; cpl_rlic = 0.
+! -- LOOP
+      cpl_windsp = 0.
+! -- LOOP
 !
 ! deallocation memoire variables temporaires
@@ -1749,4 +1849,7 @@
       deallocate(tmp_taux, stat=error); sum_error = sum_error + error
       deallocate(tmp_tauy, stat=error); sum_error = sum_error + error
+! -- LOOP
+      deallocate(tmp_windsp, stat=error); sum_error = sum_error + error
+! -- LOOP
 !!$PB
 !!$      deallocate(tmp_rriv, stat=error); sum_error = sum_error + error
Index: /LMDZ4/trunk/libf/phylmd/oasis.F
===================================================================
--- /LMDZ4/trunk/libf/phylmd/oasis.F	(revision 589)
+++ /LMDZ4/trunk/libf/phylmd/oasis.F	(revision 590)
@@ -2,4 +2,5 @@
 ! $Header$
 !
+C $Id$
 C****
 C
Index: /LMDZ4/trunk/libf/phylmd/oasis.dummy
===================================================================
--- /LMDZ4/trunk/libf/phylmd/oasis.dummy	(revision 589)
+++ /LMDZ4/trunk/libf/phylmd/oasis.dummy	(revision 590)
@@ -20,7 +20,17 @@
 c     INCLUDE "param.h"
 c
-      INTEGER kastp, kexch, kstep,imjm
+      INTEGER kastp, kexch, kstep,imjm,klon
       INTEGER iparal(3)
       INTEGER ifcpl, idt, info, imxtag, istep, jf
+
+c -- LOOP
+c 
+#include "dimensions.h"
+      INTEGER jjmp1
+      PARAMETER (jjmp1=jjm+1-1/jjm)
+#include "dimphy.h"
+       REAL zwindsp(klon)
+c
+c -- LOOP
 c
 #include "param_cou.h"
@@ -72,27 +82,30 @@
 c         must be the same as (1) of the field  definition in namcouple:
 c
-      cl_writ(1)='COSHFICE'
-      cl_writ(2)='COSHFOCE'
-      cl_writ(3)='CONSFICE'
-      cl_writ(4)='CONSFOCE'
-      cl_writ(5)='CODFLXDT'
+      cl_writ(8)='COSHFICE'
+      cl_writ(9)='COSHFOCE'
+      cl_writ(10)='CONSFICE'
+      cl_writ(11)='CONSFOCE'
+      cl_writ(12)='CODFLXDT'
 c      cl_writ(6)='COICTEMP'
-      cl_writ(6)='COTFSICE'
-      cl_writ(7)='COTFSOCE'
-      cl_writ(8)='COTOLPSU'
-      cl_writ(9)='COTOSPSU'
-      cl_writ(10)='CORUNCOA'
-      cl_writ(11)='CORIVFLU'
-      cl_writ(12)='COCALVIN'
+      cl_writ(13)='COTFSICE'
+      cl_writ(14)='COTFSOCE'
+      cl_writ(15)='COTOLPSU'
+      cl_writ(16)='COTOSPSU'
+      cl_writ(17)='CORUNCOA'
+      cl_writ(18)='CORIVFLU'
+      cl_writ(19)='COCALVIN'
 c$$$      cl_writ(13)='COZOTAUX'
 c$$$      cl_writ(14)='COZOTAUV'
 c$$$      cl_writ(15)='COMETAUY'
 c$$$      cl_writ(16)='COMETAUU'
-      cl_writ(13)='COTAUXXU'
-      cl_writ(14)='COTAUYYU'
-      cl_writ(15)='COTAUZZU'
-      cl_writ(16)='COTAUXXV'
-      cl_writ(17)='COTAUYYV'
-      cl_writ(18)='COTAUZZV'
+      cl_writ(1)='COTAUXXU'
+      cl_writ(2)='COTAUYYU'
+      cl_writ(3)='COTAUZZU'
+      cl_writ(4)='COTAUXXV'
+      cl_writ(5)='COTAUYYV'
+      cl_writ(6)='COTAUZZV'
+c -- LOOP
+      cl_writ(7)='COWINDSP'
+c -- LOOP
 c
 c     Define files name for fields exchanged from atmos to coupler,
@@ -117,4 +130,7 @@
       cl_f_writ(17)='flxatmos'
       cl_f_writ(18)='flxatmos'
+c -- LOOP
+      cl_f_writ(19)='flxatmos'
+c -- LOOP
 
 c
@@ -310,8 +326,10 @@
 
 c $Id$
+c -- LOOP
       SUBROUTINE intocpl(kt, imjm, fsolice, fsolwat, fnsolice, fnsolwat,
      $    fnsicedt, evice, evwat, lpre, spre, dirunoff, rivrunoff, 
-     $    calving, tauxx_u, tauyy_u, tauzz_u, tauxx_v, tauyy_v, tauzz_v
-     $    , last) 
+     $    calving, tauxx_u, tauyy_u, tauzz_u, tauxx_v, tauyy_v, tauzz_v,
+     $    windsp, last)
+c -- LOOP 
 c ======================================================================
 c S. Valcke (02/99) adapted From L.Z.X Li: this subroutine provides the 
@@ -321,4 +339,16 @@
 c ======================================================================
       IMPLICIT NONE
+c -- LOOP
+c 
+#include "dimensions.h"
+      INTEGER jjmp1
+      PARAMETER (jjmp1=jjm+1-1/jjm)
+#include "dimphy.h"
+c      REAL zu10m(klon), zv10m(klon)
+       REAL zwindsp(klon)
+c
+c -- LOOP
+c
+
       INTEGER kt, imjm
 c
@@ -345,4 +375,7 @@
       REAL tauzz_u(imjm)
       REAL tauzz_v(imjm)
+c -- LOOP
+       REAL windsp(imjm)
+c -- LOOP
       LOGICAL last
 c
@@ -424,41 +457,41 @@
 c         WRITE fields to files          
           DO jf=1, jpflda2o1 + jpflda2o2
-            IF (jf.eq.1)
+            IF (jf.eq.8)
      $          CALL locwrite(cl_writ(jf),fsolice, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.2)
+            IF (jf.eq.9)
      $          CALL locwrite(cl_writ(jf),fsolwat, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.3)
+            IF (jf.eq.10)
      $          CALL locwrite(cl_writ(jf),fnsolice, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.4)
+            IF (jf.eq.11)
      $          CALL locwrite(cl_writ(jf),fnsolwat, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.5)
+            IF (jf.eq.12)
      $          CALL locwrite(cl_writ(jf),fnsicedt, imjm,
      $          file_unit_field(jf), ierror) 
-c            IF (jf.eq.6)
+c            IF (jf.eq.13)
 c     $          CALL locwrite(cl_writ(jf),ictemp, imjm,
 c     $          file_unit_field(jf), ierror) 
-            IF (jf.eq.6)
+            IF (jf.eq.13)
      $          CALL locwrite(cl_writ(jf),evice, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.7)
+            IF (jf.eq.14)
      $          CALL locwrite(cl_writ(jf),evwat, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.8)
+            IF (jf.eq.15)
      $          CALL locwrite(cl_writ(jf),lpre, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.9)
+            IF (jf.eq.16)
      $          CALL locwrite(cl_writ(jf),spre, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.10)
+            IF (jf.eq.17)
      $          CALL locwrite(cl_writ(jf),dirunoff, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.11)
+            IF (jf.eq.18)
      $          CALL locwrite(cl_writ(jf),rivrunoff, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.12)
+            IF (jf.eq.19)
      $          CALL locwrite(cl_writ(jf),calving, imjm,
      $          file_unit_field(jf), ierror) 
@@ -475,22 +508,28 @@
 c$$$     $          CALL locwrite(cl_writ(jf),tauyu, imjm,
 c$$$     $          file_unit_field(jf), ierror) 
-            IF (jf.eq.13)
+            IF (jf.eq.1)
      $          CALL locwrite(cl_writ(jf),tauxx_u, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.14)
+            IF (jf.eq.2)
      $          CALL locwrite(cl_writ(jf),tauyy_u, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.15)
+            IF (jf.eq.3)
      $          CALL locwrite(cl_writ(jf),tauzz_u, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.16)
+            IF (jf.eq.4)
      $          CALL locwrite(cl_writ(jf),tauxx_v, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.17)
+            IF (jf.eq.5)
      $          CALL locwrite(cl_writ(jf),tauyy_v, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.18)
+            IF (jf.eq.6)
      $          CALL locwrite(cl_writ(jf),tauzz_v, imjm,
      $          file_unit_field(jf),ierror)
+c -- LOOP
+            IF (jf.eq.7)
+               CALL locwrite(cl_writ(jf),windsp, imjm,
+     $         file_unit_field(jf),ierror)
+c -- LOOP
+
           END DO 
 C
@@ -522,28 +561,30 @@
           DO jn=1, jpflda2o1 + jpflda2o2
 C            
-          IF (jn.eq.1) CALL CLIM_Export(cl_writ(jn), kt, fsolice, info)
-          IF (jn.eq.2) CALL CLIM_Export(cl_writ(jn), kt, fsolwat, info)
-          IF (jn.eq.3) CALL CLIM_Export(cl_writ(jn), kt, fnsolice, info)
-          IF (jn.eq.4) CALL CLIM_Export(cl_writ(jn), kt, fnsolwat, info)
-          IF (jn.eq.5) CALL CLIM_Export(cl_writ(jn), kt, fnsicedt, info)
+          IF (jn.eq.8) CALL CLIM_Export(cl_writ(jn), kt, fsolice, info)
+          IF (jn.eq.9) CALL CLIM_Export(cl_writ(jn), kt, fsolwat, info)
+         IF (jn.eq.10) CALL CLIM_Export(cl_writ(jn), kt, fnsolice, info)
+         IF (jn.eq.11) CALL CLIM_Export(cl_writ(jn), kt, fnsolwat, info)
+         IF (jn.eq.12) CALL CLIM_Export(cl_writ(jn), kt, fnsicedt, info)
 c          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, ictemp, info)
-          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, evice, info)
-          IF (jn.eq.7) CALL CLIM_Export(cl_writ(jn), kt, evwat, info)
-          IF (jn.eq.8) CALL CLIM_Export(cl_writ(jn), kt, lpre, info)
-          IF (jn.eq.9) CALL CLIM_Export(cl_writ(jn), kt, spre, info)
-          IF (jn.eq.10) CALL CLIM_Export(cl_writ(jn),kt,dirunoff, info)
-          IF (jn.eq.11) CALL CLIM_Export(cl_writ(jn),kt,rivrunoff,info)
-          IF (jn.eq.12) CALL CLIM_Export(cl_writ(jn),kt,calving,info)
+          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, evice, info)
+          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, evwat, info)
+          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, lpre, info)
+          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, spre, info)
+          IF (jn.eq.17) CALL CLIM_Export(cl_writ(jn),kt,dirunoff, info)
+          IF (jn.eq.18) CALL CLIM_Export(cl_writ(jn),kt,rivrunoff,info)
+          IF (jn.eq.19) CALL CLIM_Export(cl_writ(jn),kt,calving,info)
 c$$$          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, tauxu, info)
 c$$$          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, tauxv, info)
 c$$$          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, tauyv, info)
 c$$$          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, tauyu, info)
-          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, tauxx_u, info)
-          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, tauyy_u, info)
-          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, tauzz_u, info)
-          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, tauxx_v, info)
-          IF (jn.eq.17) CALL CLIM_Export(cl_writ(jn), kt, tauyy_v, info)
-          IF (jn.eq.18) CALL CLIM_Export(cl_writ(jn), kt, tauzz_v, info)
-          
+          IF (jn.eq.1) CALL CLIM_Export(cl_writ(jn), kt, tauxx_u, info)
+          IF (jn.eq.2) CALL CLIM_Export(cl_writ(jn), kt, tauyy_u, info)
+          IF (jn.eq.3) CALL CLIM_Export(cl_writ(jn), kt, tauzz_u, info)
+          IF (jn.eq.4) CALL CLIM_Export(cl_writ(jn), kt, tauxx_v, info)
+          IF (jn.eq.5) CALL CLIM_Export(cl_writ(jn), kt, tauyy_v, info)
+          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, tauzz_v, info)
+c -- LOOP
+          IF (jn.eq.7) CALL CLIM_Export(cl_writ(jn), kt, windsp, info)
+c -- LOOP          
             IF (info .NE. CLIM_Ok) THEN
                 WRITE (nuout,*) 'STEP : Pb giving ',cl_writ(jn), ':',jn
Index: /LMDZ4/trunk/libf/phylmd/oasis.true
===================================================================
--- /LMDZ4/trunk/libf/phylmd/oasis.true	(revision 589)
+++ /LMDZ4/trunk/libf/phylmd/oasis.true	(revision 590)
@@ -2,5 +2,4 @@
 ! $Header$
 !
-C $Id$
 C****
 C
@@ -20,7 +19,18 @@
 c     INCLUDE "param.h"
 c
-      INTEGER kastp, kexch, kstep,imjm
+      INTEGER kastp, kexch, kstep,imjm,klon
       INTEGER iparal(3)
       INTEGER ifcpl, idt, info, imxtag, istep, jf
+
+c -- LOOP
+c 
+#include "dimensions.h"
+      INTEGER jjmp1
+      PARAMETER (jjmp1=jjm+1-1/jjm)
+#include "dimphy.h"
+c      REAL zu10m(klon), zv10m(klon)
+       REAL zwindsp(klon)
+c
+c -- LOOP
 c
 #include "param_cou.h"
@@ -43,5 +53,6 @@
 #include "mpiclim.h"
 c
-#include "oasis.h"      ! contains the name of communication technique. Here
+#include "oasis.h"      
+                        ! contains the name of communication technique. Here
                         ! cchan=CLIM only is possible.
 c			! ctype=MPI2
@@ -71,27 +82,30 @@
 c         must be the same as (1) of the field  definition in namcouple:
 c
-      cl_writ(1)='COSHFICE'
-      cl_writ(2)='COSHFOCE'
-      cl_writ(3)='CONSFICE'
-      cl_writ(4)='CONSFOCE'
-      cl_writ(5)='CODFLXDT'
+      cl_writ(8)='COSHFICE'
+      cl_writ(9)='COSHFOCE'
+      cl_writ(10)='CONSFICE'
+      cl_writ(11)='CONSFOCE'
+      cl_writ(12)='CODFLXDT'
 c      cl_writ(6)='COICTEMP'
-      cl_writ(6)='COTFSICE'
-      cl_writ(7)='COTFSOCE'
-      cl_writ(8)='COTOLPSU'
-      cl_writ(9)='COTOSPSU'
-      cl_writ(10)='CORUNCOA'
-      cl_writ(11)='CORIVFLU'
-      cl_writ(12)='COCALVIN'
+      cl_writ(13)='COTFSICE'
+      cl_writ(14)='COTFSOCE'
+      cl_writ(15)='COTOLPSU'
+      cl_writ(16)='COTOSPSU'
+      cl_writ(17)='CORUNCOA'
+      cl_writ(18)='CORIVFLU'
+      cl_writ(19)='COCALVIN'
 c$$$      cl_writ(13)='COZOTAUX'
 c$$$      cl_writ(14)='COZOTAUV'
 c$$$      cl_writ(15)='COMETAUY'
 c$$$      cl_writ(16)='COMETAUU'
-      cl_writ(13)='COTAUXXU'
-      cl_writ(14)='COTAUYYU'
-      cl_writ(15)='COTAUZZU'
-      cl_writ(16)='COTAUXXV'
-      cl_writ(17)='COTAUYYV'
-      cl_writ(18)='COTAUZZV'
+      cl_writ(1)='COTAUXXU'
+      cl_writ(2)='COTAUYYU'
+      cl_writ(3)='COTAUZZU'
+      cl_writ(4)='COTAUXXV'
+      cl_writ(5)='COTAUYYV'
+      cl_writ(6)='COTAUZZV'
+c -- LOOP
+      cl_writ(7)='COWINDSP'
+c -- LOOP
 c
 c     Define files name for fields exchanged from atmos to coupler,
@@ -116,4 +130,7 @@
       cl_f_writ(17)='flxatmos'
       cl_f_writ(18)='flxatmos'
+c -- LOOP
+      cl_f_writ(19)='flxatmos'
+c -- LOOP
 
 c
@@ -311,6 +328,8 @@
       SUBROUTINE intocpl(kt, imjm, fsolice, fsolwat, fnsolice, fnsolwat,
      $    fnsicedt, evice, evwat, lpre, spre, dirunoff, rivrunoff, 
-     $    calving, tauxx_u, tauyy_u, tauzz_u, tauxx_v, tauyy_v, tauzz_v
-     $    , last) 
+     $    calving, tauxx_u, tauyy_u, tauzz_u, tauxx_v, tauyy_v, tauzz_v,
+c -- LOOP
+     $    windsp, last)
+c -- LOOP 
 c ======================================================================
 c S. Valcke (02/99) adapted From L.Z.X Li: this subroutine provides the 
@@ -320,4 +339,16 @@
 c ======================================================================
       IMPLICIT NONE
+c -- LOOP
+c 
+#include "dimensions.h"
+      INTEGER jjmp1
+      PARAMETER (jjmp1=jjm+1-1/jjm)
+#include "dimphy.h"
+c      REAL zu10m(klon), zv10m(klon)
+       REAL zwindsp(klon)
+c
+c -- LOOP
+c
+
       INTEGER kt, imjm
 c
@@ -344,4 +375,7 @@
       REAL tauzz_u(imjm)
       REAL tauzz_v(imjm)
+c -- LOOP
+       REAL windsp(imjm)
+c -- LOOP
       LOGICAL last
 c
@@ -423,41 +457,41 @@
 c         WRITE fields to files          
           DO jf=1, jpflda2o1 + jpflda2o2
-            IF (jf.eq.1)
+            IF (jf.eq.8)
      $          CALL locwrite(cl_writ(jf),fsolice, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.2)
+            IF (jf.eq.9)
      $          CALL locwrite(cl_writ(jf),fsolwat, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.3)
+            IF (jf.eq.10)
      $          CALL locwrite(cl_writ(jf),fnsolice, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.4)
+            IF (jf.eq.11)
      $          CALL locwrite(cl_writ(jf),fnsolwat, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.5)
+            IF (jf.eq.12)
      $          CALL locwrite(cl_writ(jf),fnsicedt, imjm,
      $          file_unit_field(jf), ierror) 
-c            IF (jf.eq.6)
+c            IF (jf.eq.13)
 c     $          CALL locwrite(cl_writ(jf),ictemp, imjm,
 c     $          file_unit_field(jf), ierror) 
-            IF (jf.eq.6)
+            IF (jf.eq.13)
      $          CALL locwrite(cl_writ(jf),evice, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.7)
+            IF (jf.eq.14)
      $          CALL locwrite(cl_writ(jf),evwat, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.8)
+            IF (jf.eq.15)
      $          CALL locwrite(cl_writ(jf),lpre, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.9)
+            IF (jf.eq.16)
      $          CALL locwrite(cl_writ(jf),spre, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.10)
+            IF (jf.eq.17)
      $          CALL locwrite(cl_writ(jf),dirunoff, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.11)
+            IF (jf.eq.18)
      $          CALL locwrite(cl_writ(jf),rivrunoff, imjm,
      $          file_unit_field(jf), ierror) 
-            IF (jf.eq.12)
+            IF (jf.eq.19)
      $          CALL locwrite(cl_writ(jf),calving, imjm,
      $          file_unit_field(jf), ierror) 
@@ -474,22 +508,28 @@
 c$$$     $          CALL locwrite(cl_writ(jf),tauyu, imjm,
 c$$$     $          file_unit_field(jf), ierror) 
-            IF (jf.eq.13)
+            IF (jf.eq.1)
      $          CALL locwrite(cl_writ(jf),tauxx_u, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.14)
+            IF (jf.eq.2)
      $          CALL locwrite(cl_writ(jf),tauyy_u, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.15)
+            IF (jf.eq.3)
      $          CALL locwrite(cl_writ(jf),tauzz_u, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.16)
+            IF (jf.eq.4)
      $          CALL locwrite(cl_writ(jf),tauxx_v, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.17)
+            IF (jf.eq.5)
      $          CALL locwrite(cl_writ(jf),tauyy_v, imjm,
      $          file_unit_field(jf),ierror)
-            IF (jf.eq.18)
+            IF (jf.eq.6)
      $          CALL locwrite(cl_writ(jf),tauzz_v, imjm,
      $          file_unit_field(jf),ierror)
+c -- LOOP
+            IF (jf.eq.7)
+     $          CALL locwrite(cl_writ(jf),windsp, imjm,
+     $         file_unit_field(jf),ierror)
+c -- LOOP
+
           END DO 
 C
@@ -521,28 +561,30 @@
           DO jn=1, jpflda2o1 + jpflda2o2
 C            
-          IF (jn.eq.1) CALL CLIM_Export(cl_writ(jn), kt, fsolice, info)
-          IF (jn.eq.2) CALL CLIM_Export(cl_writ(jn), kt, fsolwat, info)
-          IF (jn.eq.3) CALL CLIM_Export(cl_writ(jn), kt, fnsolice, info)
-          IF (jn.eq.4) CALL CLIM_Export(cl_writ(jn), kt, fnsolwat, info)
-          IF (jn.eq.5) CALL CLIM_Export(cl_writ(jn), kt, fnsicedt, info)
+          IF (jn.eq.8) CALL CLIM_Export(cl_writ(jn), kt, fsolice, info)
+          IF (jn.eq.9) CALL CLIM_Export(cl_writ(jn), kt, fsolwat, info)
+         IF (jn.eq.10) CALL CLIM_Export(cl_writ(jn), kt, fnsolice, info)
+         IF (jn.eq.11) CALL CLIM_Export(cl_writ(jn), kt, fnsolwat, info)
+         IF (jn.eq.12) CALL CLIM_Export(cl_writ(jn), kt, fnsicedt, info)
 c          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, ictemp, info)
-          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, evice, info)
-          IF (jn.eq.7) CALL CLIM_Export(cl_writ(jn), kt, evwat, info)
-          IF (jn.eq.8) CALL CLIM_Export(cl_writ(jn), kt, lpre, info)
-          IF (jn.eq.9) CALL CLIM_Export(cl_writ(jn), kt, spre, info)
-          IF (jn.eq.10) CALL CLIM_Export(cl_writ(jn),kt,dirunoff, info)
-          IF (jn.eq.11) CALL CLIM_Export(cl_writ(jn),kt,rivrunoff,info)
-          IF (jn.eq.12) CALL CLIM_Export(cl_writ(jn),kt,calving,info)
+          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, evice, info)
+          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, evwat, info)
+          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, lpre, info)
+          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, spre, info)
+          IF (jn.eq.17) CALL CLIM_Export(cl_writ(jn),kt,dirunoff, info)
+          IF (jn.eq.18) CALL CLIM_Export(cl_writ(jn),kt,rivrunoff,info)
+          IF (jn.eq.19) CALL CLIM_Export(cl_writ(jn),kt,calving,info)
 c$$$          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, tauxu, info)
 c$$$          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, tauxv, info)
 c$$$          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, tauyv, info)
 c$$$          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, tauyu, info)
-          IF (jn.eq.13) CALL CLIM_Export(cl_writ(jn), kt, tauxx_u, info)
-          IF (jn.eq.14) CALL CLIM_Export(cl_writ(jn), kt, tauyy_u, info)
-          IF (jn.eq.15) CALL CLIM_Export(cl_writ(jn), kt, tauzz_u, info)
-          IF (jn.eq.16) CALL CLIM_Export(cl_writ(jn), kt, tauxx_v, info)
-          IF (jn.eq.17) CALL CLIM_Export(cl_writ(jn), kt, tauyy_v, info)
-          IF (jn.eq.18) CALL CLIM_Export(cl_writ(jn), kt, tauzz_v, info)
-          
+          IF (jn.eq.1) CALL CLIM_Export(cl_writ(jn), kt, tauxx_u, info)
+          IF (jn.eq.2) CALL CLIM_Export(cl_writ(jn), kt, tauyy_u, info)
+          IF (jn.eq.3) CALL CLIM_Export(cl_writ(jn), kt, tauzz_u, info)
+          IF (jn.eq.4) CALL CLIM_Export(cl_writ(jn), kt, tauxx_v, info)
+          IF (jn.eq.5) CALL CLIM_Export(cl_writ(jn), kt, tauyy_v, info)
+          IF (jn.eq.6) CALL CLIM_Export(cl_writ(jn), kt, tauzz_v, info)
+c -- LOOP
+          IF (jn.eq.7) CALL CLIM_Export(cl_writ(jn), kt, windsp, info)
+c -- LOOP          
             IF (info .NE. CLIM_Ok) THEN
                 WRITE (nuout,*) 'STEP : Pb giving ',cl_writ(jn), ':',jn
