-
-
Notifications
You must be signed in to change notification settings - Fork 546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I1863 idklu casadi #2002
I1863 idklu casadi #2002
Conversation
…t jac_action somehow
Codecov Report
@@ Coverage Diff @@
## develop #2002 +/- ##
========================================
Coverage 99.35% 99.35%
========================================
Files 346 346
Lines 18939 19033 +94
========================================
+ Hits 18816 18911 +95
+ Misses 123 122 -1
Continue to review full report at Codecov.
|
… InputParameter
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @martinjrobins ! I didn't look too closely at the C++ code (since I can't read it), but the tests look good
Description
Adds a casadi version of the idklu solver, currently getting approx 2 x speed-up over current casadi solver with fast events, but this still needs to be properly benchmarked
As part of the above, the
process
function in the base solver now also returns a function that evaluates the jacobian times a vector (e.g.casadi.jtimes
). This was neccessary to implement the sensitivity equations that IDA expects, but will also be useful when we add the option of using iterative solvers.update: also fixed a discretisation bug that occurs when an input parameter is indexed, see #2008
Fixes #1863
Fixes #2008
Type of change
Please add a line in the relevant section of CHANGELOG.md to document the change (include PR #) - note reverse order of PR #s. If necessary, also add to the list of breaking changes.
Key checklist:
$ flake8
$ python run-tests.py --unit
$ cd docs
and then$ make clean; make html
You can run all three at once, using
$ python run-tests.py --quick
.Further checks: