Changeset 4381


Ignore:
Timestamp:
Jan 13, 2023, 11:39:28 AM (16 months ago)
Author:
evignon
Message:

pour les downdrafts, suppression de la cle de compilation pour protection sous flag
iflag_thermals_down
+ stop si le flux compensatoire est vers le haut

Location:
LMDZ6/trunk/libf/phylmd
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/thermcell_down.F90

    r4377 r4381  
    44! thermcell_updown_dq: calcul du transport d'un traceur en pr??sence
    55! d'up/down drafts
     6!
    67!--------------------------------------------------------------
    78
     
    8384       fthd(ig,ilay)=-fdn(ig,ilay)*thetad(ig,ilay)
    8485       !!!!ATTENTION HYPOTHESE de FLUX COMPENSATOIRE DESCENDANT ET DONC comme schema amont on va chercher theta au dessus!!!!!
     86       !!!! si ce n'est pas le cas on stoppe le code !!!!
     87       if (fup(ig,ilay)-fdn(ig,ilay) .lt. 0.) then
     88          write(*,*) 'flux compensatoire montant, cas non traite par thermcell_updown_dq'
     89          stop         
     90       endif
    8591       fthe(ig,ilay)=-(fup(ig,ilay)-fdn(ig,ilay))*theta(ig,ilay)
    8692       fthtot(ig,ilay)=fthu(ig,ilay)+fthd(ig,ilay)+fthe(ig,ilay)
  • LMDZ6/trunk/libf/phylmd/thermcell_ini_mod.F90

    r4095 r4381  
    77   real           :: r_aspect_thermals,tau_thermals,fact_thermals_ed_dz
    88   integer        :: iflag_thermals_ed,iflag_thermals_optflux,iflag_thermals_closure
    9 
     9   integer        :: iflag_thermals_down
    1010
    1111!$OMP THREADPRIVATE(dvdq,dqimpl,prt_level,lunout)
     
    1313!$OMP THREADPRIVATE(r_aspect_thermals,tau_thermals,fact_thermals_ed_dz)
    1414!$OMP THREADPRIVATE(iflag_thermals_ed,iflag_thermals_optflux,iflag_thermals_closure)
     15!$OMP THREADPRIVATE(iflag_thermals_down)
     16
    1517
    1618   REAL, SAVE :: fact_epsilon=0.002
     
    8587   CALL getin_p('iflag_thermals_closure',iflag_thermals_closure)
    8688
     89   iflag_thermals_down = 0
     90   CALL getin_p('iflag_thermals_down',iflag_thermals_down)
     91
     92
    8793     CALL getin_p('thermals_fact_epsilon',fact_epsilon)
    8894     CALL getin_p('thermals_betalpha',betalpha)
  • LMDZ6/trunk/libf/phylmd/thermcell_main.F90

    r4377 r4381  
    1818      USE thermcell_ini_mod, ONLY: thermcell_ini,dqimpl,dvdq,prt_level,lunout,prt_level
    1919      USE thermcell_ini_mod, ONLY: iflag_thermals_closure,iflag_thermals_ed,tau_thermals,r_aspect_thermals
     20      USE thermcell_ini_mod, ONLY: iflag_thermals_down
    2021      USE thermcell_ini_mod, ONLY: RD,RG
    2122
     
    481482!   calcul du transport vertical
    482483!------------------------------------------------------------------
    483 
    484 #undef DevThermcellDown
    485 #ifdef DevThermcellDown
    486       print*,'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'
    487       print*,'WARNING !!! routine thermcell_down en cours de developpement'
    488       CALL thermcell_updown_dq(ngrid,nlay,ptimestep,lmax,entr0,detr0,0.5*detr0,0.5*entr0,masse,zthl)
    489 !--------------------------------------------------------------
    490 #endif
     484      IF (iflag_thermals_down .GT. 0) THEN
     485        print*,'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA'
     486        print*,'WARNING !!! routine thermcell_down en cours de developpement'
     487        CALL thermcell_updown_dq(ngrid,nlay,ptimestep,lmax,entr0,detr0,0.5*detr0,0.5*entr0,masse,zthl)
     488      ENDIF
     489      !--------------------------------------------------------------
    491490
    492491      call thermcell_dq(ngrid,nlay,dqimpl,ptimestep,fm0,entr0,masse,  &
Note: See TracChangeset for help on using the changeset viewer.