Line data Source code
1 : module mo_adjrxt
2 : private
3 : public :: adjrxt
4 : contains
5 1489176 : subroutine adjrxt( rate, inv, m, ncol, nlev )
6 : use shr_kind_mod, only : r8 => shr_kind_r8
7 : use chem_mods, only : nfs, rxntot
8 : implicit none
9 : !--------------------------------------------------------------------
10 : ! ... dummy arguments
11 : !--------------------------------------------------------------------
12 : integer, intent(in) :: ncol, nlev
13 : real(r8), intent(in) :: inv(ncol,nlev,nfs)
14 : real(r8), intent(in) :: m(ncol,nlev)
15 : real(r8), intent(inout) :: rate(ncol,nlev,rxntot)
16 : !--------------------------------------------------------------------
17 : ! ... local variables
18 : !--------------------------------------------------------------------
19 1489176 : real(r8) :: im(ncol,nlev)
20 2314006344 : im(:,:) = 1._r8 / m(:,:)
21 2314006344 : rate(:,:, 5) = rate(:,:, 5) * inv(:,:, 5)
22 2314006344 : rate(:,:, 11) = rate(:,:, 11) * inv(:,:, 6)
23 2314006344 : rate(:,:, 12) = rate(:,:, 12) * inv(:,:, 5)
24 2314006344 : rate(:,:, 14) = rate(:,:, 14) * inv(:,:, 5)
25 2314006344 : rate(:,:, 6) = rate(:,:, 6) * inv(:,:, 4) * inv(:,:, 4) * im(:,:)
26 2314006344 : rate(:,:, 13) = rate(:,:, 13) * inv(:,:, 5) * inv(:,:, 1)
27 1489176 : end subroutine adjrxt
28 : end module mo_adjrxt
|