Changes in src/drydepokernel.f90 [4c64400:1c0d5e6] in flexpart.git
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/drydepokernel.f90
r4c64400 r1c0d5e6 40 40 ! * 41 41 !***************************************************************************** 42 ! Changes:43 ! eso 10/2016: Added option to disregard kernel44 !45 !*****************************************************************************46 47 42 48 43 use unc_mod … … 52 47 implicit none 53 48 54 real(dep_prec), dimension(maxspec) :: deposit 55 real :: x,y,ddx,ddy,xl,yl,wx,wy,w 49 real :: x,y,deposit(maxspec),ddx,ddy,xl,yl,wx,wy,w 56 50 integer :: ix,jy,ixp,jyp,ks,nunc,nage,kp 57 51 … … 80 74 endif 81 75 82 ! If no kernel is used, direct attribution to grid cell83 !******************************************************84 85 if (lnokernel) then86 do ks=1,nspec87 if ((abs(deposit(ks)).gt.0).and.DRYDEPSPEC(ks)) then88 if ((ix.ge.0).and.(jy.ge.0).and.(ix.le.numxgrid-1).and. &89 (jy.le.numygrid-1)) then90 drygridunc(ix,jy,ks,kp,nunc,nage)= &91 drygridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks)92 end if93 end if94 end do95 else ! use kernel96 97 76 98 77 ! Determine mass fractions for four grid points 99 78 !********************************************** 100 do ks=1,nspec79 do ks=1,nspec 101 80 102 if ((abs(deposit(ks)).gt.0).and.DRYDEPSPEC(ks)) then81 if ((abs(deposit(ks)).gt.0).and.DRYDEPSPEC(ks)) then 103 82 104 if ((ix.ge.0).and.(jy.ge.0).and.(ix.le.numxgrid-1).and. & 83 if (.not.usekernel) then 84 drygridunc(ix,jy,ks,kp,nunc,nage)= & 85 drygridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks) 86 else 87 if ((ix.ge.0).and.(jy.ge.0).and.(ix.le.numxgrid-1).and. & 105 88 (jy.le.numygrid-1)) then 106 w=wx*wy 107 drygridunc(ix,jy,ks,kp,nunc,nage)= & 108 drygridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks)*w 109 continue 110 endif 89 w=wx*wy 90 drygridunc(ix,jy,ks,kp,nunc,nage)= & 91 drygridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks)*w 92 endif 111 93 112 if ((ixp.ge.0).and.(jyp.ge.0).and.(ixp.le.numxgrid-1).and. &94 if ((ixp.ge.0).and.(jyp.ge.0).and.(ixp.le.numxgrid-1).and. & 113 95 (jyp.le.numygrid-1)) then 114 96 w=(1.-wx)*(1.-wy) 115 97 drygridunc(ixp,jyp,ks,kp,nunc,nage)= & 116 98 drygridunc(ixp,jyp,ks,kp,nunc,nage)+deposit(ks)*w 117 endif99 endif 118 100 119 if ((ixp.ge.0).and.(jy.ge.0).and.(ixp.le.numxgrid-1).and. &101 if ((ixp.ge.0).and.(jy.ge.0).and.(ixp.le.numxgrid-1).and. & 120 102 (jy.le.numygrid-1)) then 121 w=(1.-wx)*wy103 w=(1.-wx)*wy 122 104 drygridunc(ixp,jy,ks,kp,nunc,nage)= & 123 105 drygridunc(ixp,jy,ks,kp,nunc,nage)+deposit(ks)*w 124 endif106 endif 125 107 126 if ((ix.ge.0).and.(jyp.ge.0).and.(ix.le.numxgrid-1).and. &108 if ((ix.ge.0).and.(jyp.ge.0).and.(ix.le.numxgrid-1).and. & 127 109 (jyp.le.numygrid-1)) then 128 w=wx*(1.-wy)110 w=wx*(1.-wy) 129 111 drygridunc(ix,jyp,ks,kp,nunc,nage)= & 130 112 drygridunc(ix,jyp,ks,kp,nunc,nage)+deposit(ks)*w 131 endif113 endif 132 114 133 endif 115 endif ! kernel 116 endif ! deposit>0 134 117 135 end do 136 end if 118 end do 137 119 138 120 end subroutine drydepokernel
Note: See TracChangeset
for help on using the changeset viewer.