File numerics/src/MCP/mcp_newton_FBLSA.h

Go to the source code of this file

nonsmooth-based solver for MCP

Functions

void FB_compute_F_mcp(void *data_opaque, double *z, double *w)

Compute w=F(z)

Parameters
void FB_compute_H_mcp(void *data_opaque, double *z, double *w, double *workV1, double *workV2, NumericsMatrix *H)

Compute an element of JacF_FB, see Facchinei—Pang p.

808

Parameters
  • data_opaque – a MixedComplementarityProblem but casted

  • z[in] non-basic variable

  • w[in] basic variable

  • workV1 – work vector which contains “z”

  • workV2 – work vector

  • H[out] an element of JacF_FB

void FB_compute_error_mcp(void *data_opaque, double *z, double *w, double *notused, double tol, double *err)

Compute the error for termination, here mcp_compute_error.

Parameters
  • data_opaque – a LinearComplementarityProblem but casted

  • z[in] non-basic variable

  • w[in] basic variable

  • notused – not used here

  • tol[in] the tolerance

  • err[out] the error on the LCP (not FB)

void mcp_FB(void *data_opaque, double *z, double *F, double *F_FB)

Compute F_FB : \({F_FB}_i = \sqrt(z_i^2 + F_i^2) - (z_i + F_i)\).

Parameters
  • data_opaque – a LinearComplementarityProblem but casted

  • z[in] non-basic variable

  • F[in] basic variable

  • F_FB[out] value of the function