subroutine empty(en, x0, y0, z0, thx0, thy0, tx1, tx2, & ty1, ty2, tz, enp, x, y, z, thx, thy) implicit none include 'const.inc' double precision en, x0, y0, z0, thx0, thy0, rx0, ry0, tx1, tx2 double precision ty1, ty2, tz, x, y, z, thx, thy, rx, ry, ep, enp double precision xdis, ydis c if((x0.ge.tx1.and.x0.le.tx2).and.(y0.ge.ty1.and.y0.le.ty2)) then xdis = x0 + tz*dtan(thx0) ydis = y0 + tz*dtan(thy0) if( (xdis.ge.tx1.and.xdis.le.tx2) .and. & (ydis.ge.ty1.and.ydis.le.ty2) ) then x = xdis y = ydis z = z0 + tz thx = thx0 thy = thy0 enp = en else x = -1.d6 y = -1.d6 z = -1.d6 thx = -1.d6 thy = -1.d6 enp = -1.d6 endif else x = -1.d6 y = -1.d6 z = -1.d6 thx = -1.d6 thy = -1.d6 enp = -1.d6 endif return end