Skip to content

Conversation

@jrmaddison
Copy link
Contributor

@jrmaddison jrmaddison commented Jul 10, 2024

Adds reverse-over-forward AD to Firedrake. See dolfin-adjoint/pyadjoint#162.

Limitations:

  • The new solve_tlm methods largely follow the implementation of the corresponding evaluate_tlm_component methods, meaning that they largely share any limitations. For example no Jacobian caching is applied.
  • solve_tlm methods have not been added for MeshInputBlock and MeshOutputBlock, due to problems composing action/adjoint with derivatives of derivatives with respect to a SpatialCoordinate.

@jrmaddison jrmaddison force-pushed the jrmaddison/reverse_over_forward branch from 53d0d58 to c70eea9 Compare July 10, 2024 16:01
@jrmaddison jrmaddison force-pushed the jrmaddison/reverse_over_forward branch 2 times, most recently from 2936a06 to 360b039 Compare July 11, 2024 17:37
@jrmaddison jrmaddison force-pushed the jrmaddison/reverse_over_forward branch from 62db68d to cada689 Compare July 11, 2024 18:01
@jrmaddison jrmaddison marked this pull request as ready for review July 11, 2024 18:05
@jrmaddison jrmaddison force-pushed the jrmaddison/reverse_over_forward branch from 08a6d32 to e51d56d Compare July 12, 2024 13:51
@jrmaddison jrmaddison force-pushed the jrmaddison/reverse_over_forward branch from e51d56d to ab80fe6 Compare July 12, 2024 13:51
@jrmaddison jrmaddison force-pushed the jrmaddison/reverse_over_forward branch from e35f21d to 4bb4e3b Compare July 15, 2024 12:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant