8 #ifndef __IPSTDCINTERFACE_H__
9 #define __IPSTDCINTERFACE_H__
15 #define IPOPT_EXPORT(type) type __cdecl
17 #define IPOPT_EXPORT(type) type
48 struct IpoptProblemInfo;
105 UserDataPtr user_data
123 UserDataPtr user_data
144 UserDataPtr user_data
165 Number regularization_size,
169 UserDataPtr user_data
237 IpoptProblem ipopt_problem
245 IpoptProblem ipopt_problem,
255 IpoptProblem ipopt_problem,
265 IpoptProblem ipopt_problem,
275 IpoptProblem ipopt_problem,
287 IpoptProblem ipopt_problem,
304 IpoptProblem ipopt_problem,
314 IpoptProblem ipopt_problem,
331 UserDataPtr user_data
Bool(* Intermediate_CB)(Index alg_mod, Index iter_count, Number obj_value, Number inf_pr, Number inf_du, Number mu, Number d_norm, Number regularization_size, Number alpha_du, Number alpha_pr, Index ls_trials, UserDataPtr user_data)
Type defining the callback function for giving intermediate execution control to the user...
Bool(* Eval_Grad_F_CB)(Index n, Number *x, Bool new_x, Number *grad_f, UserDataPtr user_data)
Type defining the callback function for evaluating the gradient of the objective function.
Bool(* Eval_F_CB)(Index n, Number *x, Bool new_x, Number *obj_value, UserDataPtr user_data)
Type defining the callback function for evaluating the value of the objective function.
int Index
Type for all indices.
IPOPTLIB_EXPORT Bool OpenIpoptOutputFile(IpoptProblem ipopt_problem, char *file_name, Int print_level)
Function for opening an output file for a given name with given printlevel.
int Int
Type for all integers.
IPOPTLIB_EXPORT Bool SetIpoptProblemScaling(IpoptProblem ipopt_problem, Number obj_scaling, Number *x_scaling, Number *g_scaling)
Optional function for setting scaling parameter for the NLP.
int Bool
define a boolean type for C
struct IpoptProblemInfo * IpoptProblem
Pointer to an Ipopt Problem.
IPOPTLIB_EXPORT IpoptProblem CreateIpoptProblem(Index n, Number *x_L, Number *x_U, Index m, Number *g_L, Number *g_U, Index nele_jac, Index nele_hess, Index index_style, Eval_F_CB eval_f, Eval_G_CB eval_g, Eval_Grad_F_CB eval_grad_f, Eval_Jac_G_CB eval_jac_g, Eval_H_CB eval_h)
Function for creating a new Ipopt Problem object.
Bool(* Eval_Jac_G_CB)(Index n, Number *x, Bool new_x, Index m, Index nele_jac, Index *iRow, Index *jCol, Number *values, UserDataPtr user_data)
Type defining the callback function for evaluating the Jacobian of the constrant functions.
double Number
Type for all number.
IPOPTLIB_EXPORT Bool AddIpoptStrOption(IpoptProblem ipopt_problem, char *keyword, char *val)
Function for adding a string option.
IPOPTLIB_EXPORT enum ApplicationReturnStatus IpoptSolve(IpoptProblem ipopt_problem, Number *x, Number *g, Number *obj_val, Number *mult_g, Number *mult_x_L, Number *mult_x_U, UserDataPtr user_data)
Function calling the Ipopt optimization algorithm for a problem previously defined with CreateIpoptPr...
IPOPTLIB_EXPORT void FreeIpoptProblem(IpoptProblem ipopt_problem)
Method for freeing a previously created IpoptProblem.
IPOPTLIB_EXPORT Bool AddIpoptNumOption(IpoptProblem ipopt_problem, char *keyword, Number val)
Function for adding a Number option.
Bool(* Eval_G_CB)(Index n, Number *x, Bool new_x, Index m, Number *g, UserDataPtr user_data)
Type defining the callback function for evaluating the value of the constraint functions.
void * UserDataPtr
A pointer for anything that is to be passed between the called and individual callback function...
ApplicationReturnStatus
Return codes for the Optimize call for an application.
IPOPTLIB_EXPORT Bool AddIpoptIntOption(IpoptProblem ipopt_problem, char *keyword, Int val)
Function for adding an Int option.
Bool(* Eval_H_CB)(Index n, Number *x, Bool new_x, Number obj_factor, Index m, Number *lambda, Bool new_lambda, Index nele_hess, Index *iRow, Index *jCol, Number *values, UserDataPtr user_data)
Type defining the callback function for evaluating the Hessian of the Lagrangian function.
IPOPTLIB_EXPORT Bool SetIntermediateCallback(IpoptProblem ipopt_problem, Intermediate_CB intermediate_cb)
Setting a callback function for the "intermediate callback" method in the TNLP.