      subroutine rechos (x1,n,x2,kp1)
      integer maxcor, maxcr2, maxcr4, maxcr5, maxcr6, maxcr7, maxcr8
c     parameter (maxcor=2, maxcr2=maxcor*maxcor, maxcr4=maxcr2*maxcr2,
c    1 maxcr5=maxcr2*(maxcr2+1)/2, maxcr6=maxcor*2, maxcr7=maxcr6+1,
c    2 maxcr8=maxcr6*maxcr7+1)
      parameter (maxcor=2, maxcr2=4, maxcr4=16,
     1 maxcr5=10, maxcr6=4, maxcr7=5,
     2 maxcr8=21)
      double precision x1(maxcr6,maxcr7), x2(maxcr6,maxcr7), coef(maxcr7
     1 ,maxcr6), b(maxcr6)
      k=kp1-1
c initialize the coefficient matrix
      do 10 i=kp1,n
      do 10 j=1,n
   10 coef(i,j)=0.0d0
      do 20 i=1,k
      do 20 j=1,n
   20 coef(i,j)=x1(j,i)
c perform gaussian elimination
      call gauss (coef,n)
c initialize the b vector = 0
      do 30 i=1,n
   30 b(i)=0.0d0
c solve for x2(k+1)
      iortho=1
      call solve (coef,b,x2(1,k+1),n,iortho)
      return
      end
