!输入下限值-2.5,-2.5,-2.5,1,-1,4
!输入上限值 2.5,2.5,2.5,2.5,1,8
SUBROUTINE FFX(N,X,FX)
DIMENSION X(N)
FX=24586.2*(X(1)*X(3)*(X(1)+2*X(2)))
RETURN
END
SUBROUTINE GGX(N,KG,X,IW)
DIMENSION X(N),GX(KG)
GX(1)=1-3.14*X(2)*X(1)**2
GX(2)=X(1)*X(2)-31000*X(3)
GX(3)=0.002-X(3)
GX(4)=X(3)-0.01
GX(5)=X(1)-2
GX(6)=X(2)-2.5
GX(7)=0.1-X(1)
GX(8)=0.3-X(2)
GX(9)=20*X(3)-X(1)
GX(10)=X(1)-50*X(3)
DO I=1,KG
IF(GX(I)>=1E-15)GOTO 111
ENDDO
IW=1
RETURN
111 IW=0
RETURN
END
SUBROUTINE RANDOM(Q,RM)
RM35=2.0**35
RM36=2.0*RM35
RM37=2.0*RM36
RM =5.0*RM
IF(RM.GE.RM37) RM=RM-RM37
IF(RM.GE.RM36) RM=RM-RM36
IF(RM.GE.RM35) RM=RM-RM35
Q=RM/RM35
RETURN
END
SUBROUTINE XRANDOM(N,X,RM,BL,BU)
DIMENSION X(N),BL(N),BU(N)