8#ifndef __IPSTDCINTERFACE_H__
9#define __IPSTDCINTERFACE_H__
19#define IPOPT_EXPORT(type) type IPOPT_CALLCONV
46struct IpoptProblemInfo;
ApplicationReturnStatus
Return codes for the Optimize call for an application.
bool(* Intermediate_CB)(ipindex alg_mod, ipindex iter_count, ipnumber obj_value, ipnumber inf_pr, ipnumber inf_du, ipnumber mu, ipnumber d_norm, ipnumber regularization_size, ipnumber alpha_du, ipnumber alpha_pr, ipindex ls_trials, UserDataPtr user_data)
Type defining the callback function for giving intermediate execution control to the user.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV OpenIpoptOutputFile(IpoptProblem ipopt_problem, char *file_name, int print_level)
Function for opening an output file for a given name with given printlevel.
IPOPTLIB_EXPORT void IPOPT_CALLCONV FreeIpoptProblem(IpoptProblem ipopt_problem)
Method for freeing a previously created IpoptProblem.
void * UserDataPtr
A pointer for anything that is to be passed between the called and individual callback function.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV AddIpoptIntOption(IpoptProblem ipopt_problem, char *keyword, ipindex val)
Function for adding an Integer option.
IPOPTLIB_EXPORT enum ApplicationReturnStatus IPOPT_CALLCONV IpoptSolve(IpoptProblem ipopt_problem, ipnumber *x, ipnumber *g, ipnumber *obj_val, ipnumber *mult_g, ipnumber *mult_x_L, ipnumber *mult_x_U, UserDataPtr user_data)
Function calling the Ipopt optimization algorithm for a problem previously defined with CreateIpoptPr...
bool(* Eval_H_CB)(ipindex n, ipnumber *x, bool new_x, ipnumber obj_factor, ipindex m, ipnumber *lambda, bool new_lambda, ipindex nele_hess, ipindex *iRow, ipindex *jCol, ipnumber *values, UserDataPtr user_data)
Type defining the callback function for evaluating the Hessian of the Lagrangian function.
bool(* Eval_G_CB)(ipindex n, ipnumber *x, bool new_x, ipindex m, ipnumber *g, UserDataPtr user_data)
Type defining the callback function for evaluating the value of the constraint functions.
bool Bool
define a boolean type for C
IPOPTLIB_EXPORT bool IPOPT_CALLCONV AddIpoptNumOption(IpoptProblem ipopt_problem, char *keyword, ipnumber val)
Function for adding a Number option.
IPOPT_DEPRECATED typedef int Int
Type for all integers.
bool(* Eval_F_CB)(ipindex n, ipnumber *x, bool new_x, ipnumber *obj_value, UserDataPtr user_data)
Type defining the callback function for evaluating the value of the objective function.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV AddIpoptStrOption(IpoptProblem ipopt_problem, char *keyword, char *val)
Function for adding a string option.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV SetIntermediateCallback(IpoptProblem ipopt_problem, Intermediate_CB intermediate_cb)
Setting a callback function for the "intermediate callback" method in the TNLP.
IPOPT_DEPRECATED typedef ipnumber Number
Type for all number.
IPOPT_DEPRECATED typedef int Index
Type for all indices.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV GetIpoptCurrentIterate(IpoptProblem ipopt_problem, bool scaled, ipindex n, ipnumber *x, ipnumber *z_L, ipnumber *z_U, ipindex m, ipnumber *g, ipnumber *lambda)
Get primal and dual variable values of the current iterate.
IPOPTLIB_EXPORT IpoptProblem IPOPT_CALLCONV CreateIpoptProblem(ipindex n, ipnumber *x_L, ipnumber *x_U, ipindex m, ipnumber *g_L, ipnumber *g_U, ipindex nele_jac, ipindex nele_hess, ipindex 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_Grad_F_CB)(ipindex n, ipnumber *x, bool new_x, ipnumber *grad_f, UserDataPtr user_data)
Type defining the callback function for evaluating the gradient of the objective function.
struct IpoptProblemInfo * IpoptProblem
Pointer to an Ipopt Problem.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV GetIpoptCurrentViolations(IpoptProblem ipopt_problem, bool scaled, ipindex n, ipnumber *x_L_violation, ipnumber *x_U_violation, ipnumber *compl_x_L, ipnumber *compl_x_U, ipnumber *grad_lag_x, ipindex m, ipnumber *nlp_constraint_violation, ipnumber *compl_g)
Get primal and dual infeasibility of the current iterate.
bool(* Eval_Jac_G_CB)(ipindex n, ipnumber *x, bool new_x, ipindex m, ipindex nele_jac, ipindex *iRow, ipindex *jCol, ipnumber *values, UserDataPtr user_data)
Type defining the callback function for evaluating the Jacobian of the constrant functions.
IPOPTLIB_EXPORT bool IPOPT_CALLCONV SetIpoptProblemScaling(IpoptProblem ipopt_problem, ipnumber obj_scaling, ipnumber *x_scaling, ipnumber *g_scaling)
Optional function for setting scaling parameter for the NLP.
#define IPOPT_DEPRECATED
macro to declare symbols as deprecated
double ipnumber
Type for floating-point numbers.
int ipindex
Type of all indices of vectors, matrices etc.