Index: LMDZ6/trunk/libf/phylmd/dyn1d/1D_decl_cases.h
===================================================================
--- LMDZ6/trunk/libf/phylmd/dyn1d/1D_decl_cases.h	(revision 3780)
+++ LMDZ6/trunk/libf/phylmd/dyn1d/1D_decl_cases.h	(revision 3781)
@@ -287,5 +287,5 @@
         real temp_nudg_mod_cas(llm),qv_nudg_mod_cas(llm),v_nudg_mod_cas(llm),u_nudg_mod_cas(llm)
         real u_mod_cas(llm),v_mod_cas(llm)
-        real omega_mod_cas(llm)
+        real omega_mod_cas(llm),tke_mod_cas(llm+1)
         real ht_mod_cas(llm),vt_mod_cas(llm),dt_mod_cas(llm),dtrad_mod_cas(llm)
         real hth_mod_cas(llm),vth_mod_cas(llm),dth_mod_cas(llm)
Index: LMDZ6/trunk/libf/phylmd/dyn1d/1D_interp_cases.h
===================================================================
--- LMDZ6/trunk/libf/phylmd/dyn1d/1D_interp_cases.h	(revision 3780)
+++ LMDZ6/trunk/libf/phylmd/dyn1d/1D_interp_cases.h	(revision 3781)
@@ -13,8 +13,8 @@
      &       ,u_cas,v_cas,ug_cas,vg_cas                                                     &
      &       ,temp_nudg_cas,qv_nudg_cas,u_nudg_cas,v_nudg_cas                               &
-     &       ,vitw_cas,omega_cas,du_cas,hu_cas,vu_cas                                       &
+     &       ,vitw_cas,omega_cas,tke_cas,du_cas,hu_cas,vu_cas                                       &
      &       ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas                           &
      &       ,dq_cas,hq_cas,vq_cas,dth_cas,hth_cas,vth_cas,lat_cas,sens_cas,ustar_cas       &
-     &       ,uw_cas,vw_cas,q1_cas,q2_cas,tke_cas                                           &
+     &       ,uw_cas,vw_cas,q1_cas,q2_cas,tkes_cas                                           &
 !
      &       ,ts_prof_cas,ps_prof_cas,plev_prof_cas,t_prof_cas,theta_prof_cas,thv_prof_cas  &
@@ -22,10 +22,10 @@
      &       ,u_prof_cas,v_prof_cas,ug_prof_cas,vg_prof_cas                                 &
      &       ,temp_nudg_prof_cas,qv_nudg_prof_cas,u_nudg_prof_cas,v_nudg_prof_cas           &
-     &       ,vitw_prof_cas,omega_prof_cas                                                  &
+     &       ,vitw_prof_cas,omega_prof_cas,tke_prof_cas                                     &
      &       ,du_prof_cas,hu_prof_cas,vu_prof_cas                                           &
      &       ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas,ht_prof_cas,vt_prof_cas       &
      &       ,dtrad_prof_cas,dq_prof_cas,hq_prof_cas,vq_prof_cas                            &
      &       ,dth_prof_cas,hth_prof_cas,vth_prof_cas,lat_prof_cas                           &
-     &       ,sens_prof_cas,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas,tke_prof_cas)
+     &       ,sens_prof_cas,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas,tkes_prof_cas)
 ! EV tg instead of ts_cur
              tg = ts_prof_cas 
@@ -34,10 +34,10 @@
 
 ! vertical interpolation:
