Skip to content

Fix HypreADS for fieldsplit - #5328

Merged
pbrubeck merged 13 commits into
releasefrom
connorjward/fix-hypre-ads-fieldsplit
Aug 8, 2026
Merged

Fix HypreADS for fieldsplit#5328
pbrubeck merged 13 commits into
releasefrom
connorjward/fix-hypre-ads-fieldsplit

Conversation

@connorjward

Copy link
Copy Markdown
Contributor

Closes #5327

The issue was that V.reconstruct(element=myelem), where V is an indexed function space, was failing to reconstruct the parent space using myelem because it wasn't a mixed element. I think reconstruct is ambiguous for indexed function spaces and should be disallowed. In this case the fix is to drop all parent information by calling collapse().

Feedback on the choice of test is welcome. This was simply lifted from the issue.

Comment thread firedrake/preconditioners/hypre_ads.py Outdated
Comment thread tests/firedrake/regression/test_hypre_ads.py Outdated
Comment thread tests/firedrake/regression/test_hypre_ads.py Outdated
Comment thread tests/firedrake/regression/test_hypre_ads.py Outdated
Comment thread tests/firedrake/regression/test_hypre_ads.py Outdated
Comment thread firedrake/dmhooks.py Outdated
@connorjward
connorjward marked this pull request as draft August 6, 2026 09:23
Need to make sure we don't lose references to function spaces as we go
into PETSc. A similar trick could be used for collapse().
@connorjward

Copy link
Copy Markdown
Contributor Author

I am still playing around with this, but I think I have a nice improvement to get_function_space etc. I will continue to mess around but some of this will end up going into another PR in main.

@connorjward
connorjward marked this pull request as ready for review August 6, 2026 15:40
@connorjward
connorjward requested a review from pbrubeck August 6, 2026 15:40
Comment thread tests/firedrake/regression/test_hypre_ads.py Outdated

@pbrubeck pbrubeck left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could the same fix be applied to hypre_ams.py and bddc.py?

Comment thread tests/firedrake/regression/test_hypre_ads.py Outdated
@connorjward

Copy link
Copy Markdown
Contributor Author

I'm about to go on holiday for a week. @pbrubeck you are very welcome to get this over the line. I can fix those other files when I get back but a user is keen to have this fixed so I see no reason to wait.

@pbrubeck
pbrubeck enabled auto-merge (squash) August 6, 2026 16:59
@pbrubeck

pbrubeck commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

I'm about to go on holiday for a week. @pbrubeck you are very welcome to get this over the line. I can fix those other files when I get back but a user is keen to have this fixed so I see no reason to wait.

We don't have to wait, the extension to the other files was trival.

@pbrubeck
pbrubeck merged commit 1b74836 into release Aug 8, 2026
13 of 22 checks passed
@pbrubeck
pbrubeck deleted the connorjward/fix-hypre-ads-fieldsplit branch August 8, 2026 14:10
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.

2 participants