Closed rgommers closed 7 years ago
I see where you are coming from, but compiling is a core aspect of this module and essential for making it fast. Therefore I expect that most users will be interested in fixing such problems when they arise. To this purpose, they usually need the entire error message (though it’s admittedly rather useless in you case – for reasons beyond my control). I also cannot filter this error as all sorts of things can go wrong and I cannot predict them.
I can make the order of messages more meaningful and also tell the user how to suppress this, if they really want to use the Python backend, namely by calling generate_f_lambda
to explicitly initialise and use the Python backend.
By the way: Feel free to file an issue about the code not compiling, specifying your system. If you manage to solve this, please share your insights. I haven’t done any testing on Windows yet.
I can make the order of messages more meaningful and also tell the user how to suppress this,
That would be useful, thanks!
Feel free to file an issue about the code not compiling, specifying your system. If you manage to solve this, please share your insights. I haven’t done any testing on Windows yet.
I'll look into it when I find some time. At the moment I just need it to work on Windows (Python-only is fine) to show to colleagues in a notebook. When I need it to be fast, I have a Linux box.
MSVC is set up correctly though (can compile numpy/scipy with it), so not sure if this is my setup or something in your package.
Aside from the noise I'm quite happy so far by the way:)
I can make the order of messages more meaningful and also tell the user how to suppress this,
That would be useful, thanks!
Turned out, it’s not that easy, since I cannot move the compiler warnings (at least not with reasonable effort). Instead, I made the main warning very prominent (and more informative).
Thanks, that does help. And that message does say how to avoid compilation.
Small issue still with it though, the public method is generate_f_lambda
not generate_lambdas
(at least for the simple example in the docs). Which is weird if I look at the call diagram in http://jitcode.readthedocs.io/en/latest/#details-of-the-building-process - it should be generate_lambdas
. generate_jac_*
is also not a method of the DDE
instance. What am I missing?
generate lambdas
will be new in the next release (which I am processing right now). I should have made the documentation default differently though. The call diagram for JiTCODE is really only for JiTCODE, as compiling a separate Jacobian only makes sense there. For JiTCDDE, things are much simpler and I didn’t feel the need for a diagram.
Ah great, I'll install latest master for now then. Thanks again.
FYI: JiTCDDE should now work with the Microsoft compiler.
Awesome, thanks!
When trying the first example in the docs:
This is the output I see before the output
array([ 1.18037923])
is returned:That's way too noisy; shouldn't be too hard to silence that - I would expect just a
UserWarning
.