29 REAL DPHT(nsndht,nwsite), DPUC(nsndht,nwsite)
30 REAL DPVC(nsndht,nwsite),RHS1(nzgrd),SYTHYT(nwsite)
49 IF (icall .EQ. 1)
THEN
62 READ (12,*) dopx,dopy,dopz
67 xdop(it)=1.0+(dopx-xorig)/dscrs
68 ydop(it)=1.0+(dopy-yorig)/dscrs
70 ix=max(1,nint(xdop(it)))
71 jy=max(1,nint(ydop(it)))
74 zfix=sfcht(ix,jy)-sythyt(it)
81 READ (12,*) zzht,zzwd,zzws
83 IF (ll .LT. nsndht)
THEN
84 dpht(ll,it)=zzht-sythyt(it)
88 dpht(nsndht,it)=zzht-sythyt(it)
93 IF (nwhts(it) .GT. nsndht) nwhts(it)=nsndht
99 rhs1(ll)=rhs(ix,jy,ll)
100 zsigl(it,ll)=rhs1(ll)
109 IF (dpwd(ll).GT.-9998.9)
THEN
110 IF (dpht(ll,it) .GT. z0)
THEN
113 $ -dpws(ll)*sin(dpwd(ll)/57.295)
115 $ -dpws(ll)*cos(dpwd(ll)/57.295)
116 dpht(newll,it)=dpht(ll,it)
128 ix=max(1,nint(xdop(it)))
129 jy=max(1,nint(ydop(it)))
142 IF (dpht(iz,it).GT.zlevkl) levhi(it)=kl
149 DO 140 kl=1,levhi(it)
158 ELSE IF (zf.GT.z0 .AND. zf.LE. dpht(1,it))
THEN
162 CALL lgntrp(usig(it,kl),z0,dpht(1,it),
164 CALL lgntrp(vsig(it,kl),z0,dpht(1,it),
171 DO 135 jht=1,nwhts(it)-1
174 IF (zf.GT.zw1 .AND. zf.LE.zw2)
THEN
178 CALL lgntrp(usig(it,kl),zw1,zw2,zf,
179 $ dpuc(jht,it),dpuc(jht+1,it))
180 CALL lgntrp(vsig(it,kl),zw1,zw2,zf,
181 $ dpvc(jht,it),dpvc(jht+1,it))
193 DO 160 jsond=1,numdop
194 levtop=max(levtop,levhi(jsond))
200 DO 200 jsond=1,numdop
203 DO 180 il=levhi(jsond)+1,levtop
214 IF (jd.NE.jsond)
THEN
215 IF (levhi(jd).GE.il)
THEN
216 weight=
wndwt(xx,yy,xdop(jd),ydop(jd))
218 sumu=sumu+weight*usig(jd,il)
219 sumv=sumv+weight*vsig(jd,il)
224 IF (sumwt.GT.0.0)
THEN
225 usig(jsond,il)=sumu/sumwt
226 vsig(jsond,il)=sumv/sumwt
228 WRITE (*,*)
'CHECK DOPSIG NEAR 180'
237 IF (levtop.LT.nlvl)
THEN
238 DO 225 jsond=1,numdop
239 DO 220 il=levtop+1,nlvl
240 usig(jsond,il)=usig(jsond,levtop)
241 vsig(jsond,il)=vsig(jsond,levtop)
subroutine lgntrp(Y, X0, X1, X, Y0, Y1)
real function wndwt(X, Y, XOBS, YOBS)