da_accre_adj.inc
References to this file elsewhere.
1 subroutine da_accre_adj(DT,SCR2,SCR3,PRA,SCR29,SCR39,PRA9,kts,kte,kms,kme)
2
3 !-----------------------------------------------------------------------
4 ! Purpose: Accretion (Collection)
5 !-----------------------------------------------------------------------
6
7 implicit none
8
9 integer, intent(in) :: kts, kte, kms, kme
10 real, dimension(kms:kme), intent(in) :: DT, SCR2, SCR3
11 real, dimension(kms:kme), intent(in) :: PRA, PRA9
12 real, dimension(kms:kme), intent(inout) :: SCR29, SCR39
13
14 ! local
15 integer :: k
16 real :: gamma, QRTH
17
18 gamma = 0.002
19 QRTH = 1.e-6
20
21 do K = kts, kte
22
23 if ( DT(k) <= 0. ) cycle
24
25 if ( SCR2(k) > 0. .and. SCR3(k) > QRTH ) then
26 SCR39(K) = SCR39(K) + gamma * 0.875 * SCR2(k) * (SCR3(K)*1.e3)**(-0.125 ) * 1.e3 * PRA9(K)
27 SCR29(K) = SCR29(K) + gamma * (SCR3(K)*1.e3)**0.875 * PRA9(K)
28 else if (SCR2(k) > 0. .and. SCR3(k) <= QRTH ) then
29 SCR29(k) = SCR29(k) + gamma * (QRTH*1.e3)**0.875 * PRA9(k)
30 end if
31
32 end do
33
34 end subroutine da_accre_adj