69 int FDEval(
const double x[],
double *g,
double jac[],
int rowno,
const int jacnum[],
int mode,
70 int ignerr,
int *errcnt,
int numvar,
int numjac,
int thread)
override
87 if (mode == 1 || mode == 3)
92 if (mode == 2 || mode == 3)
121 conopt.setMessageHandler(msghandler);
127 conopt.loadModel(modeldata);
132#if defined(CONOPT_LICENSE_INT_1) && defined(CONOPT_LICENSE_INT_2) && defined(CONOPT_LICENSE_INT_3) && defined(CONOPT_LICENSE_TEXT)
133 std::string license = CONOPT_LICENSE_TEXT;
134 COI_Error +=
conopt.setLicense(CONOPT_LICENSE_INT_1, CONOPT_LICENSE_INT_2, CONOPT_LICENSE_INT_3, license);
148 else if (
conopt.modelStatus() != 16 ||
conopt.solutionStatus() != 1)
150 cpp_log(
conopt,
"Solver or Model status not as expected (1,16)", -1);
static constexpr double Infinity
CONOPT C++ interface header file. This is the main object for the CONOPT C++ interface.
void buildModel()
adds the variables and constraints for the problem
int main(int argc, char **argv)
Main program. A simple setup and call of CONOPT.
int FDEval(const double x[], double *g, double jac[], int rowno, const int jacnum[], int mode, int ignerr, int *errcnt, int numvar, int numjac, int thread) override
defines the nonlinearities of the model by returning numerical values.
int addVariable(double lower, double upper, double curr=0, int varstatus=-1)
adds a variable to the model. The non-zero coefficients are added later.
int addConstraint(ConoptConstraintType constype, double rhs, int slackstatus=-1)
adds a constraint to the problem. The non-zero coefficients are added later
void cpp_log(Conopt &conopt, std::string msg, int code)
std::string getProgramName(char *execname)