Download User's Guide for SNOPT Version 7: Software for Large

Transcript
3.
3.4.
The snOptA interface
15
Subroutine snOptA
Problem NPA is solved by a call to subroutine snOptA, whose parameters are defined here.
Note that most machines use double precision declarations as shown, but some machines
use real. The same applies to the function routine usrfun and all other routines.
subroutine snOptA
&
( Start, nF, n, nxname, nFname,
&
ObjAdd, ObjRow, Prob, usrfun,
&
iAfun, jAvar, lenA, neA, A,
&
iGfun, jGvar, lenG, neG,
&
xlow, xupp, xnames, Flow, Fupp, Fnames,
&
x, xstate, xmul, F, Fstate, Fmul,
&
INFO, mincw, miniw, minrw,
&
nS, nInf, sInf,
&
cu, lencu, iu, leniu, ru, lenru,
&
cw, lencw, iw, leniw, rw, lenrw )
external
&
usrfun
integer
&
INFO, lenA, lencu, lencw, lenG, leniu, leniw, lenru, lenrw,
&
mincw, miniw, minrw, n, neA, neG, nF, nFname, nInf, nS,
&
nxname, ObjRow, Start, iAfun(lenA), iGfun(lenG), iu(leniu),
&
iw(leniw), jAvar(lenA), jGvar(lenG), xstate(n), Fstate(nF)
double precision
&
ObjAdd, sInf, A(lenA), F(nF), Fmul(nF), Flow(nF), Fupp(nF),
&
ru(lenru), rw(lenrw), x(n), xlow(n), xmul(n), xupp(n)
character
&
Prob*8, cu(lencu)*8, cw(lencw)*8,
&
Fnames(nFname)*8, xnames(nxname)*8
On entry:
Start
nF
is an integer that specifies how a starting point is to be obtained.
Start = 0
(Cold start) requests that the CRASH procedure be used, unless an
Old basis, Insert, or Load file is specified.
Start = 1
is the same as 0 but more meaningful when a basis file is given.
Start = 2
(Warm start) means that xstate and Fstate define a valid starting
point (perhaps from an earlier call, though not necessarily).
is the number of problem functions in F (x), including the objective function (if
any) and the linear and nonlinear constraints. Upper and lower bounds on x can
be defined via xLow and xUpp (below) and should not be included in F . (nF > 0)
nF is the dimension of the function vector F. Since F includes the objective (if any)
and all the general linear and nonlinear constraints, there must be at least one row
for the problem to be meaningful.
n
is n, the number of variables. This is the number of columns of G and A. (n > 0)