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