Changeset 4232


Ignore:
Timestamp:
Aug 31, 2022, 3:11:15 PM (21 months ago)
Author:
dcugnet
Message:
  • fix typo in infotrac_phy for id_OCS_strato calculation that was erroneously set to 0. (SL+DC)
  • fix in ener_conserv to avoid problems with pqs0 argument in the case of a model without ice water (EM+dc)
Location:
LMDZ6/trunk/libf/phylmd
Files:
3 edited

Legend:

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

    r3071 r4232  
    11subroutine ener_conserv(klon,klev,pdtphys, &
    2  &                      puo,pvo,pto,pqo,pql0,pqs0, &
     2 &                      puo,pvo,pto,qx,ivap,iliq,isol, &
    33 &                      pun,pvn,ptn,pqn,pqln,pqsn,dtke,masse,exner,d_t_ec)
    44
     
    2828USE phys_output_var_mod, ONLY : bils_ec,bils_ech,bils_tke,bils_kinetic,bils_enthalp,bils_latent,bils_diss
    2929USE add_phys_tend_mod, ONLY : fl_cor_ebil
     30USE infotrac_phy, ONLY: nqtot
    3031
    3132
     
    3940INTEGER, INTENT(IN) :: klon,klev
    4041REAL, INTENT(IN) :: pdtphys
    41 REAL, DIMENSION(klon,klev), INTENT(IN)      :: puo,pvo,pto,pqo,pql0,pqs0
     42REAL, DIMENSION(klon,klev), INTENT(IN)      :: puo,pvo,pto
     43REAL, DIMENSION(klon,klev,nqtot), INTENT(IN):: qx
     44INTEGER, INTENT(IN)                         :: ivap, iliq, isol
    4245REAL, DIMENSION(klon,klev), INTENT(IN)      :: pun,pvn,ptn,pqn,pqln,pqsn
    4346REAL, DIMENSION(klon,klev), INTENT(IN)      :: masse,exner
     
    5053REAL, DIMENSION(klon,klev+1) :: fluxu,fluxv,fluxt
    5154REAL, DIMENSION(klon,klev+1) :: dddu,dddv,dddt
    52 REAL, DIMENSION(klon,klev) :: d_u,d_v,d_t,zv,zu,d_t_ech
     55REAL, DIMENSION(klon,klev) :: d_u,d_v,d_t,zv,zu,d_t_ech, pqo, pql0, pqs0
    5356REAL ZRCPD
    5457
     
    5962modname='ener_conser'
    6063d_t_ec(:,:)=0.
     64
     65IF(ivap == 0) CALL abort_physic (modname,'can''t run without water vapour',1)
     66IF(iliq == 0) CALL abort_physic (modname,'can''t run without liquid water',1)
     67pqo  = qx(:,:,ivap)
     68pql0 = qx(:,:,iliq)
     69IF(isol /= 0) pqs0 = qx(:,:,isol)
    6170
    6271IF (iflag_ener_conserv==-1) THEN
  • LMDZ6/trunk/libf/phylmd/infotrac_phy.F90

    r4191 r4232  
    193193      tnames = PACK(tracers(:)%name, MASK=tracers(:)%isInPhysics)
    194194      id_BIN01_strat = strIdx(tnames, 'BIN01'   )
    195       id_OCS_strat   = strIdx(tnames, 'GASOSC'  )
     195      id_OCS_strat   = strIdx(tnames, 'GASOCS'  )
    196196      id_SO2_strat   = strIdx(tnames, 'GASSO2'  )
    197197      id_H2SO4_strat = strIdx(tnames, 'GASH2SO4')
  • LMDZ6/trunk/libf/phylmd/physiq_mod.F90

    r4229 r4232  
    50655065    d_t_ec(:,:)=0.
    50665066    forall (k=1: nbp_lev) exner(:, k) = (pplay(:, k)/paprs(:,1))**RKAPPA
    5067     CALL ener_conserv(klon,klev,pdtphys,u,v,t,qx(:,:,ivap),qx(:,:,iliq),qx(:,:,isol), &
     5067    CALL ener_conserv(klon,klev,pdtphys,u,v,t,qx,ivap,iliq,isol, &
    50685068         u_seri,v_seri,t_seri,q_seri,ql_seri,qs_seri,pbl_tke(:,:,is_ave)-tke0(:,:), &
    50695069         zmasse,exner,d_t_ec)
Note: See TracChangeset for help on using the changeset viewer.