Skip to content

Support MatIS and BDDC#4405

Merged
pbrubeck merged 83 commits intomainfrom
pbrubeck/matis
Nov 4, 2025
Merged

Support MatIS and BDDC#4405
pbrubeck merged 83 commits intomainfrom
pbrubeck/matis

Conversation

@pbrubeck
Copy link
Contributor

@pbrubeck pbrubeck commented Jun 25, 2025

Description

Support assemble(a, mat_type="is")

Enables BDDC for problems in H(curl) and H(div)

@pbrubeck pbrubeck force-pushed the pbrubeck/matis branch 2 times, most recently from 27c2f79 to 2c66987 Compare June 25, 2025 15:11
Copy link
Contributor

@wence- wence- left a comment

Choose a reason for hiding this comment

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

I think a bunch of the indexing is wrong when constructing the masked lgmaps?

@pbrubeck pbrubeck force-pushed the pbrubeck/matis branch 8 times, most recently from f4a86f7 to c715954 Compare August 1, 2025 16:15
JHopeCollins
JHopeCollins previously approved these changes Oct 31, 2025
@stefanozampini
Copy link
Contributor

stefanozampini commented Nov 3, 2025 via email

@pbrubeck
Copy link
Contributor Author

pbrubeck commented Nov 3, 2025

The constant depends on the shape of the subdomains Stefano

Very well. I have been generous with the constant, and assumed that the same type of bound holds for H(curl) and H(div)

@pbrubeck pbrubeck requested a review from JHopeCollins November 3, 2025 17:40
Copy link
Member

@JHopeCollins JHopeCollins left a comment

Choose a reason for hiding this comment

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

Thanks for adding the condition number tests.
I think this is good to go now, pending tests passing.

@pbrubeck pbrubeck merged commit 2140635 into main Nov 4, 2025
5 of 7 checks passed
@pbrubeck pbrubeck deleted the pbrubeck/matis branch November 4, 2025 10:21
j-bowhay pushed a commit to j-bowhay/firedrake that referenced this pull request Feb 24, 2026
* Support mat_type="is"

* Support mat_type="nest", sub_mat_type="is"

* Propagate sub_mat_type and only set sub_mat_type on the diagonal blocks

* refine BDDC customization, use callables for gradient and divergence

* Simplify coordinates handling of bddcpc driver

* tabulate_exterior_derivative as MatIS

* FDMPC: Support other variants

* bddc: attach constants of the H(grad) space to discrete gradient

* add mat_type kawrg to local_to_global_map

* Test BDDC for H(curl) and H(div)

---------

Co-authored-by: Stefano Zampini <stefano.zampini@gmail.com>
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.

6 participants