atomic three function with ipopt #152
-
Hello, I'm trying to use an atomic three function with the cppad interface for ipopt. Could you tell me if this problem can appear if we don't implemented all the callbacks functions ? Regards. Emmanuel. |
Beta Was this translation helpful? Give feedback.
Replies: 10 comments
-
I had a look at the cppad/ipopt/solve.hpp and cppad/ipopt/solve_callback.hpp files Many thanks to Bradley and all the contributors. Emmanuel. |
Beta Was this translation helpful? Give feedback.
-
@EmmanuelSchneider Is there a reason you prefer the atomic_three interface to the atomic_four interface ? |
Beta Was this translation helpful? Give feedback.
-
Hello Bradley, I use currently the CppAD stable/20190200 under a 20.04 Xubuntu distribution. Are there a big difference between the three and four atomic interface ? Regards. Emmanuel. |
Beta Was this translation helpful? Give feedback.
-
What is the value of cppad_postfix in your cmake command ? The big difference between atomic_three versus atomic_four is the use of call_id This avoids having to encode this information in the function argument which gets confusing and is limited. For example call_id could identify the sparsity pattern for a sparse matrix. |
Beta Was this translation helpful? Give feedback.
-
Hello Bradley, The cppad_posfix is empty (I didn't use it). My commands in the folder where I cloned the git cppad project were
==> The configuration seems ok, in particular it tells us that it found ipopt 3.11.9
Scanning dependencies of target cppad_lib ==> Same error than the last time : The compiler tell us that the "coin-or/IpIpoptApplication.hpp" file doesn't exist I hope this explain you better the problem Regards. Emmanuel. |
Beta Was this translation helpful? Give feedback.
-
What do you get when you execute
|
Beta Was this translation helpful? Give feedback.
-
I get -DHAVE_CSTDDEF -I/usr/include/coin |
Beta Was this translation helpful? Give feedback.
-
That should work. Try including the following to your cmake command line: |
Beta Was this translation helpful? Give feedback.
-
When you say that this should work, you mean with the 3.11.9 ipopt version ? After I add the verbose, I get this end of the build message Scanning dependencies of target cppad_ipopt |
Beta Was this translation helpful? Give feedback.
-
What exactly is your cmake command; see |
Beta Was this translation helpful? Give feedback.
I had a look at the cppad/ipopt/solve.hpp and cppad/ipopt/solve_callback.hpp files
and I confirm that all the callbacks methods are exploited.
Since I implemented the reverse and rev_depend callbacks methods the compiled code works, there are no more memory error.
Many thanks to Bradley and all the contributors.
Emmanuel.