Ignore:
Timestamp:
May 20, 2017, 9:41:16 AM (7 years ago)
Author:
Laurent Fairhead
Message:

Merged trunk changes r2865:2885 into testing branch

Location:
LMDZ5/branches/testing
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/testing

  • LMDZ5/branches/testing/libf/phylmd/physiq_mod.F90

    r2870 r2886  
    156156!!!       d_s_the, d_dens_the, &            ! due to thermals
    157157       !                                 
     158       ptconv, &
    158159       wbeff, convoccur, zmax_th, &
    159160       sens, flwp, fiwp,  &
     
    599600    LOGICAL,SAVE :: ok_adjwk=.FALSE.
    600601    !$OMP THREADPRIVATE(ok_adjwk)
     602    INTEGER,SAVE :: iflag_adjwk=0            !jyg
     603    !$OMP THREADPRIVATE(iflag_adjwk)         !jyg
    601604    REAL,SAVE :: oliqmax=999.,oicemax=999.
    602605    !$OMP THREADPRIVATE(oliqmax,oicemax)
     
    876879    save iflag_cld_th
    877880    !$OMP THREADPRIVATE(iflag_cld_th)
    878     logical ptconv(klon,klev)
     881!IM logical ptconv(klon,klev)  !passe dans phys_local_var_mod
    879882    !IM cf. AM 081204 BEG
    880883    logical ptconvth(klon,klev)
     
    12011204       CALL suphel ! initialiser constantes et parametres phys.
    12021205       CALL getin_p('random_notrig_max',random_notrig_max)
    1203        CALL getin_p('ok_adjwk',ok_adjwk)
     1206       CALL getin_p('ok_adjwk',ok_adjwk)
     1207       IF (ok_adjwk) iflag_adjwk=2  ! for compatibility with older versions
     1208       ! iflag_adjwk: ! 0 = Default: no convective adjustment of w-region
     1209                      ! 1 => convective adjustment but state variables are unchanged
     1210                      ! 2 => convective adjustment and state variables are changed
     1211       CALL getin_p('iflag_adjwk',iflag_adjwk)
    12041212       CALL getin_p('oliqmax',oliqmax)
    12051213       CALL getin_p('oicemax',oicemax)
     
    24232431       ! after the call to the convective scheme.
    24242432       IF (iflag_wake>=1) then
    2425           IF (ok_adjwk) THEN
     2433          IF (iflag_adjwk >= 1) THEN
    24262434             limbas(:) = 1
    24272435             CALL ajsec(paprs, pplay, t_w, q_w, limbas, &
     
    24412449                ENDDO
    24422450             ENDDO
    2443              CALL add_wake_tend &
     2451             IF (iflag_adjwk == 2) THEN
     2452               CALL add_wake_tend &
    24442453                 (d_deltat_ajs_cv, d_deltaq_ajs_cv, dsig0, ddens0, wkoccur1, 'ajs_cv', abortphy)
    2445           ENDIF  ! (ok_adjwk)
     2454             ENDIF  ! (iflag_adjwk == 2)
     2455          ENDIF  ! (iflag_adjwk >= 1)
    24462456       ENDIF ! (iflag_wake>=1)
    24472457       !>jyg
     
    25252535          !    Add the tendency due to the dry adjustment of the wake profile
    25262536          IF (iflag_wake>=1) THEN
    2527              DO k=1,klev
    2528                 DO i=1,klon
    2529                    ftd(i,k) = ftd(i,k) + wake_s(i)*d_t_adjwk(i,k)/dtime
    2530                    fqd(i,k) = fqd(i,k) + wake_s(i)*d_q_adjwk(i,k)/dtime
    2531                    d_t_con(i,k) = d_t_con(i,k) + wake_s(i)*d_t_adjwk(i,k)
    2532                    d_q_con(i,k) = d_q_con(i,k) + wake_s(i)*d_q_adjwk(i,k)
    2533                 ENDDO
    2534              ENDDO
    2535           ENDIF
     2537            IF (iflag_adjwk == 2) THEN
     2538              DO k=1,klev
     2539                 DO i=1,klon
     2540                    ftd(i,k) = ftd(i,k) + wake_s(i)*d_t_adjwk(i,k)/dtime
     2541                    fqd(i,k) = fqd(i,k) + wake_s(i)*d_q_adjwk(i,k)/dtime
     2542                    d_t_con(i,k) = d_t_con(i,k) + wake_s(i)*d_t_adjwk(i,k)
     2543                    d_q_con(i,k) = d_q_con(i,k) + wake_s(i)*d_q_adjwk(i,k)
     2544                 ENDDO
     2545              ENDDO
     2546            ENDIF  ! (iflag_adjwk = 2)
     2547          ENDIF   ! (iflag_wake>=1)
    25362548          !>jyg
    25372549          !
Note: See TracChangeset for help on using the changeset viewer.