Line data Source code
1 : module mo_phtadj
2 : private
3 : public :: phtadj
4 : contains
5 72960 : subroutine phtadj( p_rate, inv, m, ncol, nlev )
6 : use chem_mods, only : nfs, phtcnt
7 : use shr_kind_mod, only : r8 => shr_kind_r8
8 : implicit none
9 : !--------------------------------------------------------------------
10 : ! ... dummy arguments
11 : !--------------------------------------------------------------------
12 : integer, intent(in) :: ncol, nlev
13 : real(r8), intent(in) :: inv(ncol,nlev,max(1,nfs))
14 : real(r8), intent(in) :: m(ncol,nlev)
15 : real(r8), intent(inout) :: p_rate(ncol,nlev,max(1,phtcnt))
16 : !--------------------------------------------------------------------
17 : ! ... local variables
18 : !--------------------------------------------------------------------
19 : integer :: k
20 145920 : real(r8) :: im(ncol,nlev)
21 2407680 : do k = 1,nlev
22 35954688 : im(:ncol,k) = 1._r8 / m(:ncol,k)
23 35954688 : p_rate(:,k, 5) = p_rate(:,k, 5) * inv(:,k, 2) * im(:,k)
24 36027648 : p_rate(:,k, 6) = p_rate(:,k, 6) * inv(:,k, 2) * im(:,k)
25 : end do
26 72960 : end subroutine phtadj
27 : end module mo_phtadj
|