# File numerics/src/NCP/NCP_Solvers.h¶

Go to the source code of this file

Functions related to NCP formulation and solvers.

Functions

int ncp_compute_error(int n, double *z, double *F, double tol, double *err)

This function compute the complementarity error of the NCP: $$0 \leq z \perp F(z) \geq 0$$.

Return
0 if the solution is good enough, 1 otherwise
Parameters
• n: size of the vectors
• z: solution
• F: value of the function at the solution
• tol: tolerance for the error
• err: value of the error

void ncp_newton_FBLSA(NonlinearComplementarityProblem *problem, double *z, double *F, int *info, SolverOptions *options)

NCP Solver using the FB merit function and a Newton-based method with line-search.

Parameters
• problem: the formalization of the NCP problem
• z: on input, initial guess; on output the solution
• F: the value of the function at the solution
• info: 0 if everything worked
• options: struct used to specify the solver parameters

void ncp_newton_minFBLSA(NonlinearComplementarityProblem *problem, double *z, double *F, int *info, SolverOptions *options)

NCP Solver using the min merit function (+ the FB as backup) and a Newton-based method with line-search.

Parameters
• problem: the formalization of the NCP problem
• z: on input, initial guess; on output the solution
• F: the value of the function at the solution
• info: 0 if everything worked
• options: struct used to specify the solver parameters

void ncp_path(NonlinearComplementarityProblem *problem, double *z, double *F, int *info, SolverOptions *options)

NCP Solver using the PATH solver.

Parameters
• problem: the formalization of the NCP problem
• z: on input, initial guess; on output the solution
• F: the value of the function at the solution
• info: 0 if everything worked
• options: struct used to specify the solver parameters

void ncp_pathsearch(NonlinearComplementarityProblem *problem, double *z, double *F, int *info, SolverOptions *options)

NCP Solver using a path search algorithm, following the work of D.

Ralph. M. Ferris, and many other collaborators of the latter.

Parameters
• problem: the formalization of the NCP problem
• z: on input, initial guess; on output the solution
• F: the value of the function at the solution
• info: 0 if everything worked
• options: struct used to specify the solver parameters