subroutine zhaocarr_gscond::zhaocarr_gscond_run | ( | integer, intent(in) | im, |
integer, intent(in) | ix, | ||
integer, intent(in) | km, | ||
real(kind=kind_phys), intent(in) | dt, | ||
real(kind=kind_phys), intent(in) | dtf, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | prsl, | ||
real(kind=kind_phys), dimension(im), intent(in) | ps, | ||
real(kind=kind_phys), dimension(ix,km), intent(inout) | q, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | clw1, | ||
real(kind=kind_phys), dimension(ix,km), intent(in) | clw2, | ||
real(kind=kind_phys), dimension(ix,km), intent(out) | cwm, | ||
real(kind=kind_phys), dimension(ix,km), intent(inout) | t, | ||
real(kind=kind_phys), dimension(ix,km), intent(inout) | tp, | ||
real(kind=kind_phys), dimension(ix,km), intent(inout) | qp, | ||
real(kind=kind_phys), dimension(im), intent(inout) | psp, | ||
real(kind=kind_phys), dimension(ix,km), intent(inout) | tp1, | ||
real(kind=kind_phys), dimension(ix,km), intent(inout) | qp1, | ||
real(kind=kind_phys), dimension(im), intent(inout) | psp1, | ||
real(kind=kind_phys), dimension(im,km), intent(in) | u, | ||
logical, intent(in) | lprnt, | ||
integer, intent(in) | ipr, | ||
character(len=*), intent(out) | errmsg, | ||
integer, intent(out) | errflg | ||
) |
\[ A_{t}=(t-tp)/dt \]
\[ A_{q}=(q-qp)/dt \]
\[ A_{p}=(prsl-\frac{prsl}{ps} \times psp)/dt \]
\[ b=1-\left ( \frac{f_{s}-f}{f_{s}-u} \right )^{1/2} \]
for \(f>u\); and \(b=0\) for \(f<u\). where \(f_{s}=1.0\) is the relative humidity in a cloud region and \(u\) ,which is an input parameter accounts for the effects of subgrid-scale variations in moisture on large-scale condensation. Since both temperature and moisture may vary at scales smaller than the model grid scale, it is possible for condensation to occur before the grid-average relative humidity reaches 100%. Therefore \(u\) needs to be less than 1.0 to account for the subgrid-scale variation of temperature and moisture fields and allow subgrid-scale condensation.\[ q_{0}=uq_{s} \]
\[ E_{c}=\frac{q_{0}-q}{dt} \]
\[ E_{c}=\frac{q_{s}}{dt}(u-f) \]
where \(dt\) is the time step for precipitation calculation in the model. It is a simplified version of a higher-order cloud evaporation algorithm (Rutledge and Hobbs (1983) [91]). In the case where all clouds will evaporate before \(u\) is reached, the following equation is used:\[ E_{c}=\frac{cwm}{dt} \]
\[ C_{g}=\frac{M-q_{s}f_{t}}{1+(f\epsilon L^{2}q_{s}/RC_{p}T^{2})}+E_{c} \]
where\[ M=A_{q}-\frac{f\epsilon Lq_{s}}{RT^{2}}A_{t}+\frac{fq_{s}}{p}A_{p} \]
To close the system, an equation for the relative humidity tendency \(f_{t}\) was derived by Sundqvist et al.(1989) [98] using the hypothesis that the quantity \(M+E_{c}\) is divided into one part, \(bM\),which condenses in the already cloudy portion of a grid square, and another part, \((1-b)M+E_{c}\),which is used to increase the relative humidity of the cloud-free portion and the cloudiness in the square. The equation is written as\[ f_{t}=\frac{2(1-b)(f_{s}-u)[(1-b)M+E_{c}]}{2q_{s}(1-b)(f_{s}-u)+cwm/b} \]
\[ cwm=cwm+(C_{g}-E_{c})\times dt \]
\[ q=q-(C_{g}-E_{c})\times dt \]
\[ t=t+\frac{L}{C_{p}}(C_{g}-E_{c})\times dt \]
References physcons::con_cp, physcons::con_eps, physcons::con_epsm1, physcons::con_g, physcons::con_hfus, physcons::con_hvap, physcons::con_psat, physcons::con_rd, physcons::con_rv, physcons::con_ttp, and funcphys::fpvs().