-      CALL interp2_case_vertical_std(play,nlev_cas,plev_prof_cas                                              &
+      CALL interp2_case_vertical_std(play,plev,nlev_cas,plev_prof_cas                                              &
      &         ,t_prof_cas,theta_prof_cas,thv_prof_cas,thl_prof_cas                                       &
      &         ,qv_prof_cas,ql_prof_cas,qi_prof_cas,u_prof_cas,v_prof_cas                                 &
      &         ,ug_prof_cas,vg_prof_cas                                                                   &
      &         ,temp_nudg_prof_cas,qv_nudg_prof_cas,u_nudg_prof_cas,v_nudg_prof_cas                       &
-     &         ,vitw_prof_cas,omega_prof_cas                                      &
+     &         ,vitw_prof_cas,omega_prof_cas,tke_prof_cas                                                 &
      &         ,du_prof_cas,hu_prof_cas,vu_prof_cas,dv_prof_cas,hv_prof_cas,vv_prof_cas                   &
      &         ,dt_prof_cas,ht_prof_cas,vt_prof_cas,dtrad_prof_cas,dq_prof_cas,hq_prof_cas,vq_prof_cas    &
@@ -47,5 +47,5 @@
      &         ,u_mod_cas,v_mod_cas,ug_mod_cas,vg_mod_cas                                                 &
      &         ,temp_nudg_mod_cas,qv_nudg_mod_cas,u_nudg_mod_cas,v_nudg_mod_cas                           &
-     &         ,w_mod_cas,omega_mod_cas                                                                   &
+     &         ,w_mod_cas,omega_mod_cas,tke_mod_cas                                                       &
      &         ,du_mod_cas,hu_mod_cas,vu_mod_cas,dv_mod_cas,hv_mod_cas,vv_mod_cas                         &
      &         ,dt_mod_cas,ht_mod_cas,vt_mod_cas,dtrad_mod_cas,dq_mod_cas,hq_mod_cas,vq_mod_cas           &
@@ -109,4 +109,6 @@
       do l = 1, llm
 ! Modif w_mod_cas -> omega_mod_cas (MM+MPL 20170309)
+	print*, l, llm
+	print*, play(l), temp(l)
        omega(l) = -w_mod_cas(l)*play(l)*rg/(rd*temp(l))
       enddo
Index: LMDZ6/trunk/libf/phylmd/dyn1d/1D_read_forc_cases.h
===================================================================
--- LMDZ6/trunk/libf/phylmd/dyn1d/1D_read_forc_cases.h	(revision 3780)
+++ LMDZ6/trunk/libf/phylmd/dyn1d/1D_read_forc_cases.h	(revision 3781)
@@ -27,8 +27,8 @@
      &       ,u_cas,v_cas,ug_cas,vg_cas                                                     &
      &       ,temp_nudg_cas,qv_nudg_cas,u_nudg_cas,v_nudg_cas                               &
-     &       ,vitw_cas,omega_cas,du_cas,hu_cas,vu_cas                                       &
+     &       ,vitw_cas,omega_cas,tke_cas,du_cas,hu_cas,vu_cas                                       &
      &       ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas                           &
      &       ,dq_cas,hq_cas,vq_cas,dth_cas,hth_cas,vth_cas,lat_cas,sens_cas,ustar_cas       &
-     &       ,uw_cas,vw_cas,q1_cas,q2_cas,tke_cas                                           &
+     &       ,uw_cas,vw_cas,q1_cas,q2_cas,tkes_cas                                           &
 !
      &       ,ts_prof_cas,ps_prof_cas,plev_prof_cas,t_prof_cas,theta_prof_cas,thv_prof_cas  &
@@ -36,10 +36,10 @@
      &       ,u_prof_cas,v_prof_cas,ug_prof_cas,vg_prof_cas                                 &
      &       ,temp_nudg_prof_cas,qv_nudg_prof_cas,u_nudg_prof_cas,v_nudg_prof_cas           &
-     &       ,vitw_prof_cas,omega_prof_cas                                                  &
+     &       ,vitw_prof_cas,omega_prof_cas,tke_prof_cas                                    &
      &       ,du_prof_cas,hu_prof_cas,vu_prof_cas                                           &
      &       ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas,ht_prof_cas,vt_prof_cas       &
      &       ,dtrad_prof_cas,dq_prof_cas,hq_prof_cas,vq_prof_cas                            &
      &       ,dth_prof_cas,hth_prof_cas,vth_prof_cas,lat_prof_cas                           &
-     &       ,sens_prof_cas,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas,tke_prof_cas)
+     &       ,sens_prof_cas,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas,tkes_prof_cas)
 
       do l = 1, nlev_cas
@@ -49,5 +49,5 @@
 ! vertical interpolation using interpolation routine:
 !      write(*,*)'avant interp vert', t_prof
