// Must corresponds to a NewtonFunctionPtr void nablaFischerFunc_MCP(int size, double* z, double* nablaPhi, int dummy) { int sizeEq = localProblem->sizeEqualities; int sizeIneq = localProblem->sizeInequalities; /* First call user-defined function to compute Fmcp function, */ localProblem->computeNablaFmcp(sizeEq + sizeIneq, z, localProblem->nablaFmcp) ; /* and compute the corresponding jacobian of the Fischer function */ jacobianPhi_Mixed_FB(sizeEq, sizeIneq, z, localProblem->Fmcp, localProblem->nablaFmcp, nablaPhi) ; }
/** writes \f$ \nabla_z F(z) \f$ using MLCP formulation and the Fischer-Burmeister function. */ void jacobianF_MCPFischerBurmeister(int size, double* z, double* jacobianFMatrix, int a) { computeFz(z); jacobianPhi_Mixed_FB(sN, sM, z, sFz, sProblem->M->matrix0, jacobianFMatrix); }