subroutine gwdc::gwdc_run | ( | integer, intent(in) | im, |
integer, intent(in) | ix, | ||
integer, intent(in) | km, | ||
integer, intent(in) | lat, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | u1, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | v1, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | t1, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | q1, | ||
real(kind=kind_phys), intent(in) | deltim, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | pmid1, | ||
real(kind=kind_phys), dimension(ix,km+1), intent(in) | pint1, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | dpmid1, | ||
real(kind=kind_phys), dimension(im), intent(in) | qmax, | ||
integer, dimension(im), intent(in) | ktop, | ||
integer, dimension(im), intent(in) | kbot, | ||
integer, dimension(im), intent(in) | kcnv, | ||
real(kind=kind_phys), dimension(im), intent(in) | cldf, | ||
real(kind=kind_phys), intent(in) | grav, | ||
real(kind=kind_phys), intent(in) | cp, | ||
real(kind=kind_phys), intent(in) | rd, | ||
real(kind=kind_phys), intent(in) | fv, | ||
real(kind=kind_phys), intent(in) | pi, | ||
real(kind=kind_phys), dimension(im), intent(in) | dlength, | ||
logical, intent(in) | lprnt, | ||
integer, intent(in) | ipr, | ||
real(kind=kind_phys), intent(in) | fhour, | ||
real(kind=kind_phys), dimension(ix,km), intent(out) | utgwc, | ||
real(kind=kind_phys), dimension(ix,km), intent(out) | vtgwc, | ||
real(kind=kind_phys), dimension(im), intent(out) | tauctx, | ||
real(kind=kind_phys), dimension(im), intent(out) | taucty, | ||
character(len=*), intent(out) | errmsg, | ||
integer, intent(out) | errflg | ||
) |
Ri=N^2/\eta^2
where \eta is the vertical shear ( dU/dz).\mu=\frac{gQ_{0}a_{1}}{c_{p}T_{0}NU^{2}}
where Q_{0} is the maximum deep convective heating rate in a horizontal grid point calculated from cumulus parameterization. a_{1} is the half-width of the forcing function. g is gravity. c_{p} is specific heat at constant pressure. T_{0} is the layer mean temperature (T1). As eqs.(18) and (19) Chun and Baik (1998) [18], the zonal momentum flux is given by\tau_{x}=-[\rho U^{3}/(N\triangle x)]G(\mu)
whereG(\mu)=c_{1}c_2^2 \mu^{2}
wher \rho is the local density. The tunable parameter c_1 is related to the horizontal structure of thermal forcing. The tunable parameter c_2 is related to the basic-state wind and stability and the bottom and top heights of thermal forcing. If the atmosphere is dynamically unstable at the cloud top, the convective GWD calculation is skipped at that grid point.Ri_{min}\approx\frac{Ri(1-\mu|c_{2}|)}{(1+\mu Ri^{1/2}|c_{2}|)^{2}}
\mu_{s}=\frac{1}{|c_{2}|}[2\sqrt{2+\frac{1}{\sqrt{Ri}}}-(2+\frac{1}{\sqrt{Ri}})]
Then the saturation zonal momentum flux is given by\tau_{s}=-[\rho U^{3}/(N\triangle x)]c_{1}c_2^2\mu_s^2