-      CALL interp2_case_vertical_std(play,nlev_cas,plev_prof_cas                                              &
+      CALL interp2_case_vertical_std(play,plev,nlev_cas,plev_prof_cas                                              &
      &         ,t_prof_cas,theta_prof_cas,thv_prof_cas,thl_prof_cas                                          &
      &         ,qv_prof_cas,ql_prof_cas,qi_prof_cas,u_prof_cas,v_prof_cas                                 &
@@ -55,5 +55,5 @@
      &       ,temp_nudg_prof_cas,qv_nudg_prof_cas,u_nudg_prof_cas,v_nudg_prof_cas                         &
 
-     &         ,vitw_prof_cas,omega_prof_cas                                                              &
+     &         ,vitw_prof_cas,omega_prof_cas,tke_prof_cas                                                 &
      &         ,du_prof_cas,hu_prof_cas,vu_prof_cas,dv_prof_cas,hv_prof_cas,vv_prof_cas                   &
      &         ,dt_prof_cas,ht_prof_cas,vt_prof_cas,dtrad_prof_cas,dq_prof_cas,hq_prof_cas,vq_prof_cas    &
@@ -63,5 +63,5 @@
      &         ,u_mod_cas,v_mod_cas,ug_mod_cas,vg_mod_cas                                                 &
      &         ,temp_nudg_mod_cas,qv_nudg_mod_cas,u_nudg_mod_cas,v_nudg_mod_cas                           &
-     &         ,w_mod_cas,omega_mod_cas                                                                   &
+     &         ,w_mod_cas,omega_mod_cas,tke_mod_cas                                                       &
      &         ,du_mod_cas,hu_mod_cas,vu_mod_cas,dv_mod_cas,hv_mod_cas,vv_mod_cas                         &
      &         ,dt_mod_cas,ht_mod_cas,vt_mod_cas,dtrad_mod_cas,dq_mod_cas,hq_mod_cas,vq_mod_cas           &
@@ -98,8 +98,11 @@
        d_u_adv(l) = du_mod_cas(l)+hu_mod_cas(l)+vu_mod_cas(l)
        d_v_adv(l) = dv_mod_cas(l)+hv_mod_cas(l)+vv_mod_cas(l)
+      enddo
 
-!print*,'d_t_adv ',d_t_adv(1:20)*86400
+! Etienne pour initialisation de TKE
 
-      enddo     
+       do l=1,llm+1
+       pbl_tke(:,l,:)=tke_mod_cas(l)
+       enddo     
 
 ! Faut-il multiplier par -1 ? (MPL 20160713)
Index: LMDZ6/trunk/libf/phylmd/dyn1d/mod_1D_cases_read_std.F90
===================================================================
--- LMDZ6/trunk/libf/phylmd/dyn1d/mod_1D_cases_read_std.F90	(revision 3780)
+++ LMDZ6/trunk/libf/phylmd/dyn1d/mod_1D_cases_read_std.F90	(revision 3781)
@@ -18,5 +18,5 @@
         real, allocatable::  t_cas(:,:),q_cas(:,:),qv_cas(:,:),ql_cas(:,:),qi_cas(:,:),rh_cas(:,:)
         real, allocatable::  th_cas(:,:),thv_cas(:,:),thl_cas(:,:),rv_cas(:,:)
-        real, allocatable::  u_cas(:,:),v_cas(:,:),vitw_cas(:,:),omega_cas(:,:)
+        real, allocatable::  u_cas(:,:),v_cas(:,:),vitw_cas(:,:),omega_cas(:,:),tke_cas(:,:)
 
 !forcing
@@ -30,5 +30,5 @@
         real, allocatable::  temp_nudg_cas(:,:),qv_nudg_cas(:,:),u_nudg_cas(:,:),v_nudg_cas(:,:)
         real, allocatable::  lat_cas(:),sens_cas(:),ts_cas(:),ps_cas(:),ustar_cas(:)
-        real, allocatable::  uw_cas(:,:),vw_cas(:,:),q1_cas(:,:),q2_cas(:,:),tke_cas(:)
+        real, allocatable::  uw_cas(:,:),vw_cas(:,:),q1_cas(:,:),q2_cas(:,:),tkes_cas(:)
 
 !champs interpoles
@@ -48,4 +48,5 @@
         real, allocatable::  vitw_prof_cas(:)
         real, allocatable::  omega_prof_cas(:)
+        real, allocatable::  tke_prof_cas(:)
         real, allocatable::  ug_prof_cas(:)
         real, allocatable::  vg_prof_cas(:)
@@ -73,5 +74,5 @@
 
 
-        real lat_prof_cas,sens_prof_cas,ts_prof_cas,ps_prof_cas,ustar_prof_cas,tke_prof_cas
+        real lat_prof_cas,sens_prof_cas,ts_prof_cas,ps_prof_cas,ustar_prof_cas,tkes_prof_cas
         real o3_cas,orog_cas,albedo_cas,emiss_cas,t_skin_cas,q_skin_cas,mom_rough,heat_rough,rugos_cas,sand_cas,clay_cas
       
@@ -168,5 +169,5 @@
         allocate(th_cas(nlev_cas,nt_cas),thl_cas(nlev_cas,nt_cas),thv_cas(nlev_cas,nt_cas),rv_cas(nlev_cas,nt_cas))
         allocate(u_cas(nlev_cas,nt_cas),v_cas(nlev_cas,nt_cas),vitw_cas(nlev_cas,nt_cas),omega_cas(nlev_cas,nt_cas))
-
+        allocate(tke_cas(nlev_cas,nt_cas))
 !forcing
         allocate(ht_cas(nlev_cas,nt_cas),vt_cas(nlev_cas,nt_cas),dt_cas(nlev_cas,nt_cas),dtrad_cas(nlev_cas,nt_cas))
@@ -179,5 +180,5 @@
         allocate(temp_nudg_cas(nlev_cas,nt_cas),qv_nudg_cas(nlev_cas,nt_cas))
         allocate(u_nudg_cas(nlev_cas,nt_cas),v_nudg_cas(nlev_cas,nt_cas))
-        allocate(lat_cas(nt_cas),sens_cas(nt_cas),ts_cas(nt_cas),ps_cas(nt_cas),ustar_cas(nt_cas),tke_cas(nt_cas))
+        allocate(lat_cas(nt_cas),sens_cas(nt_cas),ts_cas(nt_cas),ps_cas(nt_cas),ustar_cas(nt_cas),tkes_cas(nt_cas))
         allocate(uw_cas(nlev_cas,nt_cas),vw_cas(nlev_cas,nt_cas),q1_cas(nlev_cas,nt_cas),q2_cas(nlev_cas,nt_cas))
 
@@ -200,4 +201,5 @@
         allocate(vitw_prof_cas(nlev_cas))
         allocate(omega_prof_cas(nlev_cas))
+        allocate(tke_prof_cas(nlev_cas))
         allocate(ug_prof_cas(nlev_cas))
         allocate(vg_prof_cas(nlev_cas))
@@ -228,9 +230,9 @@
         CALL read_SCM (nid,nlev_cas,nt_cas,                                                                     &
      &     ap_cas,bp_cas,z_cas,plev_cas,zh_cas,plevh_cas,t_cas,th_cas,thv_cas,thl_cas,qv_cas,                   &
-     &     ql_cas,qi_cas,rh_cas,rv_cas,u_cas,v_cas,vitw_cas,omega_cas,ug_cas,vg_cas,                            &
+     &     ql_cas,qi_cas,rh_cas,rv_cas,u_cas,v_cas,vitw_cas,omega_cas,tke_cas,ug_cas,vg_cas,                            &
      &     temp_nudg_cas,qv_nudg_cas,u_nudg_cas,v_nudg_cas,                                                     &
      &     du_cas,hu_cas,vu_cas,                                                                                &
      &     dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dq_cas,hq_cas,vq_cas,dth_cas,hth_cas,vth_cas,               &
-     &     dr_cas,hr_cas,vr_cas,dtrad_cas,sens_cas,lat_cas,ts_cas,ps_cas,ustar_cas,tke_cas,                      &
+     &     dr_cas,hr_cas,vr_cas,dtrad_cas,sens_cas,lat_cas,ts_cas,ps_cas,ustar_cas,tkes_cas,                      &
      &     uw_cas,vw_cas,q1_cas,q2_cas,orog_cas,albedo_cas,emiss_cas,t_skin_cas,q_skin_cas,mom_rough,heat_rough, &
      &     o3_cas,rugos_cas,clay_cas,sand_cas)
@@ -254,5 +256,5 @@
         deallocate(t_cas,q_cas,qv_cas,ql_cas,qi_cas,rh_cas)
         deallocate(th_cas,thl_cas,thv_cas,rv_cas)
-        deallocate(u_cas,v_cas,vitw_cas,omega_cas)
+        deallocate(u_cas,v_cas,vitw_cas,omega_cas,tke_cas)
         
 !forcing
@@ -265,5 +267,5 @@
         deallocate(ug_cas)
         deallocate(vg_cas)
-        deallocate(lat_cas,sens_cas,ts_cas,ps_cas,ustar_cas,tke_cas,uw_cas,vw_cas,q1_cas,q2_cas)
+        deallocate(lat_cas,sens_cas,ts_cas,ps_cas,ustar_cas,tkes_cas,uw_cas,vw_cas,q1_cas,q2_cas)
 
 !champs interpoles
@@ -283,4 +285,5 @@
         deallocate(vitw_prof_cas)
         deallocate(omega_prof_cas)
+        deallocate(tke_prof_cas)
         deallocate(ug_prof_cas)
         deallocate(vg_prof_cas)
@@ -312,8 +315,8 @@
 !=====================================================================
       SUBROUTINE read_SCM(nid,nlevel,ntime,                                       &
-     &     ap,bp,zz,pp,zzh,pph,temp,theta,thv,thl,qv,ql,qi,rh,rv,u,v,vitw,omega,ug,vg,&
+     &     ap,bp,zz,pp,zzh,pph,temp,theta,thv,thl,qv,ql,qi,rh,rv,u,v,vitw,omega,tke,ug,vg,&
      &     temp_nudg,qv_nudg,u_nudg,v_nudg,                                        &
      &     du,hu,vu,dv,hv,vv,dt,ht,vt,dq,hq,vq,                                    &
-     &     dth,hth,vth,dr,hr,vr,dtrad,sens,flat,ts,ps,ustar,tket,uw,vw,q1,q2,       &
+     &     dth,hth,vth,dr,hr,vr,dtrad,sens,flat,ts,ps,ustar,tkes,uw,vw,q1,q2,       &
      &     orog_cas,albedo_cas,emiss_cas,t_skin_cas,q_skin_cas,mom_rough,          &
      &     heat_rough,o3_cas,rugos_cas,clay_cas,sand_cas)
@@ -334,8 +337,8 @@
       real temp(nlevel,ntime),qv(nlevel,ntime),ql(nlevel,ntime),qi(nlevel,ntime),rh(nlevel,ntime)
       real theta(nlevel,ntime),thv(nlevel,ntime),thl(nlevel,ntime),rv(nlevel,ntime)
-      real u(nlevel,ntime),v(nlevel,ntime),tket(ntime)
+      real u(nlevel,ntime),v(nlevel,ntime),tkes(ntime)
       real temp_nudg(nlevel,ntime),qv_nudg(nlevel,ntime),u_nudg(nlevel,ntime),v_nudg(nlevel,ntime)
       real ug(nlevel,ntime),vg(nlevel,ntime)
-      real vitw(nlevel,ntime),omega(nlevel,ntime)
+      real vitw(nlevel,ntime),omega(nlevel,ntime),tke(nlevel,ntime)
       real du(nlevel,ntime),hu(nlevel,ntime),vu(nlevel,ntime)
       real dv(nlevel,ntime),hv(nlevel,ntime),vv(nlevel,ntime)
@@ -371,5 +374,5 @@
      &'height_f','pressure_forc','tempt','theta','thv','thl','qvt','qlt','qit','rv','ut','vt',   & ! #46-58
      ! coordonnees temps #12
-     &'tket','sfc_sens_flx','sfc_lat_flx','ts','ps','ustar',&
+     &'tkes','sfc_sens_flx','sfc_lat_flx','ts','ps','ustar',&
      &'orog','albedo','emiss','t_skin','q_skin','mom_rough','heat_rough',&
      ! scalaires #4
@@ -546,5 +549,5 @@
            case(56) ; u=resul
            case(57) ; v=resul
-           case(58) ; tket=resul2   ! donnees indexees en time
+           case(58) ; tkes=resul2   ! donnees indexees en time
            case(59) ; sens=resul2
            case(60) ; flat=resul2
@@ -581,5 +584,5 @@
              u(k,t)=u0(k)
              v(k,t)=v0(k)
-             !tke(k,t)=tke0(k)
+             tke(k,t)=tke0(k)
           enddo
        enddo
@@ -593,4 +596,6 @@
 
 !======================================================================
+
+!**********************************************************************************************
 
 !**********************************************************************************************
@@ -601,9 +606,9 @@
      &         ,qv_cas,ql_cas,qi_cas,u_cas,v_cas                                  &
      &         ,ug_cas,vg_cas,temp_nudg_cas,qv_nudg_cas,u_nudg_cas,v_nudg_cas     &
-     &         ,vitw_cas,omega_cas,du_cas,hu_cas,vu_cas             &
+     &         ,vitw_cas,omega_cas,tke_cas,du_cas,hu_cas,vu_cas             &
      &         ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas               &
      &         ,dq_cas,hq_cas,vq_cas,dth_cas,hth_cas,vth_cas                      &
      &         ,lat_cas,sens_cas,ustar_cas                                        &
-     &         ,uw_cas,vw_cas,q1_cas,q2_cas,tke_cas                               &
+     &         ,uw_cas,vw_cas,q1_cas,q2_cas,tkes_cas                               &
 !
      &         ,ts_prof_cas,ps_prof_cas,plev_prof_cas,t_prof_cas,theta_prof_cas               &
@@ -611,13 +616,17 @@
      &         ,u_prof_cas,v_prof_cas,ug_prof_cas,vg_prof_cas                     &
      &         ,temp_nudg_prof_cas,qv_nudg_prof_cas,u_nudg_prof_cas,v_nudg_prof_cas     &
-     &         ,vitw_prof_cas,omega_prof_cas,du_prof_cas,hu_prof_cas,vu_prof_cas  &
+     &         ,vitw_prof_cas,omega_prof_cas,tke_prof_cas,du_prof_cas,hu_prof_cas,vu_prof_cas  &
      &         ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas                   &
      &         ,ht_prof_cas,vt_prof_cas,dtrad_prof_cas,dq_prof_cas                &
      &         ,hq_prof_cas,vq_prof_cas,dth_prof_cas,hth_prof_cas,vth_prof_cas    &
      &         ,lat_prof_cas,sens_prof_cas                                        &
-     &         ,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas,tke_prof_cas)
-          
-
-        implicit none
+     &         ,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas,tkes_prof_cas)
+
+
+
+
+
+
+       implicit none
 
 !---------------------------------------------------------------------------------------
