Index: /LMDZ5/trunk/libf/dyn3d/guide_mod.F90
===================================================================
--- /LMDZ5/trunk/libf/dyn3d/guide_mod.F90	(revision 2739)
+++ /LMDZ5/trunk/libf/dyn3d/guide_mod.F90	(revision 2740)
@@ -38,5 +38,5 @@
 
   REAL, ALLOCATABLE, DIMENSION(:), PRIVATE, SAVE     :: alpha_u,alpha_v 
-  REAL, ALLOCATABLE, DIMENSION(:), PRIVATE, SAVE     :: alpha_T,alpha_Q 
+  REAL, ALLOCATABLE, DIMENSION(:, :), PRIVATE, SAVE     :: alpha_T,alpha_Q 
   REAL, ALLOCATABLE, DIMENSION(:), PRIVATE, SAVE     :: alpha_P,alpha_pcor
   
@@ -222,7 +222,7 @@
     ALLOCATE(alpha_v(ip1jm), stat = error)
     IF (error /= 0) CALL abort_gcm(modname,abort_message,1)
-    ALLOCATE(alpha_T(ip1jmp1), stat = error)
+    ALLOCATE(alpha_T(iip1, jjp1), stat = error)
     IF (error /= 0) CALL abort_gcm(modname,abort_message,1)
-    ALLOCATE(alpha_Q(ip1jmp1), stat = error)
+    ALLOCATE(alpha_Q(iip1, jjp1), stat = error)
     IF (error /= 0) CALL abort_gcm(modname,abort_message,1)
     ALLOCATE(alpha_P(ip1jmp1), stat = error)
@@ -1518,4 +1518,6 @@
     USE comconst_mod, ONLY: pi
     USE comvert_mod, ONLY: presnivs
+    use netcdf95, only: nf95_def_var, nf95_put_var
+    use netcdf, only: nf90_float
     
     IMPLICIT NONE
@@ -1536,5 +1538,5 @@
     INTEGER       :: nid, id_lonu, id_lonv, id_latu, id_latv, id_tim, id_lev
     INTEGER       :: vid_lonu,vid_lonv,vid_latu,vid_latv,vid_cu,vid_cv,vid_lev
-    INTEGER       :: vid_au,vid_av
+    INTEGER       :: vid_au,vid_av, varid_alpha_t, varid_alpha_q
     INTEGER, DIMENSION (3) :: dim3
     INTEGER, DIMENSION (4) :: dim4,count,start
@@ -1567,4 +1569,8 @@
         ierr=NF_DEF_VAR(nid,"cv",NF_FLOAT,2,(/id_lonv,id_latv/),vid_cv)
         ierr=NF_DEF_VAR(nid,"av",NF_FLOAT,2,(/id_lonv,id_latv/),vid_av)
+        call nf95_def_var(nid, "alpha_T", nf90_float, (/id_lonv, id_latu/), &
+             varid_alpha_t)
+        call nf95_def_var(nid, "alpha_q", nf90_float, (/id_lonv, id_latu/), &
+             varid_alpha_q)
         
         ierr=NF_ENDDEF(nid)
@@ -1592,4 +1598,6 @@
         ierr = NF_PUT_VAR_REAL(nid,vid_av,alpha_v)
 #endif
+        call nf95_put_var(nid, varid_alpha_t, alpha_t)
+        call nf95_put_var(nid, varid_alpha_q, alpha_q)
 ! --------------------------------------------------------------------
 ! Cr�ation des variables sauvegard�es
Index: /LMDZ5/trunk/libf/dyn3dmem/guide_loc_mod.F90
===================================================================
--- /LMDZ5/trunk/libf/dyn3dmem/guide_loc_mod.F90	(revision 2739)
+++ /LMDZ5/trunk/libf/dyn3dmem/guide_loc_mod.F90	(revision 2740)
@@ -2130,4 +2130,7 @@
     USE comconst_mod, ONLY: pi
     USE comvert_mod, ONLY: presnivs
+    use netcdf95, only: nf95_def_var, nf95_put_var
+    use netcdf, only: nf90_float
+
     IMPLICIT NONE
 
@@ -2149,9 +2152,9 @@
     INTEGER       :: nid, id_lonu, id_lonv, id_latu, id_latv, id_tim, id_lev
     INTEGER       :: vid_lonu,vid_lonv,vid_latu,vid_latv,vid_cu,vid_cv,vid_lev
-    INTEGER       :: vid_au,vid_av
+    INTEGER       :: vid_au,vid_av, varid_alpha_t, varid_alpha_q
     INTEGER, DIMENSION (3) :: dim3
     INTEGER, DIMENSION (4) :: dim4,count,start
     INTEGER                :: ierr, varid,l
-    REAL zu(ip1jmp1),zv(ip1jm)
+    REAL zu(ip1jmp1),zv(ip1jm), zt(iip1, jjp1), zq(iip1, jjp1)
     REAL, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: field_glo
     
@@ -2171,4 +2174,6 @@
     print*,'guide_out apres gather '
     CALL Gather_field_u(alpha_u,zu,1)
+    CALL Gather_field_u(alpha_t,zt,1)
+    CALL Gather_field_u(alpha_q,zq,1)
     CALL Gather_field_v(alpha_v,zv,1)
 
@@ -2207,5 +2212,9 @@
         ierr=NF_DEF_VAR(nid,"au",NF_FLOAT,2,(/id_lonu,id_latu/),vid_au)
         ierr=NF_DEF_VAR(nid,"av",NF_FLOAT,2,(/id_lonv,id_latv/),vid_av)
-
+        call nf95_def_var(nid, "alpha_T", nf90_float, (/id_lonv, id_latu/), &
+             varid_alpha_t)
+        call nf95_def_var(nid, "alpha_q", nf90_float, (/id_lonv, id_latu/), &
+             varid_alpha_q)
+        
         ierr=NF_ENDDEF(nid)
 
@@ -2232,4 +2241,6 @@
         ierr = NF_PUT_VAR_REAL(nid,vid_av,alpha_v)
 #endif
+        call nf95_put_var(nid, varid_alpha_t, zt)
+        call nf95_put_var(nid, varid_alpha_q, zq)
 ! --------------------------------------------------------------------
 ! Cr�ation des variables sauvegard�es
Index: /LMDZ5/trunk/libf/phylmd/ocean_albedo.F90
===================================================================
--- /LMDZ5/trunk/libf/phylmd/ocean_albedo.F90	(revision 2739)
+++ /LMDZ5/trunk/libf/phylmd/ocean_albedo.F90	(revision 2740)
@@ -203,5 +203,7 @@
   ! Use Morel 91 formula to compute the diffuse
   ! reflectance below the surface
-  ZR00(1:knon)=(0.5*ZBW+ZBBP(1:knon))/(ZAW+ZAP(1:knon))*(0.6279-0.2227*ZHB(1:knon)-0.0513*ZHB(1:knon)**2 + (-0.3119+0.2465*ZHB(1:knon))*ZUE)
+  ZR00(1:knon) = (0.5*ZBW+ZBBP(1:knon)) / (ZAW+ZAP(1:knon)) &
+       * (0.6279-0.2227*ZHB(1:knon)-0.0513*ZHB(1:knon)**2 &
+       + (-0.3119+0.2465*ZHB(1:knon))*ZUE)
   ZRWDF(1:knon)=ZR00(1:knon)*(1.-ZR22(1:knon))*(1.-ZR11DF(1:knon))/(1.-ZR00(1:knon)*ZR22(1:knon))
    
