44 integer :: itime,i,j,jjjjmmdd,ihmmss,numshortout,numshortall
45 integer :: ix,jy,ixp,jyp
46 real :: xlon,ylat,zlim,dt1,dt2,dtt,ddx,ddy,rddx,rddy,p1,p2,p3,p4,topo
47 character :: adate*8,atime*6
49 integer(kind=2) :: idump(3,maxpart)
50 integer :: i4dump(maxpart)
56 jul=bdate+
real(itime,kind=dp)/86400._dp
57 call
caldate(jul,jjjjmmdd,ihmmss)
58 write(adate,
'(i8.8)') jjjjmmdd
59 write(atime,
'(i6.6)') ihmmss
65 dt1=
real(itime-memtime(1))
66 dt2=
real(memtime(2)-itime)
80 if (itra1(i).eq.itime)
then
81 xlon=xlon0+xtra1(i)*dx
82 ylat=ylat0+ytra1(i)*dy
104 topo=p1*oro(ix ,jy) &
115 if (xlon.gt.180.) xlon=xlon-360.
116 if (xlon.lt.-180.) xlon=xlon+360.
118 numshortall=numshortall+1
119 if ((xlon.gt.-140).and.(xlon.lt.60).and.(ylat.gt.10).and. &
120 (xmass1(i,1).gt.0.))
then
121 numshortout=numshortout+1
122 idump(1,numshortout)=nint(xlon*180.)
123 idump(2,numshortout)=nint(ylat*360.)
124 zlim=min(ztra1(i)+topo,32766.)
125 idump(3,numshortout)=nint(zlim)
126 i4dump(numshortout)=npoint(i)
136 open(unitshortpart,file=path(2)(1:length(2))//
'shortposit_'//adate// &
137 atime,form=
'unformatted')
142 write(unitshortpart) itime
143 write(unitshortpart) numshortout
144 write(unitshortpart) &
145 (i4dump(i),(idump(j,i),j=1,3),i=1,numshortout)
148 write(*,*) numshortout,numshortall
subroutine caldate(juldate, yyyymmdd, hhmiss)
subroutine partoutput_short(itime)