Skip to content

Conversation

JHopeCollins
Copy link
Contributor

@JHopeCollins JHopeCollins commented Jul 1, 2025

This PR introduces a ReducedFunctionalMat, which is a Python type PETSc.Mat which applies the action of a ReducedFunctional.

By default it applies the action of the Hessian, which is needed for TAO's Newton optimiser.
If Jhat.functional is not a scalar then it can also apply the action of the TLM or adjoint models. Examples of when these would be needed include 1) constructing saddle point formulations of an optimisation problem, 2) constructing preconditioners for the Hessian with a certain structure, 3) calculating the eigendecomposition of a reduced functional (firedrakeproject/firedrake#4529).

Firedrake tests: firedrakeproject/firedrake#4669

@JHopeCollins JHopeCollins self-assigned this Jul 1, 2025
@JHopeCollins JHopeCollins added the enhancement New feature or request label Jul 1, 2025
@JHopeCollins JHopeCollins changed the base branch from JHopeCollins/tlm to dham/abstract_reduced_functional July 25, 2025 08:51
@JHopeCollins JHopeCollins changed the base branch from dham/abstract_reduced_functional to master October 14, 2025 12:54
@JHopeCollins JHopeCollins marked this pull request as ready for review October 14, 2025 13:50
@JHopeCollins
Copy link
Contributor Author

Review comments from Firedrake meeting addressed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants