DATA wdensmin/1.e-12/ wdens_ref=8.E-12 CALL getin_p('wdens_ref',wdens_ref) jyg !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!! Population dynamics parameters !!!!!!!!!!!!!!!!!!!!!!!!!!!! WRITE(,) 'wdens_ref=', wdens_ref jyg wdens(:) = wdens_ref jyg
DO k = 1, klev DO i = 1, klon ppi(i, k) = pi(i, k) deltatw0(i, k) = deltatw(i, k) deltaqw0(i, k) = deltaqw(i, k) te(i, k) = te0(i, k) qe(i, k) = qe0(i, k) dtls(i, k) = 0. dqls(i, k) = 0. d_deltat_gw(i, k) = 0. d_te(i, k) = 0. d_qe(i, k) = 0. d_deltatw(i, k) = 0. d_deltaqw(i, k) = 0. ! IM 060508 beg d_deltatw2(i, k) = 0. d_deltaqw2(i, k) = 0. ! IM 060508 end END DO END DO DO i = 1, klon sigmaw_in(i) = sigmaw(i) END DO jyg sigmaw(i) = amax1(sigmaw(i), sigmad) sigmaw(i) = amin1(sigmaw(i), 0.99) jyg
wdens(:) = wdens(:) + wgen(:)*dtime
d_wdens2(:) = wgen(:)*dtime
ELSE jyg sigmaw(i) = amax1(sigmad, sigd_con(i)) jyg sigmaw(i) = amin1(sigmaw(i), sigmaw_max) jyg tau_wk(i) = max(rad_wk(i)/(3.cstar(i))((cstar(i)/cstart)1.5 - 1), 100.) (1 - 2sigmaw(i)(1.-f_shear(i))) d_wdens(i) = ( wgen(i)(1.+2.(sigmaw(i)-sigmad)) & - wdens(i)tau_wk_inv_min & - 2.gfl(i)wdens(i)Cstar(i) )dtimesub d_sigmaw(i) = ( (1.-2f_shear(i)sigmaw(i))(gfl(i)Cstar(i)+wgen(i)sigmad/wdens(i)) & + 2.f_shear(i)wgen(i)*sigmaw(i)2/wdens(i) & - sigmaw(i)tau_wk_inv_min )dtimesub d_sig_col(i) = - 2f_shear(i)sigmaw(i)gfl(i)drdt_pos ! nrlmd ! nrlmd print *,'omg(igout,k) ', (k,omg(igout,k),k=1,klev)
! nrlmd detr(i, k) = 0.
entr(i, k) = detr(i, k) + gfl(i)*cstar(i) + &
sigmaw(i)*(1.-sigmaw(i))*dp_deltomg(i, k)
jyg
jyg ! nrlmd ! nrlmd ! nrlmd ! nrlmd ! nrlmd ! nrlmd ! nrlmd ! nrlmd ! nrlmd ! nrlmd sigmaw(i) = max(sigmad, sigd_con(i)) jyg print ,'wake, hw0(i), dthmin(i) ', hw0(i), dthmin(i) print ,'wake, 2.sum_dth(i)/(hw0(i)dthmin(i)) ', & 2.sum_dth(i)/(hw0(i)dthmin(i)) print ,'wake, sum_half_dth(i), sum_dth(i) ', & sum_half_dth(i), sum_dth(i) print ,'wake, rej 1' print ,'wake, rej 2' print ,'wake, rej 3' sigmaw(i) = amax1(sigmad, sigd_con(i)) jyg jyg jyg IF (((wape(i)>=wape2(i)) .AND. (wape2(i)<=wapecut)) .OR. (ktopw(i)<=2) .OR. & jyg .NOT. ok_qx_qw(i)) THEN jyg IF (((wape(i)>=wape2(i)) .AND. (wape2(i)<=wapecut)) .OR. (ktopw(i)<=2) .OR. & jyg .NOT. ok_qx_qw(i)) THEN jyg Outside subroutine "Wake" hw, wdens and sigmaw are zero when there are no wakes hw(i) = hwmin !jyg sigmaw(i) = sigmad !jyg sigmaw(i) = 0. !jyg awdens(i) = 0. wdens(i) = 0. IF (ok_qx_qw(i) .AND. k<=kupper(i)) THEN jyg jyg
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| integer, | intent(in), | DIMENSION (klon) | :: | znatsurf | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | p | ||
| real, | intent(in), | DIMENSION (klon, klev+1) | :: | ph | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | pi | ||
| real, | intent(in) | :: | dtime | |||
| real, | intent(in), | DIMENSION (klon, klev) | :: | te0 | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | qe0 | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | omgb | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | dtdwn | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | dqdwn | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | amdwn | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | amup | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | dta | ||
| real, | intent(in), | DIMENSION (klon, klev) | :: | dqa | ||
| real, | intent(in), | DIMENSION (klon) | :: | wgen | ||
| real, | intent(in), | DIMENSION (klon) | :: | sigd_con | ||
| real, | intent(in), | DIMENSION (klon) | :: | Cin | ||
| real, | intent(inout), | DIMENSION (klon, klev) | :: | deltatw | ||
| real, | intent(inout), | DIMENSION (klon, klev) | :: | deltaqw | ||
| real, | intent(inout), | DIMENSION (klon) | :: | sigmaw | ||
| real, | intent(inout), | DIMENSION (klon) | :: | awdens | ||
| real, | intent(inout), | DIMENSION (klon) | :: | wdens | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dth | ||
| real, | intent(out), | DIMENSION (klon) | :: | hw | ||
| real, | intent(out), | DIMENSION (klon) | :: | wape | ||
| real, | intent(out), | DIMENSION (klon) | :: | fip | ||
| real, | intent(out), | DIMENSION (klon) | :: | gfl | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dtls | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dqls | ||
| integer, | intent(out), | DIMENSION (klon) | :: | ktopw | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | omgbdth | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dp_omgb | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | tu | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | qu | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dtke | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dqke | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | omg | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | dp_deltomg | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | spread | ||
| real, | intent(out), | DIMENSION (klon) | :: | cstar | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | d_deltat_gw | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | d_deltatw2 | ||
| real, | intent(out), | DIMENSION (klon, klev) | :: | d_deltaqw2 | ||
| real, | intent(out), | DIMENSION (klon) | :: | d_sigmaw2 | ||
| real, | intent(out), | DIMENSION (klon) | :: | d_awdens2 | ||
| real, | intent(out), | DIMENSION (klon) | :: | d_wdens2 |