-
Notifications
You must be signed in to change notification settings - Fork 5
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
Analytical Jacobian for Cantera #19
Comments
Hi @mbkumar, I think this feature is very helpful, I was wondering is this improvement still in progress? |
I coded most of the stuff, but I am not working on cantera anymore because
I changed jobs. Only few functions are left for implementing the
analytical Jacobian. If anyone can take the mantle, I'd be happy to assist.
Bharat Medasani
Engineer
Princeton Plasma Physics Lab (PPPL)
…On Thu, Aug 5, 2021 at 2:34 PM Chao Xu ***@***.***> wrote:
Hi @mbkumar <https://github.com/mbkumar>, I think this feature is very
helpful, I was wondering is this improvement still in progress?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#19 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA62VEF5NDA4ZEZNLVWOM5TT3LKTRANCNFSM4KD6SB2Q>
.
|
I am currently looking at implementing this in the core - there have already been quite a few changes in reaction rate evaluators in 2.6 already, so previous work won't map cleanly. Also, I have not looked at temperature derivatives beyond @mbkumar ... once I get to temperature derivatives, it may be great if I could recycle your code if you don't mind (and would certainly give credit). |
@ischoegl |
Closed via Cantera/cantera#1089. |
Abstract
I am working on implementing analytical Jacobian for Cantera to replace the finite difference Jacobian computed internally by SUNDIALS.
Motivation
Jacobian matrix can be computed analytically for chemical kinetics. Analytical Jacobian improves the accuracy when compared to the finite difference Jacobian computed with forward difference scheme especially for stiff kinetics. With a good implementation, it can also reduce the computational expense when compared to the finite difference Jacobian.
Description
To obtain the analytical Jacobian, derivatives of the production rates w.r.t. species mass fractions and state variables are computed. Based on the governing equations of a reactor model, derivatives corresponding to the Jacobian can be computed from the computed derivatives of the production rates. An API for the end user to enable/disable analytical Jacobian is added.
Alternatives
Analytical Jacobian can also be obtained by using auto-differentiation packages. Such packages introduce additional dependencies and the fundamental classes of Cantera need to rewritten to account for auto-differentiation. Instead, the current implementation adds additional member variables and methods to the existing classes to compute the required derivatives without touching existing methods.
References
https://github.com/mbkumar/cantera/tree/derivative
The text was updated successfully, but these errors were encountered: