| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
The case is adapted from the HronTurekFsi3 benchmark shipped with solids4foam: a neo-Hookean, nonlinear-geometry total-Lagrangian solid model solved with PETSc SNES, with the same material properties as the deal.II case (E = 5.6 MPa, nu = 0.4, rho = 1000). The interface patch uses the solids4foam solidTraction boundary condition, whose tractionField option consumes the solidTraction volVectorField that the adapter fills. Requires an OpenFOAM-preCICE adapter with support for reading Stress in solid participants, and solids4foam built with PETSc. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SBFTMffUN7qDigrDQrPVb2
…ds4foam Matches the settings used in breaking-dam-2d (PR precice#912): nonlinear-geometry total-Lagrangian model with polynomial-reconstruction high-order discretisation, alpha stabilisation and the PETSc SNES solution algorithm. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SBFTMffUN7qDigrDQrPVb2
Measured over the settled limit cycle of the full 15 s simulation against the Turek-Hron FSI3 benchmark value, comparing no high-order reconstruction, polynomialOrder 2 and polynomialOrder 3. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SBFTMffUN7qDigrDQrPVb2
| Back | FazBrowse Home | New Git URL |
Important
Draft: blocked on precice/openfoam-adapter#417 ("Support reading Stress in solid participants"). This case cannot run until that adapter change is released, and the reference-results tarball cannot be generated until it reaches the system-test images. Marking ready for review once #417 is merged.
Summary
Adds a solids4foam solid participant to turek-hron-fsi3, adapted from the HronTurekFsi3 benchmark that solids4foam ships. This is a natural fit: solids4foam maintains its own version of this benchmark, so the tutorial gains a cross-check against the deal.II and Nutils participants.
Results
Full 15 s run (15000 time windows), fluid on 20 MPI ranks, solid serial. Flap-tip y-displacement over the settled limit cycle (t = 8 to 15 s), against the Turek-Hron FSI3 benchmark value of uy = 1.48 +/- 34.38 mm:
Choice of polynomial order
Since the high-order (polynomial reconstruction) discretisation is a cost/accuracy knob, I ran the full 15 s simulation three times, changing only polynomialOrder and holding everything else fixed:
Accuracy improves monotonically with order. The solid solver is genuinely 3.2x more expensive at p=3 (solid CPU time 5023 s -> 15913 s), but the end-to-end runtime is essentially unchanged, because in this tutorial the fluid participant dominates and the extra solid work hides behind the coupling. Wall-clock times were 28594 s, 27315 s and 29345 s respectively — within the noise of other jobs sharing the node.
I therefore propose polynomialOrder 3, but the trade-off is documented in the README and switching is a one-line edit, so please say if you would rather ship a cheaper solid. Note that polynomialOrder 2 is both cheaper and more accurate than no high-order reconstruction at all, so the plain low-order option is dominated.
One observation independent of the solid settings: all three variants give an oscillation frequency of 5.50-5.64 Hz against the benchmark's 5.3 Hz. Since polynomial order does not move it, that offset comes from the fluid side or the coupling rather than the solid discretisation.
Tested with OpenFOAM v2606, preCICE 3.4.1, solids4foam (development) and the OpenFOAM adapter from precice/openfoam-adapter#417.
Notes
🤖 Generated with Claude Code
https://claude.ai/code/session_01SBFTMffUN7qDigrDQrPVb2