@@ -639,5 +648,6 @@
         real ts_cas(nt_cas),ps_cas(nt_cas)
         real plev_cas(nlev_cas,nt_cas)
-        real t_cas(nlev_cas,nt_cas),theta_cas(nlev_cas,nt_cas),thv_cas(nlev_cas,nt_cas),thl_cas(nlev_cas,nt_cas)
+        real t_cas(nlev_cas,nt_cas),theta_cas(nlev_cas,nt_cas)
+        real thv_cas(nlev_cas,nt_cas), thl_cas(nlev_cas,nt_cas)
         real qv_cas(nlev_cas,nt_cas),ql_cas(nlev_cas,nt_cas),qi_cas(nlev_cas,nt_cas)
         real u_cas(nlev_cas,nt_cas),v_cas(nlev_cas,nt_cas)
@@ -646,5 +656,5 @@
         real u_nudg_cas(nlev_cas,nt_cas),v_nudg_cas(nlev_cas,nt_cas)
 
-        real vitw_cas(nlev_cas,nt_cas),omega_cas(nlev_cas,nt_cas)
+        real vitw_cas(nlev_cas,nt_cas),omega_cas(nlev_cas,nt_cas),tke_cas(nlev_cas,nt_cas)
         real du_cas(nlev_cas,nt_cas),hu_cas(nlev_cas,nt_cas),vu_cas(nlev_cas,nt_cas)
         real dv_cas(nlev_cas,nt_cas),hv_cas(nlev_cas,nt_cas),vv_cas(nlev_cas,nt_cas)
