Changeset 2332


Ignore:
Timestamp:
Jul 21, 2015, 5:40:58 PM (9 years ago)
Author:
fhourdin
Message:

Corrections pour recuperer les cas 1D bomex et cindy.

Location:
LMDZ5/trunk/libf/phylmd/dyn1d
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/dyn1d/1D_decl_cases.h

    r2239 r2332  
    251251        real hu_mod_cas(llm),vu_mod_cas(llm),du_mod_cas(llm)
    252252        real hv_mod_cas(llm),vv_mod_cas(llm),dv_mod_cas(llm)
    253 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    254 
     253        integer day_ini_cas
     254!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     255
  • LMDZ5/trunk/libf/phylmd/dyn1d/1D_interp_cases.h

    r2310 r2332  
    613613
    614614! time interpolation:
    615         CALL interp_case_time(daytime,day1,annee_ref                        &
    616      &       ,year_ini_cas,day_ju_ini_cas,nt_cas,pdt_cas,nlev_cas       &
    617      &       ,ts_cas,plev_cas,t_cas,q_cas,u_cas,v_cas,ug_cas,vg_cas    &
    618      &       ,vitw_cas,du_cas,hu_cas,vu_cas           &
    619      &       ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas             &
    620      &       ,dq_cas,hq_cas,vq_cas,lat_cas,sens_cas,ustar_cas       &
     615        CALL interp_case_time(daytime,day1,annee_ref                                        &
     616!    &       ,year_ini_cas,day_ju_ini_cas,nt_cas,pdt_cas,nlev_cas                           &
     617     &       ,nt_cas,nlev_cas                                                               &
     618     &       ,ts_cas,plev_cas,t_cas,q_cas,u_cas,v_cas,ug_cas,vg_cas                         &
     619     &       ,vitw_cas,du_cas,hu_cas,vu_cas                                                 &
     620     &       ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas                           &
     621     &       ,dq_cas,hq_cas,vq_cas,lat_cas,sens_cas,ustar_cas                               &
     622     &       ,uw_cas,vw_cas,q1_cas,q2_cas                                                   &
    621623     &       ,ts_prof_cas,plev_prof_cas,t_prof_cas,q_prof_cas,u_prof_cas,v_prof_cas         &
    622624     &       ,ug_prof_cas,vg_prof_cas,vitw_prof_cas,du_prof_cas,hu_prof_cas,vu_prof_cas     &
    623625     &       ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas,ht_prof_cas,vt_prof_cas       &
    624626     &       ,dtrad_prof_cas,dq_prof_cas,hq_prof_cas,vq_prof_cas,lat_prof_cas               &
    625      &       ,sens_prof_cas,ustar_prof_cas)
     627     &       ,sens_prof_cas,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas)
    626628
    627629             ts_cur = ts_prof_cas
  • LMDZ5/trunk/libf/phylmd/dyn1d/1D_read_forc_cases.h

    r2310 r2332  
    326326      write(*,*) 'SST initiale mxcalc: ',tsurf,mxcalc
    327327      do l = 1, llm
    328 ! Ligne du dessous à decommenter si on lit theta au lieu de temp
     328! Ligne du dessous ?? decommenter si on lit theta au lieu de temp
    329329!      temp(l) = t_mod(l)*(play(l)/pzero)**rkappa
    330330       temp(l) = t_mod(l)
     
    410410     &         ,ht_mod,hq_mod,hu_mod,hv_mod,w_mod,omega_mod,mxcalc)
    411411
    412 ! Pour tester les advections horizontales de T et Q, on met w_mod et omega_mod à zero (MPL 20131108)
     412! Pour tester les advections horizontales de T et Q, on met w_mod et omega_mod ?? zero (MPL 20131108)
    413413!     w_mod(:,:)=0.
    414414!     omega_mod(:,:)=0.
     
    424424      write(*,*) 'SST initiale mxcalc: ',tsurf,mxcalc
    425425      do l = 1, llm
    426 ! Ligne du dessous à decommenter si on lit theta au lieu de temp
     426! Ligne du dessous ?? decommenter si on lit theta au lieu de temp
    427427       temp(l) = th_mod(l)*(play(l)/pzero)**rkappa
    428428!      temp(l) = t_mod(l)
     
    736736!Time interpolation for initial conditions using TOGA interpolation routine
    737737         write(*,*) 'AVT 1ere INTERPOLATION: day,day1 = ',daytime,day1   
    738       CALL interp_case_time(day,day1,annee_ref                &
    739      &         ,year_ini_cas,day_ju_ini_cas,nt_cas,pdt_cas,nlev_cas       &
    740      &         ,ts_cas,plev_cas,t_cas,q_cas,u_cas,v_cas               &
    741      &         ,ug_cas,vg_cas,vitw_cas,du_cas,hu_cas,vu_cas           &
    742      &         ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas             &
    743      &         ,dq_cas,hq_cas,vq_cas,lat_cas,sens_cas,ustar_cas       &
    744      &         ,ts_prof_cas,plev_prof_cas,t_prof_cas,q_prof_cas,u_prof_cas,v_prof_cas         &
    745      &         ,ug_prof_cas,vg_prof_cas,vitw_prof_cas,du_prof_cas,hu_prof_cas,vu_prof_cas     &
    746      &         ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas,ht_prof_cas,vt_prof_cas,dtrad_prof_cas       &
    747      &         ,dq_prof_cas,hq_prof_cas,vq_prof_cas,lat_prof_cas,sens_prof_cas,ustar_prof_cas)
     738      CALL interp_case_time(day,day1,annee_ref                                                              &
     739!    &         ,year_ini_cas,day_ju_ini_cas,nt_cas,pdt_cas,nlev_cas                                         &
     740     &         ,nt_cas,nlev_cas                                                                             &
     741     &         ,ts_cas,plev_cas,t_cas,q_cas,u_cas,v_cas                                                     &
     742     &         ,ug_cas,vg_cas,vitw_cas,du_cas,hu_cas,vu_cas                                                 &
     743     &         ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas                                         &
     744     &         ,dq_cas,hq_cas,vq_cas,lat_cas,sens_cas,ustar_cas                                             &
     745     &         ,uw_cas,vw_cas,q1_cas,q2_cas                                                                 &
     746     &         ,ts_prof_cas,plev_prof_cas,t_prof_cas,q_prof_cas,u_prof_cas,v_prof_cas                       &
     747     &         ,ug_prof_cas,vg_prof_cas,vitw_prof_cas,du_prof_cas,hu_prof_cas,vu_prof_cas                   &
     748     &         ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas,ht_prof_cas,vt_prof_cas,dtrad_prof_cas      &
     749     &         ,dq_prof_cas,hq_prof_cas,vq_prof_cas,lat_prof_cas,sens_prof_cas,ustar_prof_cas               &
     750     &         ,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas)
    748751
    749752! vertical interpolation using TOGA interpolation routine:
  • LMDZ5/trunk/libf/phylmd/dyn1d/lmdz1d.F90

    r2317 r2332  
    3636#include "compar1d.h"
    3737#include "flux_arp.h"
     38#include "date_cas.h"
    3839#include "tsoilnudge.h"
    3940#include "fcg_gcssold.h"
     
    284285!             Different stages: soil model alone, atm. model alone
    285286!             then both models coupled
    286 !forcing_type = 10 ==> forcing_case = .true.
     287!forcing_type >= 100 ==> forcing_case = .true.
    287288!             initial profiles and large scale forcings in cas.nc
    288289!             LS convergence, omega and SST imposed from CINDY-DYNAMO files
     290!             101=cindynamo
     291!             102=bomex
    289292!forcing_type = 40 ==> forcing_GCSSold = .true.
    290293!             initial profile from GCSS file
     
    323326      elseif (forcing_type .eq.7) THEN
    324327       forcing_dice = .true.
    325       elseif (forcing_type .eq.10) THEN
     328      elseif (forcing_type .eq.101) THEN ! Cindynamo starts 1-10-2011 0h
    326329       forcing_case = .true.
     330       year_ini_cas=2011
     331       mth_ini_cas=10
     332       day_deb=1
     333       heure_ini_cas=0.
     334       pdt_cas=3*3600.         ! forcing frequency
     335      elseif (forcing_type .eq.102) THEN ! Bomex starts 24-6-1969 0h
     336       forcing_case = .true.
     337       year_ini_cas=1969
     338       mth_ini_cas=6
     339       day_deb=24
     340       heure_ini_cas=0.
     341       pdt_cas=1800.         ! forcing frequency
    327342      elseif (forcing_type .eq.40) THEN
    328343       forcing_GCSSold = .true.
     
    396411         fnday=-nday/float(day_step)
    397412      endif
     413      print *,'fnday=',fnday
    398414
    399415! Special case for arm_cu which lasts less than one day : 53100s !! (MPL 20111026)
     
    432448     & (year_ini_dice,mth_ini_dice,day_ini_dice,heure_ini_dice             &
    433449     & ,day_ju_ini_dice)
    434       ELSEIF (forcing_type .eq.10) THEN
     450      ELSEIF (forcing_type .gt.100) THEN
    435451! Convert the initial date to Julian day
    436       print*,'time cindy',year_ini_cas,mth_ini_cas,day_ini_cas
     452      day_ini_cas=day_deb
     453      print*,'time case',year_ini_cas,mth_ini_cas,day_ini_cas
    437454      call ymds2ju                                                         &
    438      & (year_ini_cas,mth_ini_cas,day_ini_cas,heure_ini_cas &
     455     & (year_ini_cas,mth_ini_cas,day_ini_cas,heure_ini_cas              &
    439456     & ,day_ju_ini_cas)
    440       print*,'time cindy 2',day_ju_ini_cas
     457      print*,'time case 2',day_ini_cas,day_ju_ini_cas
    441458      ELSEIF (forcing_type .eq.59) THEN
    442459! Convert the initial date of Sandu case to Julian day
     
    576593      print*,'play=',play(mxcalc)
    577594
    578 !Al1 pour SST forced, appellé depuis ocean_forced_noice
     595!Al1 pour SST forced, appell?? depuis ocean_forced_noice
    579596      ts_cur = tsurf ! SST used in read_tsurf1d
    580597!=====================================================================
     
    806823       if (prt_level.ge.1) then
    807824         print*,'XXXXXXXXXXXXXXXXXXX ITAP,day,time=',                       &
    808      &                                it,day,time,nint(fnday*day_step)
     825     &             it,day,time,nint(fnday*day_step),day_step
    809826         print*,'PAS DE TEMPS ',timestep
    810827       endif
  • LMDZ5/trunk/libf/phylmd/dyn1d/mod_1D_cases_read.F90

    r2310 r2332  
    77!Declarations specifiques au cas standard
    88        character*80 :: fich_cas
    9 ! Discrétisation
     9! Discr?tisation
    1010        integer nlev_cas, nt_cas
    1111
    1212
    13         integer year_ini_cas, day_ini_cas, mth_ini_cas
    14         real heure_ini_cas
    15         real day_ju_ini_cas   ! Julian day of case first day
     13!       integer year_ini_cas, day_ini_cas, mth_ini_cas
     14!       real heure_ini_cas
     15!       real day_ju_ini_cas   ! Julian day of case first day
    1616!       parameter (year_ini_cas=2011)
    17         parameter (year_ini_cas=1969)
     17!       parameter (year_ini_cas=1969)
    1818!       parameter (mth_ini_cas=10)
    19         parameter (mth_ini_cas=6)
     19!       parameter (mth_ini_cas=6)
    2020!       parameter (day_ini_cas=1)  ! 10 = 10Juil2006
    21         parameter (day_ini_cas=24)  ! 24 = 24 juin 1969
    22         parameter (heure_ini_cas=0.) !0h en secondes
    23         real pdt_cas
    24         parameter (pdt_cas=3.*3600)
     21!       parameter (day_ini_cas=24)  ! 24 = 24 juin 1969
     22!       parameter (heure_ini_cas=0.) !0h en secondes
     23!       real pdt_cas
     24!       parameter (pdt_cas=3.*3600)
    2525
    2626!CR ATTENTION TEST AMMA
     
    5050        real, allocatable::  ug_cas(:,:),vg_cas(:,:)
    5151        real, allocatable::  lat_cas(:),sens_cas(:),ts_cas(:),ustar_cas(:)
     52        real, allocatable::  uw_cas(:,:),vw_cas(:,:),q1_cas(:,:),q2_cas(:,:)
    5253
    5354!champs interpoles
     
    7475        real, allocatable::  du_prof_cas(:)
    7576        real, allocatable::  dv_prof_cas(:)
     77        real, allocatable::  uw_prof_cas(:)
     78        real, allocatable::  vw_prof_cas(:)
     79        real, allocatable::  q1_prof_cas(:)
     80        real, allocatable::  q2_prof_cas(:)
    7681
    7782
     
    105110      ENDIF
    106111      ierr=NF_INQ_DIMLEN(nid,rid,ii)
    107       print*,'OK nid,rid,lat',nid,rid,ii
     112      print*,'OK1 nid,rid,lat',nid,rid,ii
    108113!.......................................................................
    109114      ierr=NF_INQ_DIMID(nid,'lon',rid)
     
    112117      ENDIF
    113118      ierr=NF_INQ_DIMLEN(nid,rid,jj)
    114       print*,'OK nid,rid,lat',nid,rid,jj
     119      print*,'OK2 nid,rid,lat',nid,rid,jj
    115120!.......................................................................
    116121      ierr=NF_INQ_DIMID(nid,'lev',rid)
     
    119124      ENDIF
    120125      ierr=NF_INQ_DIMLEN(nid,rid,nlev_cas)
    121       print*,'OK nid,rid,nlev_cas',nid,rid,nlev_cas
     126      print*,'OK3 nid,rid,nlev_cas',nid,rid,nlev_cas
    122127!.......................................................................
    123128      ierr=NF_INQ_DIMID(nid,'time',rid)
     
    128133      ENDIF
    129134      ierr=NF_INQ_DIMLEN(nid,rid,nt_cas)
    130       print*,'nid,rid,nlev_cas',nid,rid,nt_cas
     135      print*,'OK4 nid,rid,nt_cas',nid,rid,nt_cas
    131136
    132137!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     
    150155        allocate(vg_cas(nlev_cas,nt_cas))
    151156        allocate(lat_cas(nt_cas),sens_cas(nt_cas),ts_cas(nt_cas),ustar_cas(nt_cas))
     157        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))
    152158
    153159
     
    175181        allocate(du_prof_cas(nlev_cas))
    176182        allocate(dv_prof_cas(nlev_cas))
     183        allocate(uw_prof_cas(nlev_cas))
     184        allocate(vw_prof_cas(nlev_cas))
     185        allocate(q1_prof_cas(nlev_cas))
     186        allocate(q2_prof_cas(nlev_cas))
    177187
    178188        print*,'Allocations OK'
    179         call read_cas(nid,nlev_cas,nt_cas                                  &
    180      &     ,z_cas,plev_cas,t_cas,q_cas,rh_cas,th_cas,rv_cas,u_cas,v_cas     &
    181      &     ,ug_cas,vg_cas,vitw_cas,du_cas,hu_cas,vu_cas,dv_cas,hv_cas,vv_cas &
    182      &     ,dt_cas,dtrad_cas,ht_cas,vt_cas,dq_cas,hq_cas,vq_cas             &
    183      &     ,dth_cas,hth_cas,vth_cas,dr_cas,hr_cas,vr_cas,sens_cas,lat_cas,ts_cas,ustar_cas)
     189        call read_cas(nid,nlev_cas,nt_cas                                       &
     190     &     ,z_cas,plev_cas,t_cas,q_cas,rh_cas,th_cas,rv_cas,u_cas,v_cas         &
     191     &     ,ug_cas,vg_cas,vitw_cas,du_cas,hu_cas,vu_cas,dv_cas,hv_cas,vv_cas    &
     192     &     ,dt_cas,dtrad_cas,ht_cas,vt_cas,dq_cas,hq_cas,vq_cas                 &
     193     &     ,dth_cas,hth_cas,vth_cas,dr_cas,hr_cas,vr_cas,sens_cas,lat_cas,ts_cas&
     194     &     ,ustar_cas,uw_cas,vw_cas,q1_cas,q2_cas)
     195        print*,'Read cas OK'
    184196
    185197
     
    209221        deallocate(ug_cas)
    210222        deallocate(vg_cas)
    211         deallocate(lat_cas,sens_cas,ts_cas,ustar_cas)
     223        deallocate(lat_cas,sens_cas,ts_cas,ustar_cas,uw_cas,vw_cas,q1_cas,q2_cas)
    212224
    213225!champs interpoles
     
    238250        deallocate(u_prof_cas)
    239251        deallocate(v_prof_cas)
     252        deallocate(uw_prof_cas)
     253        deallocate(vw_prof_cas)
     254        deallocate(q1_prof_cas)
     255        deallocate(q2_prof_cas)
    240256
    241257END SUBROUTINE deallocate_1D_cases
     
    247263     &     ,zz,pp,temp,qv,rh,theta,rv,u,v,ug,vg,w,                   &
    248264     &     du,hu,vu,dv,hv,vv,dt,dtrad,ht,vt,dq,hq,vq,                     &
    249      &     dth,hth,vth,dr,hr,vr,sens,flat,ts,ustar)
     265     &     dth,hth,vth,dr,hr,vr,sens,flat,ts,ustar,uw,vw,q1,q2)
    250266
    251267!program reading forcing of the case study
     
    272288      real dr(nlevel,ntime),hr(nlevel,ntime),vr(nlevel,ntime)
    273289      real flat(ntime),sens(ntime),ts(ntime),ustar(ntime)
     290      real uw(nlevel,ntime),vw(nlevel,ntime),q1(nlevel,ntime),q2(nlevel,ntime)
    274291
    275292
     
    490507           stop 'ustar'
    491508         endif
     509
     510      ierr=NF_INQ_VARID(nid,"uw",var3didin(36))
     511         if(ierr/=NF_NOERR) then
     512           write(*,*) NF_STRERROR(ierr)
     513           stop 'uw'
     514         endif
     515
     516      ierr=NF_INQ_VARID(nid,"vw",var3didin(37))
     517         if(ierr/=NF_NOERR) then
     518           write(*,*) NF_STRERROR(ierr)
     519           stop 'vw'
     520         endif
     521
     522      ierr=NF_INQ_VARID(nid,"q1",var3didin(38))
     523         if(ierr/=NF_NOERR) then
     524           write(*,*) NF_STRERROR(ierr)
     525           stop 'q1'
     526         endif
     527
     528      ierr=NF_INQ_VARID(nid,"q2",var3didin(39))
     529         if(ierr/=NF_NOERR) then
     530           write(*,*) NF_STRERROR(ierr)
     531           stop 'q2'
     532         endif
    492533 
    493534#ifdef NC_DOUBLE
     
    876917         endif
    877918!         write(*,*)'lecture ustar ok',ustar
     919
     920#ifdef NC_DOUBLE
     921         ierr = NF_GET_VAR_DOUBLE(nid,var3didin(36),uw)
     922#else
     923         ierr = NF_GET_VAR_REAL(nid,var3didin(36),uw)
     924#endif
     925         if(ierr/=NF_NOERR) then
     926            write(*,*) NF_STRERROR(ierr)
     927            stop "getvarup"
     928         endif
     929!         write(*,*)'lecture uw ok',uw
     930
     931#ifdef NC_DOUBLE
     932         ierr = NF_GET_VAR_DOUBLE(nid,var3didin(37),vw)
     933#else
     934         ierr = NF_GET_VAR_REAL(nid,var3didin(37),vw)
     935#endif
     936         if(ierr/=NF_NOERR) then
     937            write(*,*) NF_STRERROR(ierr)
     938            stop "getvarup"
     939         endif
     940!         write(*,*)'lecture vw ok',vw
     941
     942#ifdef NC_DOUBLE
     943         ierr = NF_GET_VAR_DOUBLE(nid,var3didin(38),q1)
     944#else
     945         ierr = NF_GET_VAR_REAL(nid,var3didin(38),q1)
     946#endif
     947         if(ierr/=NF_NOERR) then
     948            write(*,*) NF_STRERROR(ierr)
     949            stop "getvarup"
     950         endif
     951!         write(*,*)'lecture q1 ok',q1
     952
     953#ifdef NC_DOUBLE
     954         ierr = NF_GET_VAR_DOUBLE(nid,var3didin(39),q2)
     955#else
     956         ierr = NF_GET_VAR_REAL(nid,var3didin(39),q2)
     957#endif
     958         if(ierr/=NF_NOERR) then
     959            write(*,*) NF_STRERROR(ierr)
     960            stop "getvarup"
     961         endif
     962!         write(*,*)'lecture q2 ok',q2
    878963
    879964
     
    882967!======================================================================
    883968        SUBROUTINE interp_case_time(day,day1,annee_ref                &
    884      &         ,year_ini_cas,day_ini_cas,nt_cas,pdt_cas,nlev_cas      &
     969!    &         ,year_cas,day_cas,nt_cas,pdt_forc,nlev_cas      &
     970     &         ,nt_cas,nlev_cas                                       &
    885971     &         ,ts_cas,plev_cas,t_cas,q_cas,u_cas,v_cas               &
    886972     &         ,ug_cas,vg_cas,vitw_cas,du_cas,hu_cas,vu_cas           &
    887973     &         ,dv_cas,hv_cas,vv_cas,dt_cas,ht_cas,vt_cas,dtrad_cas   &
    888974     &         ,dq_cas,hq_cas,vq_cas,lat_cas,sens_cas,ustar_cas       &
     975     &         ,uw_cas,vw_cas,q1_cas,q2_cas                           &
    889976     &         ,ts_prof_cas,plev_prof_cas,t_prof_cas,q_prof_cas       &
    890977     &         ,u_prof_cas,v_prof_cas,ug_prof_cas,vg_prof_cas         &
     
    892979     &         ,dv_prof_cas,hv_prof_cas,vv_prof_cas,dt_prof_cas       &
    893980     &         ,ht_prof_cas,vt_prof_cas,dtrad_prof_cas,dq_prof_cas    &
    894      &         ,hq_prof_cas,vq_prof_cas,lat_prof_cas,sens_prof_cas,ustar_prof_cas)
     981     &         ,hq_prof_cas,vq_prof_cas,lat_prof_cas,sens_prof_cas    &
     982     &         ,ustar_prof_cas,uw_prof_cas,vw_prof_cas,q1_prof_cas,q2_prof_cas)
    895983         
    896984
     
    907995
    908996#include "compar1d.h"
     997#include "date_cas.h"
    909998
    910999! inputs:
    9111000        integer annee_ref
    9121001        integer nt_cas,nlev_cas
    913         integer year_ini_cas
    914         real day_ini_cas
    915         real day, day1,pdt_cas
     1002        real day, day1,day_cas
    9161003        real ts_cas(nt_cas)
    9171004        real plev_cas(nlev_cas,nt_cas)
     
    9271014        real lat_cas(nt_cas)
    9281015        real sens_cas(nt_cas)
    929         real ustar_cas(nt_cas)
     1016        real ustar_cas(nt_cas),uw_cas(nlev_cas,nt_cas),vw_cas(nlev_cas,nt_cas)
     1017        real q1_cas(nlev_cas,nt_cas),q2_cas(nlev_cas,nt_cas)
    9301018
    9311019! outputs:
     
    9411029        real dq_prof_cas(nlev_cas),hq_prof_cas(nlev_cas),vq_prof_cas(nlev_cas)
    9421030        real lat_prof_cas,sens_prof_cas,ts_prof_cas,ustar_prof_cas
     1031        real uw_prof_cas(nlev_cas),vw_prof_cas(nlev_cas),q1_prof_cas(nlev_cas),q2_prof_cas(nlev_cas)
    9431032! local:
    9441033        integer it_cas1, it_cas2,k
     
    9461035
    9471036
    948         print*,'Check time',day1,day_ini_cas,day_ini_cas+1
     1037        print*,'Check time',day1,day_ju_ini_cas,day_deb+1,pdt_cas
    9491038
    9501039! On teste si la date du cas AMMA est correcte.
     
    9521041! sont censes etre corrects.
    9531042! A supprimer a terme (MPL 20150623)
    954       if ((forcing_type.eq.10).and.(1.eq.0)) then
     1043!     if ((forcing_type.eq.10).and.(1.eq.0)) then
    9551044! Check that initial day of the simulation consistent with AMMA case:
    956        if (annee_ref.ne.2006) then
    957         print*,'Pour AMMA, annee_ref doit etre 2006'
    958         print*,'Changer annee_ref dans run.def'
    959         stop
    960        endif
    961        if (annee_ref.eq.2006 .and. day1.lt.day_ini_cas) then
    962         print*,'AMMA a debute le 10 juillet 2006',day1,day_ini_cas
    963         print*,'Changer dayref dans run.def'
    964         stop
    965        endif
    966        if (annee_ref.eq.2006 .and. day1.gt.day_ini_cas+1) then
    967         print*,'AMMA a fini le 11 juillet'
    968         print*,'Changer dayref ou nday dans run.def'
    969         stop
    970        endif
    971        endif
     1045!      if (annee_ref.ne.2006) then
     1046!       print*,'Pour AMMA, annee_ref doit etre 2006'
     1047!       print*,'Changer annee_ref dans run.def'
     1048!       stop
     1049!      endif
     1050!      if (annee_ref.eq.2006 .and. day1.lt.day_cas) then
     1051!       print*,'AMMA a debute le 10 juillet 2006',day1,day_cas
     1052!       print*,'Changer dayref dans run.def'
     1053!       stop
     1054!      endif
     1055!      if (annee_ref.eq.2006 .and. day1.gt.day_cas+1) then
     1056!       print*,'AMMA a fini le 11 juillet'
     1057!       print*,'Changer dayref ou nday dans run.def'
     1058!       stop
     1059!      endif
     1060!      endif
    9721061
    9731062! Determine timestep relative to the 1st day:
    9741063!       timeit=(day-day1)*86400.
    9751064!       if (annee_ref.eq.1992) then
    976 !        timeit=(day-day_ini_cas)*86400.
     1065!        timeit=(day-day_cas)*86400.
    9771066!       else
    9781067!        timeit=(day+61.-1.)*86400. ! 61 days between Nov01 and Dec31 1992
    9791068!       endif
    980       timeit=(day-day_ini_cas)*86400
     1069      timeit=(day-day_ju_ini_cas)*86400
     1070      print *,'day=',day
     1071      print *,'day_ju_ini_cas=',day_ju_ini_cas
     1072      print *,'pdt_cas=',pdt_cas
     1073      print *,'timeit=',timeit
     1074      print *,'nt_cas=',nt_cas
    9811075
    9821076! Determine the closest observation times:
     
    9941088       time_cas1=(it_cas1-1)*pdt_cas
    9951089       time_cas2=(it_cas2-1)*pdt_cas
     1090      print *,'it_cas1=',it_cas1
     1091      print *,'it_cas2=',it_cas2
     1092      print *,'time_cas1=',time_cas1
     1093      print *,'time_cas2=',time_cas2
    9961094
    9971095       if (it_cas1 .gt. nt_cas) then
    998         write(*,*) 'PB-stop: day, it_cas1, it_cas2, timeit: '            &
    999      &        ,day,day_ini_cas,it_cas1,it_cas2,timeit/86400.
     1096        write(*,*) 'PB-stop: day, day_ju_ini_cas,it_cas1, it_cas2, timeit: '            &
     1097     &        ,day,day_ju_ini_cas,it_cas1,it_cas2,timeit
    10001098        stop
    10011099       endif
     
    10571155        vq_prof_cas(k) = vq_cas(k,it_cas2)                                   &
    10581156     &          -frac*(vq_cas(k,it_cas2)-vq_cas(k,it_cas1))
     1157       uw_prof_cas(k) = uw_cas(k,it_cas2)                                   &
     1158     &          -frac*(uw_cas(k,it_cas2)-uw_cas(k,it_cas1))
     1159       vw_prof_cas(k) = vw_cas(k,it_cas2)                                   &
     1160     &          -frac*(vw_cas(k,it_cas2)-vw_cas(k,it_cas1))
     1161       q1_prof_cas(k) = q1_cas(k,it_cas2)                                   &
     1162     &          -frac*(q1_cas(k,it_cas2)-q1_cas(k,it_cas1))
     1163       q2_prof_cas(k) = q2_cas(k,it_cas2)                                   &
     1164     &          -frac*(q2_cas(k,it_cas2)-q2_cas(k,it_cas1))
    10591165        enddo
    10601166
Note: See TracChangeset for help on using the changeset viewer.