Ignore:
Timestamp:
Oct 28, 2023, 4:47:32 PM (8 months ago)
Author:
oboucher
Message:

Introduction of a flag ok_conserv_d_q_con to conserve water when convection is called every second timestep.
The idea is to save d_q_con_zmasse from a timestep to the next rather than d_q_con. This is only as good as concvl for conserving water.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmdiso/physiq_mod.F90

    r4737 r4742  
    197197       d_q_dyn2d,d_ql_dyn2d,d_qs_dyn2d,d_qbs_dyn2d, &
    198198       ! Physic tendencies
    199        d_t_con,d_q_con,d_u_con,d_v_con, &
     199       d_t_con,d_q_con,d_q_con_zmasse,d_u_con,d_v_con, &
    200200       d_tr, &                              !! to be removed?? (jyg)
    201201       d_t_wake,d_q_wake, &
     
    13321332    real xtql1(ntraciso,klon),xtql2(ntraciso,klon),corrxtql(ntraciso)
    13331333#endif
    1334    
     1334
     1335    !--OB flag to activate better conservation of water tendency when convection is not called every timestep
     1336    LOGICAL, PARAMETER :: ok_conserv_d_q_con=.FALSE.
    13351337
    13361338    REAL, dimension(klon,klev) :: t_env,q_env
     
    40424044    ENDIF
    40434045
     4046    !--saving d_q_con * zmass for next timestep if convection is not called every timestep
     4047    IF (ok_conserv_d_q_con) THEN
     4048      d_q_con_zmasse(:,:) = d_q_con(:,:) * zmasse(:,:)
     4049    ENDIF
     4050
    40444051    !     CALL homogene(paprs, q_seri, d_q_con, u_seri,v_seri,
    40454052    !    .              d_u_con, d_v_con)
     
    40714078!!
    40724079!!
     4080
     4081    !--recompute d_q_con with zmasse from new timestep
     4082    IF (ok_conserv_d_q_con) THEN
     4083      d_q_con(:,:)=d_q_con_zmasse(:,:)/zmasse(:,:)
     4084    ENDIF
     4085
    40734086    CALL add_phys_tend(d_u_con, d_v_con, d_t_con, d_q_con, dql0, dqi0, dqbs0, paprs, &
    40744087         'convection',abortphy,flag_inhib_tend,itap,0 &
Note: See TracChangeset for help on using the changeset viewer.