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