Matrix-Free Jacobian Chaining
This work addresses a fundamental computational bottleneck in scientific and engineering simulations, though it appears incremental as it builds on existing algorithmic differentiation methods.
The paper tackles the challenge of efficiently computing Jacobians in large-scale modular simulations by reformulating the classical matrix chain product problem into matrix-free operations using tangent and adjoint versions, with results supported by an open-source implementation.
The efficient computation of Jacobians represents a fundamental challenge in computational science and engineering. Large-scale modular numerical simulation programs can be regarded as sequences of evaluations of in our case differentiable subprograms with corresponding elemental Jacobians. The latter are typically not available. Tangent and adjoint versions of the individual subprograms are assumed to be given as results of algorithmic differentiation instead. The classical (Jacobian) Matrix Chain Product problem is reformulated in terms of matrix-free Jacobian-matrix (tangents) and matrix-Jacobian products (adjoints), subject to limited memory for storing information required by latter. All numerical results can be reproduced using an open-source reference implementation.