<div dir="ltr"><div>Dear all,</div><div><br></div><div>I would be very thankful if someone knew the answer. I am afraid it is a very stupid question. I apologize in advance. I literally ask which root Ipopt actually attempts to compute.</div><div><br></div><div>Background:</div><div>I want to implement a sensitivity computation for inaccurate Hessians ( I just approximate DF*d-w=r=0 by r(d)=[F(z+eps*d)-F(z)]/eps-w with Dr~ the hesse approximated DF at the solution, where F is the eps-KKT-conditions, and solve for d with a few Quasi-Newton steps) but I need to know the accurate set of equations F=0 that Ipopt solves. Unfortunately it does not help to let Ipopt solve the conditions very accurately and then assume the obtained Ipopt solution would also accurately satisfy another set of eps-KKT conditions because both sets of equations are so badly conditioned that the solution of either will still lead to large residuals when plugged into the other. So I need to know Ipopt's set of eps-KKT-equations.</div><span><div><br></div><span><div>Issue:<br></div></span></span><div>In the papers there are reformulated KKT conditions for a reformulated problem, but when output.{x,lambda,zL,zU} are given back, I need to know exactly which size([x;lambda;zL;zU],1) equations they satisfy, expressed in terms of the NLP callback functions/constants f,Df,c,Dc,cL,cU,xL,xU. Can someone name them?</div><div>I know there is an sIpopt2 that gives sensitivities, too, but for me doing some math is simpler than trying to get compiled and interfaced a new solver and get it perform well again.</div><div><br></div><div>Sought information:<br></div><div>An answer of the following format would be superb, however I know the following example is wrong since c=0 does not hold (since only cL<=c(x)<=cU must hold).</div><div><br></div><div>F(x,lambda,zL,zU;mu) = [ Df' + Dc' * lambda + (zU-zL) ; c ; diag(x-xL)*zL - mu ; diag(xU-x)*zU - mu ]</div><div><br></div><div>... I just wonder where all the slacks in the output can be found. There should be a vector s of size mg<=m, where mg is nnz(cU-cL) and two additional Lagrange multipliers for them.</div><div><br></div><div>Kind regards</div><div>Martin</div></div>