[Ipopt] An eval fucntion return value question

Andreas Waechter andreasw at watson.ibm.com
Tue Feb 2 12:22:10 EST 2010

Hi Brad,

I guess it's a bit hidden:


In an evaluation function you should always return true, unless the 
function or gradient could not be evaluated (e.g., division by zero, 
square-root of a negative number, etc)

Hope this helps


On Tue, 26 Jan 2010, Brad Bell wrote:

> If you look at the documentation for the eval_f procedure (current on
> the web page)
>     http://www.coin-or.org/Ipopt/documentation/node37.html
> You will see that eval_f returns a boolean. I have not been able to find
> the documentation for the meaning of this flag.
> If you look at the source code in Algorithm/IpOrigIpoptNLP.cpp, you will see
>       bool success = nlp_->Eval_f(*unscaled_x, ret);
>       f_eval_time_.End();
>       DBG_PRINT((1, "success = %d ret = %e\n", success, ret));
>       ASSERT_EXCEPTION(success && IsFiniteNumber(ret), Eval_Error,
>                        "Error evaluating the objective function");
> It appears to me that if the return flag from eval_f is false, Ipopt
> will abort. Is this correct ?
> _______________________________________________
> Ipopt mailing list
> Ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/ipopt

More information about the Ipopt mailing list