CONOPT
Loading...
Searching...
No Matches
Registration of problem sizes

Functions

int COI_CALLCONV COIDEF_NumVar (coiHandle_t cntvect, int numvar)
 defines the number of variables in the model.
 
int COI_CALLCONV COIDEF_NumCon (coiHandle_t cntvect, int numcon)
 defines the number of constraints in the model.
 
int COI_CALLCONV COIDEF_NumNz (coiHandle_t cntvect, int numnz)
 defines the number of nonzero elements in the Jacobian.
 
int COI_CALLCONV COIDEF_NumNlNz (coiHandle_t cntvect, int numnlnz)
 defines the Number of Nonlinear Nonzeros.
 
int COI_CALLCONV COIDEF_NumHess (coiHandle_t cntvect, int numhess)
 defines the Number of Hessian Nonzeros.
 
int COI_CALLCONV COIDEF_OptDir (coiHandle_t cntvect, int optdir)
 defines the Optimization Direction.
 
int COI_CALLCONV COIDEF_ObjVar (coiHandle_t cntvect, int objvar)
 defines the Objective Variable.
 
int COI_CALLCONV COIDEF_ObjCon (coiHandle_t cntvect, int objcon)
 defines the Objective Constraint.
 

Detailed Description

Before any model data can be loaded into CONOPT, the dimensions of the problem must be first specified.

This includes the number of variables, the number of constraints, the number of non-zeros, etc. The routines for registering the problem sizes are given in this section. These sizes are used in callbacks when loading the problem matrix and evaluating the first derivatives.

Function Documentation

◆ COIDEF_NumVar()

int COI_CALLCONV COIDEF_NumVar ( coiHandle_t cntvect,
int numvar )

defines the number of variables in the model.

Attention
Mandatory routine. The number must be positive.

defines the number of variables in the model. The number does not include any slack or artificial variables.

Parameters
cntvectthe control vector
numvarthe number of variables

◆ COIDEF_NumCon()

int COI_CALLCONV COIDEF_NumCon ( coiHandle_t cntvect,
int numcon )

defines the number of constraints in the model.

Attention
Mandatory routine. The number must be positive.

defines the number of constraints in the model. The number includes the objective function if the objective is defined as an expression (see COIDEF_ObjCon() and COIDEF_ObjVar()).

Parameters
cntvectthe control vector
numconthe number of constraints

◆ COIDEF_NumNz()

int COI_CALLCONV COIDEF_NumNz ( coiHandle_t cntvect,
int numnz )

defines the number of nonzero elements in the Jacobian.

Attention
Mandatory routine. The number must be positive.

defines the number of nonzero elements in the Jacobian of the model (the matrix of first derivatives of all constraints with respect to all variables).

Parameters
cntvectthe control vector
numnzthe number of nonzero elements

◆ COIDEF_NumNlNz()

int COI_CALLCONV COIDEF_NumNlNz ( coiHandle_t cntvect,
int numnlnz )

defines the Number of Nonlinear Nonzeros.

Attention
Mandatory routine.

defines the number of nonlinear nonzeros in the Jacobian. The number is zero if the model is linear and positive if the model is nonlinear.

Parameters
cntvectthe control vector
numnlnzthe number of nonlinear nonzeros

◆ COIDEF_NumHess()

int COI_CALLCONV COIDEF_NumHess ( coiHandle_t cntvect,
int numhess )

defines the Number of Hessian Nonzeros.

defines the number of nonzeros in the Hessian. The number is zero if the model is linear and positive if the model is nonlinear.

Parameters
cntvectthe control vector
numhessthe number of nonzeros in Hessian

◆ COIDEF_OptDir()

int COI_CALLCONV COIDEF_OptDir ( coiHandle_t cntvect,
int optdir )

defines the Optimization Direction.

defines the optimization direction. OptDir = +1 defines maximization and OptDir = -1 defines minimization. Setting an optimization direction is optional. If no optimization direction is set, the CONOPT will search for a feasible solution and then stop.

Parameters
cntvectthe control vector
optdirthe optimization direction

◆ COIDEF_ObjVar()

int COI_CALLCONV COIDEF_ObjVar ( coiHandle_t cntvect,
int objvar )

defines the Objective Variable.

Parameters
cntvectthe control vector
objvarthe index of the objective variable

◆ COIDEF_ObjCon()

int COI_CALLCONV COIDEF_ObjCon ( coiHandle_t cntvect,
int objcon )

defines the Objective Constraint.

Note
The constraint must be a Free Row, see argument TYPE in ReadMatrix in section ReadMatrix.

If both an objective variable and constraint are set, the last one set will be used in the optimization. You can turn a previously defined objective off by defining variable or constraint 0 as the objective (Fortran notation) or variable or constraint -1 (C notation).

Parameters
cntvectthe control vector
objconthe index of the objective constraint