Ignore:
Timestamp:
Feb 13, 2015, 8:22:32 AM (9 years ago)
Author:
fhourdin
Message:

Introduction of a bi-gausian descrption of the subgrid scale
distribution of water associated with deep convection.

Introduction d'un schéma bi-gausien pour la distribution sous maille
de l'eau associée à la convection profonde.

Contrôlé par
iflag_cld_cv=2 (1 pour le schéma de Bony et Emanuel 2001)
autres paramètres de contrôle : tau_cld_cv et coefw_cld_cv

Arnaud Jam

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/physiq.F90

    r2200 r2205  
    636636  !$OMP THREADPRIVATE(fact_cldcon,facttemps)
    637637
    638   integer iflag_cldcon
    639   save iflag_cldcon
    640   !$OMP THREADPRIVATE(iflag_cldcon)
     638  integer iflag_cldth
     639  save iflag_cldth
     640  !$OMP THREADPRIVATE(iflag_cldth)
    641641  logical ptconv(klon,klev)
    642642  !IM cf. AM 081204 BEG
     
    913913          solarlong0,seuil_inversion, &
    914914          fact_cldcon, facttemps,ok_newmicro,iflag_radia, &
    915           iflag_cldcon,iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
     915          iflag_cldth,iflag_ratqs,ratqsbas,ratqshaut,tau_ratqs, &
    916916          ok_ade, ok_aie, ok_cdnc, aerosol_couple,  &
    917917          flag_aerosol, flag_aerosol_strat, new_aod, &
     
    10141014     print*,'CYCLE_DIURNE', cycle_diurne
    10151015     !
    1016      IF (iflag_con.EQ.2.AND.iflag_cldcon.GT.-1) THEN
    1017         abort_message = 'Tiedtke needs iflag_cldcon=-2 or -1'
     1016     IF (iflag_con.EQ.2.AND.iflag_cldth.GT.-1) THEN
     1017        abort_message = 'Tiedtke needs iflag_cldth=-2 or -1'
    10181018        CALL abort_gcm (modname,abort_message,1)
    10191019     ENDIF
     
    11301130                ,alp_bl_prescr, ale_bl_prescr)
    11311131           ! 11/09/06 rajout initialisation ALE et ALP du wake et PBL(YU)
    1132            !        print*,'apres ini_wake iflag_cldcon=', iflag_cldcon
     1132           !        print*,'apres ini_wake iflag_cldth=', iflag_cldth
    11331133        endif
    11341134
     
    21702170             ftd,fqd,lalim_conv,wght_th, &
    21712171             ev, ep,epmlmMm,eplaMm, &
    2172              wdtrainA,wdtrainM,wght_cvfd)
     2172             wdtrainA,wdtrainM,wght_cvfd,qtc_cv,sigt_cv, &
     2173             tau_cld_cv,coefw_cld_cv)
    21732174        ! RomP <<<
    21742175
     
    22202221     !   calcul des proprietes des nuages convectifs
    22212222     clwcon0(:,:)=fact_cldcon*clwcon0(:,:)
     2223     IF (iflag_cld_cv <= 1) THEN
    22222224     call clouds_gno &
    22232225          (klon,klev,q_seri,zqsat,clwcon0,ptconv,ratqsc,rnebcon0)
     2226     ELSE
     2227     call clouds_bigauss &
     2228          (klon,klev,q_seri,zqsat,qtc_cv,sigt_cv,ptconv,ratqsc,rnebcon0)
     2229     ENDIF
     2230
    22242231
    22252232     ! =================================================================== c
     
    24542461  END IF
    24552462
    2456   !      print*,'apres callwake iflag_cldcon=', iflag_cldcon
     2463  !      print*,'apres callwake iflag_cldth=', iflag_cldth
    24572464  !
    24582465  !===================================================================
     
    27752782  ! water distribution
    27762783  CALL  calcratqs(klon,klev,prt_level,lunout,        &
    2777        iflag_ratqs,iflag_con,iflag_cldcon,pdtphys,  &
     2784       iflag_ratqs,iflag_con,iflag_cldth,pdtphys,  &
    27782785       ratqsbas,ratqshaut,tau_ratqs,fact_cldcon,   &
    27792786       ptconv,ptconvth,clwcon0th, rnebcon0th,     &
     
    27972804       frac_impa, frac_nucl, beta_prec_fisrt, &
    27982805       prfl, psfl, rhcl,  &
    2799        zqasc, fraca,ztv,zpspsk,ztla,zthl,iflag_cldcon, &
     2806       zqasc, fraca,ztv,zpspsk,ztla,zthl,iflag_cldth, &
    28002807       iflag_ice_thermo)
    28012808  !
     
    28532860  !
    28542861  !IM cf FH
    2855   !     IF (iflag_cldcon.eq.-1) THEN ! seulement pour Tiedtke
    2856   IF (iflag_cldcon.le.-1) THEN ! seulement pour Tiedtke
     2862  !     IF (iflag_cldth.eq.-1) THEN ! seulement pour Tiedtke
     2863  IF (iflag_cldth.le.-1) THEN ! seulement pour Tiedtke
    28572864     snow_tiedtke=0.
    28582865     !     print*,'avant calcul de la pseudo precip '
    2859      !     print*,'iflag_cldcon',iflag_cldcon
    2860      if (iflag_cldcon.eq.-1) then
     2866     !     print*,'iflag_cldth',iflag_cldth
     2867     if (iflag_cldth.eq.-1) then
    28612868        rain_tiedtke=rain_con
    28622869     else
     
    28912898     ENDDO
    28922899
    2893   ELSE IF (iflag_cldcon.ge.3) THEN
     2900  ELSE IF (iflag_cldth.ge.3) THEN
    28942901     !  On prend pour les nuages convectifs le max du calcul de la
    28952902     !  convection et du calcul du pas de temps precedent diminue d'un facteur
     
    29782985     !   On prend la somme des fractions nuageuses et des contenus en eau
    29792986
    2980      if (iflag_cldcon>=5) then
     2987     if (iflag_cldth>=5) then
    29812988
    29822989        do k=1,klev
Note: See TracChangeset for help on using the changeset viewer.