Changeset 37 for branches/petra/src/wetdepokernel.f90
- Timestamp:
- Apr 22, 2015, 3:42:35 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/petra/src/wetdepokernel.f90
r4 r37 1 1 !********************************************************************** 2 ! Copyright 1998 ,1999,2000,2001,2002,2005,2007,2008,2009,2010*2 ! Copyright 1998-2015 * 3 3 ! Andreas Stohl, Petra Seibert, A. Frank, Gerhard Wotawa, * 4 4 ! Caroline Forster, Sabine Eckhardt, John Burkhart, Harald Sodemann * … … 20 20 !********************************************************************** 21 21 22 subroutine wetdepokernel(nunc,deposit,x,y, nage,kp)23 ! i i i ii22 subroutine wetdepokernel(nunc,deposit,x,y,itage,nage,kp) 23 ! i i i i i i 24 24 !***************************************************************************** 25 25 ! * 26 26 ! Attribution of the deposition from an individual particle to the * 27 ! deposition fields using a uniform kernel with bandwidths dxout and dyout.* 27 ! deposition fields using a uniform kernel with bandwidths dxout * 28 ! and dyout. * 28 29 ! * 29 30 ! Author: A. Stohl * 30 31 ! * 31 32 ! 26 December 1996 * 33 ! 34 ! PS, 2/2015: do not use kernel for itage < 3 h 35 ! same as for concentration in conccalc.f90 32 36 ! * 33 37 !***************************************************************************** … … 48 52 49 53 real :: x,y,deposit(maxspec),ddx,ddy,xl,yl,wx,wy,w 50 integer :: ix,jy,ixp,jyp,nunc,nage,ks,kp 54 integer :: ix,jy,ixp,jyp,nunc,nage,ks,kp,itage 51 55 52 56 xl=(x*dx+xoutshift)/dxout … … 74 78 75 79 76 ! Determine mass fractions for four grid points 77 !********************************************** 80 if (itage .lt. itagekernmin) then 81 ! no kernel, direct attribution to grid cell 82 83 do ks=1,nspec 84 if (ix.ge.0 .and. jy.ge.0 .and. & 85 ix.le.numxgrid-1 .and. jy.le.numygrid-1) & 86 wetgridunc(ix,jy,ks,kp,nunc,nage)= & 87 wetgridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks) 88 enddo 89 90 else 91 ! Determine mass fractions for four grid points & distribute 78 92 79 do ks=1,nspec93 do ks=1,nspec 80 94 81 if ((ix.ge.0).and.(jy.ge.0).and.(ix.le.numxgrid-1).and. & 82 (jy.le.numygrid-1)) then 83 w=wx*wy 84 wetgridunc(ix,jy,ks,kp,nunc,nage)= & 85 wetgridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks)*w 95 if (ix.ge.0 .and. jy.ge.0 .and. & 96 ix.le.numxgrid-1 .and. jy.le.numygrid-1) then 97 w=wx*wy 98 wetgridunc(ix,jy,ks,kp,nunc,nage)= & 99 wetgridunc(ix,jy,ks,kp,nunc,nage)+deposit(ks)*w 100 endif 101 102 if ((ixp.ge.0).and.(jyp.ge.0).and.& 103 (ixp.le.numxgrid-1).and. (jyp.le.numygrid-1)) then 104 w=(1.-wx)*(1.-wy) 105 wetgridunc(ixp,jyp,ks,kp,nunc,nage)= & 106 wetgridunc(ixp,jyp,ks,kp,nunc,nage)+deposit(ks)*w 107 endif 108 109 if ((ixp.ge.0).and.(jy.ge.0).and. & 110 (ixp.le.numxgrid-1).and.(jy.le.numygrid-1)) then 111 w=(1.-wx)*wy 112 wetgridunc(ixp,jy,ks,kp,nunc,nage)= & 113 wetgridunc(ixp,jy,ks,kp,nunc,nage)+deposit(ks)*w 114 endif 115 116 if ((ix.ge.0).and.(jyp.ge.0).and. & 117 (ix.le.numxgrid-1).and.(jyp.le.numygrid-1)) then 118 w=wx*(1.-wy) 119 wetgridunc(ix,jyp,ks,kp,nunc,nage)= & 120 wetgridunc(ix,jyp,ks,kp,nunc,nage)+deposit(ks)*w 121 endif 122 123 end do 124 86 125 endif 87 126 88 if ((ixp.ge.0).and.(jyp.ge.0).and.(ixp.le.numxgrid-1).and. &89 (jyp.le.numygrid-1)) then90 w=(1.-wx)*(1.-wy)91 wetgridunc(ixp,jyp,ks,kp,nunc,nage)= &92 wetgridunc(ixp,jyp,ks,kp,nunc,nage)+deposit(ks)*w93 endif94 95 if ((ixp.ge.0).and.(jy.ge.0).and.(ixp.le.numxgrid-1).and. &96 (jy.le.numygrid-1)) then97 w=(1.-wx)*wy98 wetgridunc(ixp,jy,ks,kp,nunc,nage)= &99 wetgridunc(ixp,jy,ks,kp,nunc,nage)+deposit(ks)*w100 endif101 102 if ((ix.ge.0).and.(jyp.ge.0).and.(ix.le.numxgrid-1).and. &103 (jyp.le.numygrid-1)) then104 w=wx*(1.-wy)105 wetgridunc(ix,jyp,ks,kp,nunc,nage)= &106 wetgridunc(ix,jyp,ks,kp,nunc,nage)+deposit(ks)*w107 endif108 end do109 110 127 end subroutine wetdepokernel
Note: See TracChangeset
for help on using the changeset viewer.