Compatibility fix for Firedrake 2024-12
Docker image
#24
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR removes the (actually unused) import of
firedrake_configuration
package that is no longer present in recent (2 weeks or so) versions of Firedrake Docker Hub image.Root cause of the issue is the migration of Firedrake to be
pip
-installable. There's details about the topic here. Specifically, the problem started with the PR that migrates PyOP2 into the main Firedrake repo.It seems like the obvious fix, i.e. just remove the import, worked. The
firedrake_configuration
module wasn't used for anything directly within thefiredrake_ts
package. Besides this, the PR contains a few small fixes to make the unit tests and examples work.It seems like PETSc 3.22 upgrage that's bundled in the Firedrake 2024-12 image doesn't set the
ts_max_snes_failures
option anymore. Somehow the default value causes the inner SNES solver never to retry any linear solves. So the TS solver has no other option but to fail whenever it happens instead of retrying.I also migrated the
adjoint.py
example application to use the newer interpolate Firedrake API.The only thing I'm having trouble with is the Cahn-Hillard example. For reasons that elude me at the moment, it diverges with the message below. Would anyone have suggestions how to fix it?
Cahh-Hillard example stdout log