Closed ds283 closed 9 years ago
I just fixed some problem in one test which gave errors with the intel compiler but i don't believe this is related to what you are seeing. With the Linux version of the Intel Compiler 14.01 all tests run smoothly for me now. Are you sure it was introduced by ef67c05 ? can you give a minimal example that fails to compile with icc on OS X?
Perhaps I am mistaken, but my impression is that the breakage was introduced in ef67c05. I can compile correctly up to 98a7199, which from my reading of the commits seems to include everything prior to ef67c05. On the other hand, it fails with everything subsequent to ef67c05.
Since my first post, I have noticed that the error appears to be caused when I switch the compiler to use the LLVM C++ library using the switch -stdlib=libc++
. With this choice I see the failure with everything, even the simplest Lorenz example from the odeint documentation. On the other hand, using the GNU C++ library, this example compiles correctly. Nevertheless, naively, the error does not seem to be with the library because Clang works correctly with libc++.
In my case I am using C++11 features like <array>
which are not included with the GNU C++ library shipped by Apple. As a workaround I could try to install a more recent set of GNU headers and try to make the Intel compiler use these, but I have not had much success doing this with the v14 compiler.
I'm not sure I understood everything in your post. So Intel v14.01 works with the GNU stdlibc++, but not with the llvm version? While clang works with both? This (and the error message) looks like if icc doesnt like the llvm stdlib...
and not so much a problem of odeint.
So you want the llvm version because it has
If I see this correctly boost/config.hpp does not work correctly with your setup. Btw. which boost version do you use?
I think we should remove the switch for std::bind or boost::bind and only rely on the boost version since this should work everywhere and will fix your problem.
On 11.11.2013 01:27, ds283 wrote:
Perhaps I am mistaken, but my impression is that the breakage was introduced in ef67c05 https://github.com/headmyshoulder/odeint-v2/commit/ef67c05. I can compile correctly up to df962de https://github.com/headmyshoulder/odeint-v2/commit/df962de, which from my reading of the commits seems to include everything prior to ef67c05 https://github.com/headmyshoulder/odeint-v2/commit/ef67c05. On the other hand, it fails with everything subsequent to ef67c05 https://github.com/headmyshoulder/odeint-v2/commit/ef67c05.
Since my first post, I have noticed that the error appears to be caused when I switch the compiler to use the LLVM C++ library using the switch |-stdlib=libc++|. With this choice I see the failure with everything, even the simplest Lorenz example http://headmyshoulder.github.io/odeint-v2/examples.html#lorenzsystem from the odeint documentation. On the other hand, using the GNU C++ library, this example compiles correctly. Nevertheless, naively, the error does not seem to be with the library because Clang works correctly with libc++.
In my case I am using C++11 features like which are not included with the GNU C++ library shipped by Apple. As a workaround I could try to install a more recent set of GNU headers and try to make the Intel compiler use these, but I have not had much success doing this with the v14 compiler.
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-28165529.
@mariomulansky: I think your summary is correct:
Before ef67c05, Intel v14.0.1 and clang both work with stdlibc++ and libc++. After ef67c05, clang works with both but Intel v14.0.1 gives an error with libc++.
@headmyshoulder: I am using Boost 1.54.0 installed via MacPorts, but I manually move boost/numeric/odeint
and boost/numeric/odeint.hpp
out of the installed tree and replace these with symlinks to an up-to-date Git repository. This is the only way I've been able to successfully use a later version of odeint than the one packaged with Boost.
@headmyshoulder what would that removal mean? would this also imply that std::ref can not be used anymore (which was the reason why that switch was added, right?)
No, std::ref and boost::ref are not the problems. We use odeint::bind to bind the resizers, and which is a preprocessor switch to check for std::bind or boost::bind. I think we can remove this switch and only use boost::bind, we only use it internally.
On 11.11.2013 10:50, Mario Mulansky wrote:
@headmyshoulder https://github.com/headmyshoulder what would that removal mean? would this also imply that std::ref can not be used anymore (which was the reason why that switch was added, right?)
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-28185212.
ok then i'm perfectly fine with removing the std::bind option, as it's only internally.
Oh, I am sorry. It is not possible to remove odeint::bind. The reason is, that boost.bind pulls the placeholder _1,_2 into the global namespace which can be avoided with std::bind. There, for C++11 we have to use std::bind and with C++03 we use boost::bind.
On 11.11.2013 10:59, Mario Mulansky wrote:
ok then i'm perfectly fine with removing the std::bind option, as it's only internally.
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-28185879.
hrm i see. but i'm a bit confused now. if the bug is not related to std::ref / boost::ref, why was it introduced in ef67c05 ? can we revert the bind related part of ef67c05, but keep the ref - related? (maybe the answer is trivially no, but I dont completely understand the changes there)
On 11/15/2013 10:05 AM, Mario Mulansky wrote:
hrm i see. but i'm a bit confused now. if the bug is not related to std::ref / boost::ref, why was it introduced in ef67c05 https://github.com/headmyshoulder/odeint-v2/commit/ef67c05 ? can we revert the bind related part of ef67c05 https://github.com/headmyshoulder/odeint-v2/commit/ef67c05, but keep the ref - related? (maybe the answer is trivially no, but I dont completely understand the changes there)
IN principle it is possible. I will check it soon if and how it works in detail...
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-28555588.
I have tried to revert some changes of the bind problem. Can you check if it is working again for you?
Thanks very much for looking into this.
Unfortunately it still fails, both on my code and the Lorenz example. Using the Lorenz code from your examples and the command line
icpc -I/opt/local/include -L/opt/local/lib -std=c++11 -stdlib=libc++ -o lorenz lorenz.cpp
I get the following failure:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::__1::__nat::~__nat()" (declared at line 854) cannot be referenced -- it is a deleted function
__invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...)
^
detected during:
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>,
boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>,
boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag> &, _Args=<const state_type &>]" at line 2981
instantiation of class "std::__1::__invoke_of<_Fp, _Args...> [with _Fp=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>,
boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag> &, _Args=<const state_type &>]" at line 2955
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2981
[ 4 instantiation contexts not shown ]
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::__1::__nat::~__nat()" (declared at line 854) cannot be referenced -- it is a deleted function
__invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...)
^
detected during:
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2981
instantiation of class "std::__1::__invoke_of<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 1691 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional"
instantiation of "std::__1::__bind_return<_Fp, _BoundArgs, _Args, std::__1::_is_valid_bind_return<_Fp, _BoundArgs, _Args>::value>::type std::__1::__apply_functor(_Fp &, _BoundArgs &, std::__1::__tuple_indices<_Indx...>, _Args &&) [with _Fp=bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::*)(const state_type &), _BoundArgs=std::__1::tuple<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double,
state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::__1::placeholders::__ph<1>>, _Indx=<0UL, 1UL>, _Args=std::__1::tuple<const state_type
&>]" at line 1753 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional"
instantiation of "std::__1::__bind_return<std::__1::decay<_Fp>::type, std::__1::tuple<std::__1::decay<_BoundArgs>::type...>, std::__1::tuple<_Args &&...>, std::__1::_is_valid_bind_return<std::__1::decay<_Fp>::type, std::__1::tuple<std::__1::decay<_BoundArgs>::type...>, std::__1::tuple<_Args &&...>>::value>::type std::__1::__bind<_Fp, _BoundArgs...>::operator()(_Args &&...) [with _Fp=bool
(boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer,
boost::numeric::odeint::explicit_error_stepper_fsal_tag>::*)(const state_type &), _BoundArgs=<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::__1::placeholders::__ph<1> &>, _Args=<const state_type &>]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp"
instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=std::__1::__bind<bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::*)(const state_type &), std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::__1::placeholders::__ph<1> &>]" at line 855 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::__1::__nat::~__nat()" (declared at line 854) cannot be referenced -- it is a deleted function
__invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...)
^
detected during:
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=std::__1::placeholders::__ph<1> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=std::__1::placeholders::__ph<1> &, _Args=<const state_type &>]" at line 2981
instantiation of class "std::__1::__invoke_of<_Fp, _Args...> [with _Fp=std::__1::placeholders::__ph<1> &, _Args=<const state_type &>]" at line 1691 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional"
instantiation of "std::__1::__bind_return<_Fp, _BoundArgs, _Args, std::__1::_is_valid_bind_return<_Fp, _BoundArgs, _Args>::value>::type std::__1::__apply_functor(_Fp &, _BoundArgs &, std::__1::__tuple_indices<_Indx...>, _Args &&) [with _Fp=bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::*)(const state_type &), _BoundArgs=std::__1::tuple<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double,
state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::__1::placeholders::__ph<1>>, _Indx=<0UL, 1UL>, _Args=std::__1::tuple<const state_type
&>]" at line 1753 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional"
instantiation of "std::__1::__bind_return<std::__1::decay<_Fp>::type, std::__1::tuple<std::__1::decay<_BoundArgs>::type...>, std::__1::tuple<_Args &&...>, std::__1::_is_valid_bind_return<std::__1::decay<_Fp>::type, std::__1::tuple<std::__1::decay<_BoundArgs>::type...>, std::__1::tuple<_Args &&...>>::value>::type std::__1::__bind<_Fp, _BoundArgs...>::operator()(_Args &&...) [with _Fp=bool
(boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer,
boost::numeric::odeint::explicit_error_stepper_fsal_tag>::*)(const state_type &), _BoundArgs=<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::__1::placeholders::__ph<1> &>, _Args=<const state_type &>]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp"
instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=std::__1::__bind<bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::*)(const state_type &), std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::__1::placeholders::__ph<1> &>]" at line 855 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::__1::__nat::~__nat()" (declared at line 854) cannot be referenced -- it is a deleted function
__invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...)
^
detected during:
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer> &, _Args=<const state_type &>]" at line 2981
instantiation of class "std::__1::__invoke_of<_Fp, _Args...> [with _Fp=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer> &, _Args=<const state_type &>]" at line 2955
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2981
[ 8 instantiation contexts not shown ]
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::__1::__nat::~__nat()" (declared at line 854) cannot be referenced -- it is a deleted function
__invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...)
^
detected during:
instantiation of class "std::__1::__invokable_imp<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2962
instantiation of class "std::__1::__invokable<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2981
instantiation of class "std::__1::__invoke_of<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 1691 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional"
instantiation of "std::__1::__bind_return<_Fp, _BoundArgs, _Args, std::__1::_is_valid_bind_return<_Fp, _BoundArgs, _Args>::value>::type std::__1::__apply_functor(_Fp &, _BoundArgs &, std::__1::__tuple_indices<_Indx...>, _Args &&) [with _Fp=bool (boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>::*)(const state_type &),
_BoundArgs=std::__1::tuple<std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>, std::__1::placeholders::__ph<1>>, _Indx=<0UL, 1UL>, _Args=std::__1::tuple<const state_type &>]" at line 1753 of
"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional"
instantiation of "std::__1::__bind_return<std::__1::decay<_Fp>::type, std::__1::tuple<std::__1::decay<_BoundArgs>::type...>, std::__1::tuple<_Args &&...>, std::__1::_is_valid_bind_return<std::__1::decay<_Fp>::type, std::__1::tuple<std::__1::decay<_BoundArgs>::type...>, std::__1::tuple<_Args &&...>>::value>::type std::__1::__bind<_Fp, _BoundArgs...>::operator()(_Args &&...) [with _Fp=bool (boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>::*)(const state_type &), _BoundArgs=<std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>, std::__1::placeholders::__ph<1> &>, _Args=<const state_type &>]" at line 72
of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp"
[ 5 instantiation contexts not shown ]
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
As before, it works with the GNU library obtained by dropping --stdlib=libc++
from the command line.
Are you sure, that it is odeint? For me, the code looks exactly like the code before ef67c05 . Unfortunately I don't have an Intel compiler and OSX at hand. Maybe I can submit another try tomorrow in a separate branch.
On 11/25/2013 11:44 AM, ds283 wrote:
Thanks very much for looking into this.
Unfortunately it still fails, both on my code and the Lorenz example. Using the Lorenz code from your examples http://headmyshoulder.github.io/odeint-v2/examples.html and the command line
icpc -I/opt/local/include -L/opt/local/lib -std=c++11 -stdlib=libc++ -o lorenz lorenz.cpp I get the following failure:
|/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::1::nat::~nat()" (declared at line 854) cannot be referenced -- it is a deleted function invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...) ^ detected during: instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag> &, _Args=<const state_type &>]" at line 2981 instantiation of class "std::1::invoke_of<_Fp, _Args...> [with _Fp=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag> &, _Args=<const state_type &>]" at line 2955 instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2981 [ 4 instantiation contexts not shown ] instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool
>::type, size_t={ darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 30 of "lorenz.cpp"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::1::nat::~nat()" (declared at line 854) cannot be referenced -- it is a deleted function invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...) ^ detected during: instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 2981 instantiation of class "std::1::invoke_of<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>> &, _Args=<const state_type &>]" at line 1691 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional" instantiation of "std::1::bind_return<_Fp, _BoundArgs, _Args, std::__1::_is_valid_bind_return<_Fp, _BoundArgs, _Args>::value>::type std::1::apply_functor(_Fp &, _BoundArgs &, std::1::tuple_indices<_Indx...>, _Args &&) [with _Fp=bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>::)(const state_type &), _BoundArgs=std::1::tuple<std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::1::placeholders::ph<1>>, _Indx=<0UL, 1UL>, _Args=std::__1::tuple<const state_type &>]" at line 1753 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional" instantiation of "std::1::bind_returnstd::__1::decay<_Fp::type, std::1::tuplestd::1::decay<_BoundArgs::type...>, std::__1::tuple<_Args &&...>, std::1::_is_valid_bind_returnstd::1::decay<_Fp::type, std::1::tuplestd::1::decay<_BoundArgs::type...>, std::1::tuple<_Args &&...>>::value>::type std::1::bind<_Fp, _BoundArgs...>::operator()(_Args &&...) [with _Fp=bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>::)(const state_type &), _BoundArgs=<std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::1::placeholders::ph<1> &>, _Args=<const state_type &>]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp" instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=std::1::bind<bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>::)(const state_type &), std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::1::placeholders::ph<1> &>]" at line 855 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool
>::type, size_t={ darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 30 of "lorenz.cpp"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::1::nat::~nat()" (declared at line 854) cannot be referenced -- it is a deleted function invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...) ^ detected during: instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=std::1::placeholders::ph<1> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=std::1::placeholders::ph<1> &, _Args=<const state_type &>]" at line 2981 instantiation of class "std::1::invoke_of<_Fp, _Args...> [with _Fp=std::1::placeholders::ph<1> &, _Args=<const state_type &>]" at line 1691 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional" instantiation of "std::1::bind_return<_Fp, _BoundArgs, _Args, std::1::_is_valid_bind_return<_Fp, _BoundArgs, _Args>::value>::type std::1::apply_functor(_Fp &, _BoundArgs &, std::1::tuple_indices<_Indx...>, _Args &&) [with _Fp=bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>::)(const state_type &), _BoundArgs=std::1::tuple<std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::1::placeholders::ph<1>>, _Indx=<0UL, 1UL>, _Args=std::1::tuple<const state_type &>]" at line 1753 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional" instantiation of "std::1::bind_returnstd::1::decay<_Fp::type, std::1::tuplestd::1::decay<_BoundArgs::type...>, std::1::tuple<_Args &&...>, std::1::_is_valid_bind_returnstd::1::decay<_Fp::type, std::1::tuplestd::1::decay<_BoundArgs::type...>, std::1::tuple<_Args &&...>>::value>::type std::1::bind<_Fp, _BoundArgs...>::operator()(_Args &&...) [with _Fp=bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>::)(const state_type &), _BoundArgs=<std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::1::placeholders::ph<1> &>, _Args=<const state_type &>]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp" instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=std::1::bind<bool (boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>::)(const state_type &), std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, std::1::placeholders::ph<1> &>]" at line 855 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool
>::type, size_t={__darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 30 of "lorenz.cpp" /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::1::nat::~nat()" (declared at line 854) cannot be referenced -- it is a deleted function invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...) ^ detected during: instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer> &, _Args=<const state_type &>]" at line 2981 instantiation of class "std::1::invoke_of<_Fp, _Args...> [with _Fp=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer> &, _Args=<const state_type &>]" at line 2955 instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2981 [ 8 instantiation contexts not shown ] instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool
>::type, size_t={ darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 30 of "lorenz.cpp"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/type_traits(2954): error: function "std::1::nat::~nat()" (declared at line 854) cannot be referenced -- it is a deleted function invoke(_VSTD::declval<_Fp>(), _VSTD::declval<_Args>()...) ^ detected during: instantiation of class "std::1::invokable_imp<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2962 instantiation of class "std::1::invokable<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 2981 instantiation of class "std::1::invoke_of<_Fp, _Args...> [with _Fp=std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>> &, _Args=<const state_type &>]" at line 1691 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional" instantiation of "std::1::bind_return<_Fp, _BoundArgs, _Args, std::__1::_is_valid_bind_return<_Fp, _BoundArgs, _Args>::value>::type std::1::apply_functor(_Fp &, _BoundArgs &, std::1::tuple_indices<_Indx...>, _Args &&) [with _Fp=bool (boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initiallyresizer>::)(const state_type &), _BoundArgs=std::1::tuple<std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>, std::1::placeholders::ph<1>>, _Indx=<0UL, 1UL>, _Args=std::__1::tuple<const state_type &>]" at line 1753 of "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/functional" instantiation of "std::1::bind_returnstd::__1::decay<_Fp::type, std::1::tuplestd::1::decay<_BoundArgs::type...>, std::__1::tuple<_Args &&...>, std::1::_is_valid_bind_returnstd::1::decay<_Fp::type, std::1::tuplestd::1::decay<_BoundArgs::type...>, std::1::tuple<_Args &&...>>::value>::type std::1::bind<_Fp, _BoundArgs...>::operator()(_Args &&...) [with _Fp=bool (boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initiallyresizer>::)(const state_type &), _BoundArgs=<std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>, std::1::placeholders::ph<1> &>, _Args=<const state_type &>]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp" [ 5 instantiation contexts not shown ] instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool
>::type, size_t={__darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 30 of "lorenz.cpp" | As before, it works with the GNU library obtained by dropping |--stdlib=libc++| from the command line.
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-29192091.
Apologies, this was an operator error. I failed to correctly merge your recent commits.
It still fails, but with a different error: no instance of overloaded function "boost::get_pointer" matches the argument list
.
The complete output from the Lorenz example with command line
icpc -I/opt/local/include -L/opt/local/lib -std=c++11 -stdlib=libc++ -o lorenz lorenz.cpp
is
/opt/local/include/boost/bind/mem_fn_template.hpp(156): error: no instance of overloaded function "boost::get_pointer" matches the argument list
argument types are: (std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer,
boost::numeric::odeint::explicit_error_stepper_fsal_tag>>)
BOOST_MEM_FN_RETURN (get_pointer(u)->*f_)(b1);
^
detected during:
instantiation of "R boost::_mfi::mf1<R, T, A1>::call(U &, const void *, B1 &) const [with R=bool, T=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, A1=const state_type &, U=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, B1=const state_type]" at line 171
instantiation of "R boost::_mfi::mf1<R, T, A1>::operator()(U &, A1) const [with R=bool, T=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>,
boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, A1=const state_type &, U=std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>]" at line 303 of "/opt/local/include/boost/bind/bind.hpp"
instantiation of "R boost::_bi::list2<A1, A2>::operator()(boost::_bi::type<R>, F &, A &, long) [with A1=boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>>, A2=boost::arg<1>, R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations,
boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, const state_type &>, A=boost::_bi::list1<const state_type &>]" at line 47 of "/opt/local/include/boost/bind/bind_template.hpp"
instantiation of "boost::_bi::bind_t<R, F, L>::result_type boost::_bi::bind_t<R, F, L>::operator()(const A1 &) [with R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, const state_type &>, L=boost::_bi::list2<boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>>, boost::arg<1>>, A1=state_type]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp"
instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=boost::_bi::bind_t<bool, boost::_mfi::mf1<bool, boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, const state_type &>, boost::_bi::list2<boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>>, boost::arg<1>>>]" at line 855 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
/opt/local/include/boost/bind/mem_fn_template.hpp(156): error: no instance of overloaded function "boost::get_pointer" matches the argument list
argument types are: (std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>)
BOOST_MEM_FN_RETURN (get_pointer(u)->*f_)(b1);
^
detected during:
instantiation of "R boost::_mfi::mf1<R, T, A1>::call(U &, const void *, B1 &) const [with R=bool, T=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, A1=const state_type &, U=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>, B1=const state_type]" at line 171
instantiation of "R boost::_mfi::mf1<R, T, A1>::operator()(U &, A1) const [with R=bool, T=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, A1=const state_type &, U=std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra,
boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>]" at line 303 of "/opt/local/include/boost/bind/bind.hpp"
instantiation of "R boost::_bi::list2<A1, A2>::operator()(boost::_bi::type<R>, F &, A &, long) [with A1=boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>>, A2=boost::arg<1>, R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type,
double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, const state_type &>, A=boost::_bi::list1<const state_type &>]" at line 47 of "/opt/local/include/boost/bind/bind_template.hpp"
instantiation of "boost::_bi::bind_t<R, F, L>::result_type boost::_bi::bind_t<R, F, L>::operator()(const A1 &) [with R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, const state_type &>,
L=boost::_bi::list2<boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>>, boost::arg<1>>, A1=state_type]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp"
instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=boost::_bi::bind_t<bool, boost::_mfi::mf1<bool, boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, const state_type &>,
boost::_bi::list2<boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>>, boost::arg<1>>>]" at line 181 of "/opt/local/include/boost/numeric/odeint/stepper/runge_kutta_dopri5.hpp"
[ 4 instantiation contexts not shown ]
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp"
instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &,
boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initially_resizer, System=void (*)(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>,
boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp"
instantiation of "size_t={__darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double,
boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp"
instantiation of "boost::enable_if<has_value_type<State, boost::mpl::bool_<false>>::type, size_t={__darwin_size_t={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void (*)(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"
Everything still works OK with the libstdc++
But does it work with a pre ef67c05 version of odeint? Can you tests this. You can checkout an old version via
git checkout 98a71997805603ba17c36a928576e89e43cd653f
On 25.11.2013 23:41, ds283 wrote:
Apologies, this was an operator error. I failed to correctly merge your recent commits.
It still fails, but with a different error: |no instance of overloaded function "boost::get_pointer" matches the argument list|.
The complete output from the Lorenz example with command line
icpc -I/opt/local/include -L/opt/local/lib -std=c++11 -stdlib=libc++ -o lorenz lorenz.cpp is
|/opt/local/include/boost/bind/mem_fn_template.hpp(156): error: no instance of overloaded function "boost::get_pointer" matches the argument list argument types are: (std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>) BOOST_MEM_FN_RETURN (get_pointer(u)->f)(b1); ^ detected during: instantiation of "R boost::_mfi::mf1<R, T, A1>::call(U &, const void *, B1 &) const [with R=bool, T=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, A1=const state_type &, U=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>, B1=const state_type]" at line 171 instantiation of "R boost::_mfi::mf1<R, T, A1>::operator()(U &, A1) const [with R=bool, T=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, A1=const state_type &, U=std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>]" at line 303 of "/opt/local/include/boost/bind/bind.hpp" instantiation of "R boost::_bi::list2<A1, A2>::operator()(boost::_bi::type
, F &, A &, long) [with A1=boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>>, A2=boost::arg<1>, R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, const state_type &>, A=boost::_bi::list1<const state_type &>]" at line 47 of "/opt/local/include/boost/bind/bind_template.hpp" instantiation of "boost::_bi::bind_t<R, F, L>::result_type boost::_bi::bind_t<R, F, L>::operator()(const A1 &) [with R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, const state_type &>, L=boost::_bi::list2<boost::_bi::value<std:: 1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>>, boost::arg<1>>, A1=state_type]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp" instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=boost::_bi::bind_t<bool, boost::_mfi::mf1<bool, boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>, const state_type &>, boost::_bi::list2<boost::_bi::value<std::1::reference_wrapper<boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>>>, boost::arg<1>>>]" at line 855 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool>::type, size_t={ darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp"/opt/local/include/boost/bind/mem_fn_template.hpp(156): error: no instance of overloaded function "boost::get_pointer" matches the argument list argument types are: (std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>) BOOST_MEM_FN_RETURN (get_pointer(u)->f)(b1); ^ detected during: instantiation of "R boost::_mfi::mf1<R, T, A1>::call(U &, const void *, B1 &) const [with R=bool, T=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, A1=const state_type &, U=std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>, B1=const state_type]" at line 171 instantiation of "R boost::_mfi::mf1<R, T, A1>::operator()(U &, A1) const [with R=bool, T=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, A1=const state_type &, U=std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>]" at line 303 of "/opt/local/include/boost/bind/bind.hpp" instantiation of "R boost::_bi::list2<A1, A2>::operator()(boost::_bi::type
, F &, A &, long) [with A1=boost::_bi::value<std:: 1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>>, A2=boost::arg<1>, R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, const state_type &>, A=boost::_bi::list1<const state_type &>]" at line 47 of "/opt/local/include/boost/bind/bind_template.hpp" instantiation of "boost::_bi::bind_t<R, F, L>::result_type boost::_bi::bind_t<R, F, L>::operator()(const A1 &) [with R=bool, F=boost::_mfi::mf1<bool, boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, const state_type &>, L=boost::_bi::list2<boost::_bi::value<std::1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>>, boost::arg<1>>, A1=state_type]" at line 72 of "/opt/local/include/boost/numeric/odeint/util/resizer.hpp" instantiation of "bool boost::numeric::odeint::initially_resizer::adjust_size(const State &, ResizeFunction) [with State=state_type, ResizeFunction=boost::_bi::bind_t<bool, boost::_mfi::mf1<bool, boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, const state_type &>, boost::_bi::list2<boost::_bi::value<std::__1::reference_wrapper<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>>>, boost::arg<1>>>]" at line 181 of "/opt/local/include/boost/numeric/odeint/stepper/runge_kutta_dopri5.hpp" [ 4 instantiation contexts not shown ] instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step_v1(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 564 of "/opt/local/include/boost/numeric/odeint/stepper/controlled_runge_kutta.hpp" instantiation of "boost::numeric::odeint::controlled_step_result={boost::numeric::odeint::controlled_step_result} boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::try_step(System, StateInOut &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &, boost::numeric::odeint::controlled_runge_kutta<ErrorStepper, ErrorChecker, Resizer, boost::numeric::odeint::explicit_error_stepper_fsal_tag>::time_type &) [with ErrorStepper=boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, ErrorChecker=boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, Resizer=boost::numeric::odeint::initiallyresizer, System=void ()(const state_type &, state_type &, double), StateInOut=state_type]" at line 101 of "/opt/local/include/boost/numeric/odeint/integrate/detail/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::detail::integrate_adaptive(Stepper, System, State &, Time &, Time, Time &, Observer, boost::numeric::odeint::controlled_stepper_tag) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 45 of "/opt/local/include/boost/numeric/odeint/integrate/integrate_adaptive.hpp" instantiation of "size_t={darwin_size_t={unsigned long}} boost::numeric::odeint::integrate_adaptive(Stepper, System, State &, Time, Time, Time, Observer) [with Stepper=boost::numeric::odeint::controlled_runge_kutta<boost::numeric::odeint::runge_kutta_dopri5<state_type, double, state_type, double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations, boost::numeric::odeint::initially_resizer>, boost::numeric::odeint::default_error_checker<double, boost::numeric::odeint::array_algebra, boost::numeric::odeint::default_operations>, boost::numeric::odeint::initially_resizer, boost::numeric::odeint::explicit_error_stepper_fsaltag>, System=void ()(const state_type &, state_type &, double), State=statetype, Time=double, Observer=void ()(const state_type &, double)]" at line 48 of "/opt/local/include/boost/numeric/odeint/integrate/integrate.hpp" instantiation of "boost::enable_if<has_valuetype<State, boost::mpl::bool>::type, size_t={ darwin_sizet={unsigned long}}>::type boost::numeric::odeint::integrate(System, State &, Time, Time, Time, Observer) [with System=void ()(const state_type &, state_type &, double), State=state_type, Time=double, Observer=void (*)(const state_type &, double)]" at line 30 of "lorenz.cpp" |Everything still works OK with the |libstdc++|
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-29250194.
Yes, it certainly works up to 98a7199 as I reported initially. It breaks from ef67c05 onwards. I am using 98a7199 on a daily basis for my own development work.
As I mentioned above, ff69c57 seems to improve the situation by changing the error reported by icpc.
Ok, I reverted the changes. Can you test if it works?
On 26.11.2013 10:03, ds283 wrote:
Yes, it certainly works up to 98a7199 https://github.com/headmyshoulder/odeint-v2/commit/98a7199 as I reported initially. It breaks from ef67c05 https://github.com/headmyshoulder/odeint-v2/commit/ef67c05 onwards.
— Reply to this email directly or view it on GitHub https://github.com/headmyshoulder/odeint-v2/issues/114#issuecomment-29276479.
I've just made a quick check to see if the code builds - but yes, this does seem to fix the problem. Thanks for looking into this!
I have been successfully using odeint with the Intel C++ compiler, because (at least for my application) it produces markedly more efficient code than clang or gcc.
However, ef67c05 seems to be incompatible with the Intel compiler. I can successfully compile using the Apple-provided clang which ships with Xcode 5.0.1 [Apple LLVM version 5.0 (clang-500.2.79)], and with gcc 4.8.1, but the Intel compiler gives (several copies of)
I have to admit that I have not understood in detail exactly what this error indicates. But since everything works with the other compilers, would I be correct in regarding it as a compiler bug?