Skip to content

Add solid-mfem to flow-over-heated-plate - #928

Merged
MakisH merged 31 commits into
precice:developfrom
j-signorelli:solid-mfem-fohp
Oct 2, 2026
Merged

MakisH merged 31 commits into
precice:developfrom
j-signorelli:solid-mfem-fohp

Conversation

@j-signorelli

@j-signorelli j-signorelli commented Sep 17, 2026 •

Copy link
Copy Markdown
Contributor

This PR adds an MFEM implementation of preCICE for the flow-over-heated-plate tutorial.

Verify

Checklist

  • I added a summary of any user-facing changes (compared to the last release) in the changelog-entries/<PRnumber>.md.
  • If I changed requirements.txt files, I regenerated sibling requirements-reference.txt files with python3 .dev-tools/releasing/update-requirements-reference.py (pass a path to update only that directory, or --all to refresh everything).

For new tutorials or tutorial cases:

@j-signorelli
j-signorelli marked this pull request as draft September 17, 2026 10:16
@MakisH

MakisH commented Sep 17, 2026

Copy link
Copy Markdown
Member

@j-signorelli nice to see this draft!

Hint on the failing CI: we use pre-commit and this also checks and adjusts the formatting of some files. After you install it, do pre-commit install and pre-commit run -a to fix the files. Read more.

We can clearly improve the contributing guidelines here (tricky among multiple repositories). Any feedback is welcome.

@j-signorelli

Copy link
Copy Markdown
Contributor Author

@MakisH gotcha, thank you!

@j-signorelli j-signorelli changed the title [WIP] Add solid-mfem to flow-over-heated-plate Add solid-mfem to flow-over-heated-plate Sep 19, 2026
@j-signorelli
j-signorelli marked this pull request as ready for review September 19, 2026 19:42
@j-signorelli

j-signorelli commented Sep 19, 2026 •

Copy link
Copy Markdown
Contributor Author

@MakisH This is all ready for review! I don't think there are any required additions to make to the website based on what I saw - please let me know if I am mistaken. Also, I am not sure if I should put anything for components in the metadata.yaml as this doesn't involve any adapter or anything - just an in-place usage of preCICE with MFEM

@MakisH

MakisH commented Sep 21, 2026

Copy link
Copy Markdown
Member

@j-signorelli with a quick look, this PR already looks very clean, thank you! I will have a deeper look this week and integrate it to the system tests.

Comment thread flow-over-heated-plate/README.md

@MakisH MakisH left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I could run the new case in the system tests, and the results look as expected:

Image

The structure looks good, and the solid.cpp file looks clean (I did not look into details). The README.md mentions the new case.

The case is not configurable (parameters are hard-coded in solid.cpp), but so are also the cases in solid-nutils and solid-dunefem.

Note: In the Dockerfile, I modified the aste stage as well. I have checked that this works.

Thanks a lot once more for this PR! I will take care of the reference results and the integration to the website.

@MakisH
MakisH merged commit 95a1ac5 into precice:develop Oct 2, 2026
1 check passed
MakisH added a commit to precice/precice.github.io that referenced this pull request Oct 2, 2026
@j-signorelli

j-signorelli commented Oct 2, 2026 •

Copy link
Copy Markdown
Contributor Author

I could run the new case in the system tests, and the results look as expected:

Image The structure looks good, and the `solid.cpp` file looks clean (I did not look into details). The `README.md` mentions the new case.

The case is not configurable (parameters are hard-coded in solid.cpp), but so are also the cases in solid-nutils and solid-dunefem.

Note: In the Dockerfile, I modified the aste stage as well. I have checked that this works.

Thanks a lot once more for this PR! I will take care of the reference results and the integration to the website.

Awesome! What would need to be incorporated to make it “configurable”? I could add in more command line options if needed if the current ones are insufficient.

@MakisH

MakisH commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

There are indeed quite a few command-line options. I meant having an adapter configuration file, similar to https://github.com/precice/tutorials/blob/develop/flow-over-heated-plate/solid-fenics/precice-adapter-config.json

We now have an adapter configuration schema, which is still under development and evaluation: https://github.com/precice/adapter-schema In the future, we want to make all adapters (including such solvers provided in tutorials) conform to that schema. But that will still take a while.

P.S.: The tutorial is now also on the website https://precice.org/tutorials-flow-over-heated-plate.html

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants