Package extensions
Extensions load automatically when the corresponding optional dependency is present in the environment:
| Extension | Trigger | Provides |
|---|---|---|
PyrolysisKLUExt | using KLU | klu_factorization linear-solver hook |
PyrolysisAMGExt | using AlgebraicMultigrid | amg_preconditioner |
PyrolysisPardisoExt | using Pardiso | pardiso_factorization |
PyrolysisPlotsExt | using RecipesBase (or Plots) | Plot recipes for PyrolysisSolution |
PyrolysisSciMLSensitivityExt | using SciMLSensitivity, Zygote | forward_sensitivity / adjoint_sensitivity |
PyrolysisSymbolicsExt | using Symbolics | verify_mixing_derivatives (test-only) |
Calling a stub without its trigger dependency loaded raises a MethodError naming the package to load. See the User Guide's extensions section.
Pyrolysis.klu_factorization — Function
klu_factorization()KLU sparse-direct factorization for the integrator's linear solves, suitable as the linear_solver keyword of solve. The concrete method is attached by the PyrolysisKLUExt extension: load KLU first (using KLU); calling the stub without it raises a MethodError.
Pyrolysis.pardiso_factorization — Function
pardiso_factorization()MKL Pardiso sparse-direct factorization for the integrator's linear solves, suitable as the linear_solver keyword of solve. The concrete method is attached by the PyrolysisPardisoExt extension: load Pardiso first (using Pardiso); calling the stub without it raises a MethodError.
Pyrolysis.amg_preconditioner — Function
amg_preconditioner(A)Algebraic-multigrid preconditioner built from the sparse matrix A, for use with the ILU/Krylov iterative linear solvers. The concrete method is attached by the PyrolysisAMGExt extension: load AlgebraicMultigrid first (using AlgebraicMultigrid); calling the stub without it raises a MethodError.