
      function funmin(x,n)
      implicit double precision (a-h,o-z)
      dimension x(n)
      x1 = x(1)
      x2 = x(2)
      funmin = (4 - 2.1*x1**2 + x1**4/3)*x1**2 +
     >         x1*x2 + (-4 + 4*x2**2)*x2**2
      end
C  ---------------------------------------------------------------------
      SUBROUTINE GRANAL ( N, X, GRAD )
C  ---------------------------------------------------------------------
      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
      DIMENSION X(N), GRAD(N)
      grad(1)=8*x(1)-8.4*x(1)**3+2*x(1)**5+x(2)
      grad(2)=x(1)-8*x(2)+16*x(2)**3
      end
C  ---------------------------------------------------------------------
      SUBROUTINE SUBSUM ( M, N, X, F )
C  ---------------------------------------------------------------------
      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
      DIMENSION X(N), F(M)
      END
C  ---------------------------------------------------------------------
      SUBROUTINE HANAL ( H, LD, N, X )
C  ---------------------------------------------------------------------
      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
      DIMENSION H(LD,N), X(N)
      h(1,1) = 8.-25.2*x(1)**2 + 10*x(1)**4
      h(2,1) = 1.
      h(1,2) = h(2,1) 
      h(2,2) = -8 + 48*x(2)**2
      END
C  ---------------------------------------------------------------------
      SUBROUTINE JANAL ( M, N, X, FJ, LD )
C  ---------------------------------------------------------------------
      IMPLICIT DOUBLE PRECISION (A-H,O-Z)
      DIMENSION X(N), FJ(LD,N)
      END
