      SUBROUTINE REDUCEJULIAN(iyear,rjul,iyearadd)

C     REDUCEJULIAN REDUCES A MULTIYEAR JULIAN DATE TO 
C     YEAR AND SINGLE YEAR JULIAN DATE

      parameter (xdays=366.)

      iyearx=iyear
      ineg=0
      if ( rjul .lt. 0. ) then
       ineg=1
       iyearx=iyearx-1
      endif

      do 500 nz=1,300

       xsub=1.
       if ( (iyearx/4)*4 .eq. iyearx) xsub=0.
       if ( (iyearx/100)*100 .eq. iyearx .and.
     *      (iyearx/400)*400 .ne. iyearx ) xsub=1.
       if ( ineg .eq. 0 ) then
        if ( rjul .ge. xdays-xsub ) then
         iyearx=iyearx+1
         rjul=rjul-(xdays-xsub)
        else
         goto 450
        endif
      else
       if ( -rjul .ge. xdays-xsub ) then
        iyearx=iyearx-1
        rjul=rjul+(xdays-xsub)
       else
        goto 450
       endif
       endif

500   continue
450   continue

      iyearadd=iyearx-iyear

      return
      end

