Two users have found that their input files (Zapdos-Crane) runs for hours when using a solve_type = newton, but for only ~30 minutes using solve_type = pjfnk (preconditioned jacobian-free Newton-Krylov). The only culprit for this behavior is an incorrect Jacobian calculation. Since Zapdos Jacobian calculations are fully automated, the error must be in Crane's reaction network.
Townsend-type electron impact reactions have already been converted to automatic differentiation, but the bug here is happening with rate-type electron impact reactions. This is a good opportunity to fully automate the rest of the jacobian calculations in Crane as well.
Task
Add automatic differentiation for the following reaction types:
[ ] Rate-type reactions with tabulated rate coefficients
[ ] Parsed function rate coefficients
[ ] Constant rate coefficients
Impact
Improved convergence and reduced simulation time for users using Crane in 1D-3D. (This will have no effect on Crane in 0D since different variable and kernel types are utilized.)
Two users have found that their input files (Zapdos-Crane) runs for hours when using a solve_type = newton, but for only ~30 minutes using solve_type = pjfnk (preconditioned jacobian-free Newton-Krylov). The only culprit for this behavior is an incorrect Jacobian calculation. Since Zapdos Jacobian calculations are fully automated, the error must be in Crane's reaction network.
Townsend-type electron impact reactions have already been converted to automatic differentiation, but the bug here is happening with rate-type electron impact reactions. This is a good opportunity to fully automate the rest of the jacobian calculations in Crane as well.
Task Add automatic differentiation for the following reaction types:
Impact Improved convergence and reduced simulation time for users using Crane in 1D-3D. (This will have no effect on Crane in 0D since different variable and kernel types are utilized.)