@@ -653,5 +663,5 @@
         real dtrad_cas(nlev_cas,nt_cas)
         real dq_cas(nlev_cas,nt_cas),hq_cas(nlev_cas,nt_cas),vq_cas(nlev_cas,nt_cas)
-        real lat_cas(nt_cas),sens_cas(nt_cas),tke_cas(nt_cas)
+        real lat_cas(nt_cas),sens_cas(nt_cas),tkes_cas(nt_cas)
         real ustar_cas(nt_cas),uw_cas(nlev_cas,nt_cas),vw_cas(nlev_cas,nt_cas)
         real q1_cas(nlev_cas,nt_cas),q2_cas(nlev_cas,nt_cas)
@@ -666,5 +676,5 @@
         real u_nudg_prof_cas(nlev_cas),v_nudg_prof_cas(nlev_cas)
 
-        real vitw_prof_cas(nlev_cas),omega_prof_cas(nlev_cas)
+        real vitw_prof_cas(nlev_cas),omega_prof_cas(nlev_cas),tke_prof_cas(nlev_cas)
         real du_prof_cas(nlev_cas),hu_prof_cas(nlev_cas),vu_prof_cas(nlev_cas)
         real dv_prof_cas(nlev_cas),hv_prof_cas(nlev_cas),vv_prof_cas(nlev_cas)
@@ -673,5 +683,5 @@
         real dtrad_prof_cas(nlev_cas)
         real dq_prof_cas(nlev_cas),hq_prof_cas(nlev_cas),vq_prof_cas(nlev_cas)
-        real lat_prof_cas,sens_prof_cas,tke_prof_cas,ts_prof_cas,ps_prof_cas,ustar_prof_cas
+        real lat_prof_cas,sens_prof_cas,tkes_prof_cas,ts_prof_cas,ps_prof_cas,ustar_prof_cas
         real uw_prof_cas(nlev_cas),vw_prof_cas(nlev_cas),q1_prof_cas(nlev_cas),q2_prof_cas(nlev_cas)
 ! local:
@@ -757,6 +767,6 @@
        sens_prof_cas = sens_cas(it_cas2)                                 &
      &          -frac*(sens_cas(it_cas2)-sens_cas(it_cas1))
-       tke_prof_cas = tke_cas(it_cas2)                                   &
-     &          -frac*(tke_cas(it_cas2)-tke_cas(it_cas1))
+       tkes_prof_cas = tkes_cas(it_cas2)                                   &
+     &          -frac*(tkes_cas(it_cas2)-tkes_cas(it_cas1))
        ts_prof_cas = ts_cas(it_cas2)                                     &
      &          -frac*(ts_cas(it_cas2)-ts_cas(it_cas1))
@@ -804,4 +814,6 @@
         omega_prof_cas(k) = omega_cas(k,it_cas2)                         &
      &          -frac*(omega_cas(k,it_cas2)-omega_cas(k,it_cas1))
