Line data Source code
1 : module mo_nln_matrix 2 : use shr_kind_mod, only : r8 => shr_kind_r8 3 : private 4 : public :: nlnmat 5 : contains 6 171752400 : subroutine nlnmat( mat, y, rxt, lmat, dti ) 7 : use chem_mods, only : gas_pcnst, rxntot, nzcnt 8 : implicit none 9 : !---------------------------------------------- 10 : ! ... dummy arguments 11 : !---------------------------------------------- 12 : real(r8), intent(in) :: dti 13 : real(r8), intent(in) :: lmat(nzcnt) 14 : real(r8), intent(in) :: y(gas_pcnst) 15 : real(r8), intent(in) :: rxt(rxntot) 16 : real(r8), intent(inout) :: mat(nzcnt) 17 171752400 : call nlnmat_finit( mat, lmat, dti ) 18 171752400 : end subroutine nlnmat 19 171752400 : subroutine nlnmat_finit( mat, lmat, dti ) 20 : use chem_mods, only : gas_pcnst, rxntot, nzcnt 21 : implicit none 22 : !---------------------------------------------- 23 : ! ... dummy arguments 24 : !---------------------------------------------- 25 : real(r8), intent(in) :: dti 26 : real(r8), intent(in) :: lmat(nzcnt) 27 : real(r8), intent(inout) :: mat(nzcnt) 28 : !---------------------------------------------- 29 : ! ... local variables 30 : !---------------------------------------------- 31 : !---------------------------------------------- 32 : ! ... complete matrix entries implicit species 33 : !---------------------------------------------- 34 171752400 : mat( 1) = lmat( 1) 35 171752400 : mat( 2) = lmat( 2) 36 171752400 : mat( 3) = lmat( 3) 37 171752400 : mat( 4) = lmat( 4) 38 171752400 : mat( 5) = lmat( 5) 39 171752400 : mat( 6) = lmat( 6) 40 171752400 : mat( 7) = lmat( 7) 41 171752400 : mat( 8) = lmat( 8) 42 171752400 : mat( 9) = lmat( 9) 43 171752400 : mat( 10) = lmat( 10) 44 171752400 : mat( 11) = lmat( 11) 45 171752400 : mat( 12) = lmat( 12) 46 171752400 : mat( 13) = lmat( 13) 47 171752400 : mat( 14) = lmat( 14) 48 171752400 : mat( 15) = lmat( 15) 49 171752400 : mat( 16) = lmat( 16) 50 171752400 : mat( 17) = lmat( 17) 51 171752400 : mat( 18) = lmat( 18) 52 171752400 : mat( 19) = lmat( 19) 53 171752400 : mat( 20) = lmat( 20) 54 171752400 : mat( 21) = lmat( 21) 55 171752400 : mat( 22) = lmat( 22) 56 171752400 : mat( 23) = lmat( 23) 57 171752400 : mat( 24) = lmat( 24) 58 171752400 : mat( 25) = lmat( 25) 59 171752400 : mat( 26) = lmat( 26) 60 171752400 : mat( 27) = lmat( 27) 61 171752400 : mat( 28) = lmat( 28) 62 171752400 : mat( 29) = lmat( 29) 63 171752400 : mat( 30) = lmat( 30) 64 171752400 : mat( 31) = lmat( 31) 65 171752400 : mat( 32) = lmat( 32) 66 171752400 : mat( 33) = lmat( 33) 67 171752400 : mat( 34) = lmat( 34) 68 171752400 : mat( 35) = lmat( 35) 69 171752400 : mat( 1) = mat( 1) - dti 70 171752400 : mat( 2) = mat( 2) - dti 71 171752400 : mat( 3) = mat( 3) - dti 72 171752400 : mat( 4) = mat( 4) - dti 73 171752400 : mat( 5) = mat( 5) - dti 74 171752400 : mat( 7) = mat( 7) - dti 75 171752400 : mat( 9) = mat( 9) - dti 76 171752400 : mat( 10) = mat( 10) - dti 77 171752400 : mat( 11) = mat( 11) - dti 78 171752400 : mat( 12) = mat( 12) - dti 79 171752400 : mat( 14) = mat( 14) - dti 80 171752400 : mat( 15) = mat( 15) - dti 81 171752400 : mat( 16) = mat( 16) - dti 82 171752400 : mat( 17) = mat( 17) - dti 83 171752400 : mat( 18) = mat( 18) - dti 84 171752400 : mat( 19) = mat( 19) - dti 85 171752400 : mat( 20) = mat( 20) - dti 86 171752400 : mat( 21) = mat( 21) - dti 87 171752400 : mat( 22) = mat( 22) - dti 88 171752400 : mat( 23) = mat( 23) - dti 89 171752400 : mat( 24) = mat( 24) - dti 90 171752400 : mat( 26) = mat( 26) - dti 91 171752400 : mat( 27) = mat( 27) - dti 92 171752400 : mat( 28) = mat( 28) - dti 93 171752400 : mat( 29) = mat( 29) - dti 94 171752400 : mat( 30) = mat( 30) - dti 95 171752400 : mat( 31) = mat( 31) - dti 96 171752400 : mat( 32) = mat( 32) - dti 97 171752400 : mat( 34) = mat( 34) - dti 98 171752400 : mat( 35) = mat( 35) - dti 99 171752400 : end subroutine nlnmat_finit 100 : end module mo_nln_matrix