Skip to content

Analytical Jacobian, state transformations, and some other things for Zodiac

James Sutherland requested to merge analytical-jacobian-plus into master
  • analytical Jacobian implemented, public methods documented, called through reaction rates sensitivity method
  • test of production rates computed in the analytical Jacobian vs cantera, and test of the Jacobian produced vs gold standards (in the source code, not external)
  • timings 'test' of the analytical Jacobian, comparing kinetics calculations and linear algebra operations
  • writeup of the derivation and calculation strategy
  • state transformation matrices and sparse mat-mat methods implemented, public methods documented, and a test added
  • mixture molecular weight modified to use mass or mole fractions, with enumeration to distinguish them, and default behavior for backwards compatibility
  • species N behavior expanded and enumerated (default behavior ensures backwards compatibility) to enable clipping instead of throwing on out of bounds, or no behavior of species N
  • reaction rate info moved to a separate class outside of ReactionRates
  • added expressions that convert between mass and mole fractions
  • added expressions that convert between volumetric (\rho\phi) and specific (\phi) quantities

Note for James on downstream dependencies: if ODT, LBMS, or Wasatch are using the SpeciesN Expression with non-default behavior (ERRORSPECN in the new enumeration, which means throwing an error if Y_N goes out of bounds) then they will break. Your recent commit to disable the error would be overridden by this commit.

Merge request reports