40   snopt.setProbName( 
"snopt" );
    41   snopt.setIntParameter( 
"Major Print level", 1 );
    42   snopt.setIntParameter( 
"Minor Print level", 1 );
    43   snopt.setIntParameter( 
"Derivative option", 1 ); 
    44   snopt.setIntParameter( 
"Verify level ", 3 ); 
    45   snopt.setIntParameter(
"Iterations limit", 200000);
    46   snopt.setRealParameter( 
"Major feasibility tolerance",  1.0e-4); 
    47   snopt.setRealParameter( 
"Minor feasibility tolerance",  1.0e-4); 
    48   snopt.setRealParameter( 
"Major optimality tolerance",   1.0e-2); 
    61   status_  = snopt.solve(Cold, snopt.neF, snopt.n, snopt.ObjAdd,
    63                      snopt.iAfun, snopt.jAvar, snopt.A, snopt.neA,
    64                      snopt.iGfun, snopt.jGvar, snopt.neG,
    65                      snopt.xlow, snopt.xupp, snopt.Flow, snopt.Fupp,
    66                      snopt.x, snopt.xstate, snopt.xmul,
    67                      snopt.F, snopt.Fstate, snopt.Fmul,
    76     std::string msg = 
"ERROR: Snopt failed to find a solution. EXIT:" + std::to_string(EXIT) + 
", INFO:" + std::to_string(
status_) + 
"\n";
    77     throw std::runtime_error(msg);
 
A generic optimization problem with variables, costs and constraints. 
static void ObjectiveAndConstraintFct(int *Status, int *n, double x[], int *needF, int *neF, double F[], int *needG, int *neG, double G[], char *cu, int *lencu, int iu[], int *leniu, double ru[], int *lenru)
common namespace for all elements in this library. 
void Solve(Problem &nlp) override
Creates a snoptProblemA from nlp and solves it. 
Solves the optimization problem with SNOPT version 7.5 and below.