+        tke_prof_cas(k) = tke_cas(k,it_cas2)                         &
+     &          -frac*(tke_cas(k,it_cas2)-tke_cas(k,it_cas1))
         du_prof_cas(k) = du_cas(k,it_cas2)                               &
      &          -frac*(du_cas(k,it_cas2)-du_cas(k,it_cas1))
@@ -851,10 +863,10 @@
 !**********************************************************************************************
 !=====================================================================
-       SUBROUTINE interp2_case_vertical_std(play,nlev_cas,plev_prof_cas                                &
+       SUBROUTINE interp2_case_vertical_std(play,plev,nlev_cas,plev_prof_cas                           &
      &         ,t_prof_cas,th_prof_cas,thv_prof_cas,thl_prof_cas                                       &
      &         ,qv_prof_cas,ql_prof_cas,qi_prof_cas,u_prof_cas,v_prof_cas                              &
      &         ,ug_prof_cas,vg_prof_cas                                                                &
      &         ,temp_nudg_prof_cas,qv_nudg_prof_cas,u_nudg_prof_cas,v_nudg_prof_cas                    &
-     &         ,vitw_prof_cas,omega_prof_cas                                                           &
+     &         ,vitw_prof_cas,omega_prof_cas,tke_prof_cas                                              &
      &         ,du_prof_cas,hu_prof_cas,vu_prof_cas,dv_prof_cas,hv_prof_cas,vv_prof_cas                &
      &         ,dt_prof_cas,ht_prof_cas,vt_prof_cas,dtrad_prof_cas,dq_prof_cas,hq_prof_cas,vq_prof_cas &
@@ -865,5 +877,5 @@
      &         ,ug_mod_cas,vg_mod_cas                                                                  &
      &         ,temp_nudg_mod_cas,qv_nudg_mod_cas,u_nudg_mod_cas,v_nudg_mod_cas                        &
-     &         ,w_mod_cas,omega_mod_cas                                                                &
+     &         ,w_mod_cas,omega_mod_cas,tke_mod_cas                                                    &
      &         ,du_mod_cas,hu_mod_cas,vu_mod_cas,dv_mod_cas,hv_mod_cas,vv_mod_cas                      &
      &         ,dt_mod_cas,ht_mod_cas,vt_mod_cas,dtrad_mod_cas,dq_mod_cas,hq_mod_cas,vq_mod_cas        &
@@ -888,9 +900,9 @@
 !       real hq_prof(nlevmax),vq_prof(nlevmax)
  
-       real play(llm), plev_prof_cas(nlev_cas) 
+       real play(llm), plev(llm+1), plev_prof_cas(nlev_cas) 
        real t_prof_cas(nlev_cas),th_prof_cas(nlev_cas),thv_prof_cas(nlev_cas),thl_prof_cas(nlev_cas)
        real qv_prof_cas(nlev_cas),ql_prof_cas(nlev_cas),qi_prof_cas(nlev_cas)
        real u_prof_cas(nlev_cas),v_prof_cas(nlev_cas)
-       real ug_prof_cas(nlev_cas),vg_prof_cas(nlev_cas), vitw_prof_cas(nlev_cas),omega_prof_cas(nlev_cas)
+       real ug_prof_cas(nlev_cas),vg_prof_cas(nlev_cas), vitw_prof_cas(nlev_cas),omega_prof_cas(nlev_cas),tke_prof_cas(nlev_cas)
        real temp_nudg_prof_cas(nlev_cas),qv_nudg_prof_cas(nlev_cas)
        real u_nudg_prof_cas(nlev_cas),v_nudg_prof_cas(nlev_cas)
@@ -905,5 +917,5 @@
        real qv_mod_cas(llm),ql_mod_cas(llm),qi_mod_cas(llm)
        real u_mod_cas(llm),v_mod_cas(llm)
-       real ug_mod_cas(llm),vg_mod_cas(llm), w_mod_cas(llm),omega_mod_cas(llm)
+       real ug_mod_cas(llm),vg_mod_cas(llm), w_mod_cas(llm),omega_mod_cas(llm),tke_mod_cas(llm+1)
        real temp_nudg_mod_cas(llm),qv_nudg_mod_cas(llm)
        real u_nudg_mod_cas(llm),v_nudg_mod_cas(llm)
@@ -917,13 +929,8 @@
        real frac,frac1,frac2,fact
  
-!       do l = 1, llm
-!       print *,'debut interp2, play=',l,play(l)
-!       enddo
-!      do l = 1, nlev_cas
-!      print *,'debut interp2, plev_prof_cas=',l,play(l),plev_prof_cas(l)
-!      enddo
-
-!       print*, 'plev_prof_cas', plev_prof_cas
-!       print*, 'play', play
+
+
+! for variables defined at the middle of layers
+
        do l = 1, llm
 
@@ -951,4 +958,6 @@
          enddo
          endif
+
+
 
          frac = (plev_prof_cas(k2)-play(l))/(plev_prof_cas(k2)-plev_prof_cas(k1))
@@ -1078,4 +1087,50 @@
        enddo ! l
 
+! for variables defined at layer interfaces (EV):
+
+
+       do l = 1, llm+1
+
+        if (plev(l).ge.plev_prof_cas(nlev_cas)) then
+
+         mxcalc=l
+         k1=0
+         k2=0
+
+         if (plev(l).le.plev_prof_cas(1)) then
+
+         do k = 1, nlev_cas-1
+          if (plev(l).le.plev_prof_cas(k).and. plev(l).gt.plev_prof_cas(k+1)) then
+            k1=k
+            k2=k+1
+          endif
+         enddo
+
+         if (k1.eq.0 .or. k2.eq.0) then
+          write(*,*) 'PB! k1, k2 = ',k1,k2
+          write(*,*) 'l,plev(l) = ',l,plev(l)/100
+         do k = 1, nlev_cas-1
+          write(*,*) 'k,plev_prof_cas(k) = ',k,plev_prof_cas(k)/100
+         enddo
+         endif
+
+         frac = (plev_prof_cas(k2)-plev(l))/(plev_prof_cas(k2)-plev_prof_cas(k1))
+         tke_mod_cas(l)= tke_prof_cas(k2) - frac*(tke_prof_cas(k2)-tke_prof_cas(k1))
+         else !play>plev_prof_cas(1)
+         k1=1
+         k2=2
+         tke_mod_cas(l)= frac1*tke_prof_cas(k1) - frac2*tke_prof_cas(k2)
+
+         endif ! plev.le.plev_prof_cas(1)
+
+        else ! above max altitude of forcing file
+
+         tke_mod_cas(l)=0.0
+
+        endif ! plev
+
+       enddo ! l
+
+
 
           return
Index: LMDZ6/trunk/libf/phylmd/dyn1d/old_lmdz1d.F90
===================================================================
--- LMDZ6/trunk/libf/phylmd/dyn1d/old_lmdz1d.F90	(revision 3780)
+++ LMDZ6/trunk/libf/phylmd/dyn1d/old_lmdz1d.F90	(revision 3781)
@@ -632,5 +632,7 @@
 !          (phys_state_var_init is called again in physiq)
       read_climoz = 0
-!
+      nsw=6          ! EV et LF: sinon, falb_dir et falb_dif ne peuvent etre alloues
+
+
       call phys_state_var_init(read_climoz)
 
@@ -850,11 +852,6 @@
         zpic = zpicinp
         ftsol=tsurf
-        nsw=6 ! on met le nb de bandes SW=6, pour initialiser
-              ! 6 albedo, mais on peut quand meme tourner avec
-              ! moins. Seules les 2 ou 4 premiers seront lus
-              print*, 'les albedos sont sont', albedo, falb_dir
         falb_dir=albedo
         falb_dif=albedo
-             print*, falb_dir
         rugoro=rugos 
         t_ancien(1,:)=temp(:)
Index: LMDZ6/trunk/libf/phylmd/dyn1d/scm.F90
===================================================================
--- LMDZ6/trunk/libf/phylmd/dyn1d/scm.F90	(revision 3780)
+++ LMDZ6/trunk/libf/phylmd/dyn1d/scm.F90	(revision 3781)
@@ -412,5 +412,6 @@
 !          (phys_state_var_init is called again in physiq)
       read_climoz = 0
-!
+      nsw=6
+
       call phys_state_var_init(read_climoz)
 
@@ -624,8 +625,4 @@
         zpic = zpicinp
         ftsol=tsurf
-        nsw=6 ! on met le nb de bandes SW=6, pour initialiser
-              ! 6 albedo, mais on peut quand meme tourner avec
-              ! moins. Seules les 2 ou 4 premiers seront lus
-              print*, 'les albedos sont', albedo
         falb_dir=albedo
         falb_dif=albedo
@@ -639,15 +636,8 @@
         prw_ancien = 0.
 !jyg<
+! Etienne: comment those lines since now the TKE is inialized in 1D_read_forc_cases
 !!      pbl_tke(:,:,:)=1.e-8
-        pbl_tke(:,:,:)=0.
-! EV: pourquoi????
+!        pbl_tke(:,:,:)=0.
 !        pbl_tke(:,2,:)=1.e-2
-        PRINT *, ' pbl_tke dans lmdz1d '
-        if (prt_level .ge. 5) then 
-         DO nsrf = 1,4
-           PRINT *,'pbl_tke(1,:,',nsrf,') ',pbl_tke(1,:,nsrf)
-         ENDDO
-        end if
-
 !>jyg
         rain_fall=0.
