Skip to content

feat: beaminteraction -> potential: add potential reduction distributed endpoint moment compensation#2091

Open
davidrudlstorfer wants to merge 2 commits into
4C-multiphysics:mainfrom
davidrudlstorfer:__add_potential_reduction_distributed_endpoint_moment_compensation
Open

feat: beaminteraction -> potential: add potential reduction distributed endpoint moment compensation#2091
davidrudlstorfer wants to merge 2 commits into
4C-multiphysics:mainfrom
davidrudlstorfer:__add_potential_reduction_distributed_endpoint_moment_compensation

Conversation

@davidrudlstorfer

Copy link
Copy Markdown
Contributor

Description and Context

This PR adds the next new option for the beaminteraction -> potential -> potential reduction strategy.
The distributed end point moment often influences convergence badly although this effect is not of real interest. Therefore, this PR introduces the new option to compensate this moment. Note that the formulation is not not fully conservative anymore, BUT only in the vicinity of beam endpoints. In the beam interior the formulation is still fully conservative.

This also required some changes of the corresponding linearization. ChatGPT helped me with that. Afterwards I again compared that the analytical and FAD derived stiffness matrix is identical for a few test cases.

Related Issues and Pull Requests

Follows #2088

@davidrudlstorfer davidrudlstorfer self-assigned this Jun 19, 2026
Copilot AI review requested due to automatic review settings June 19, 2026 15:24
@davidrudlstorfer

Copy link
Copy Markdown
Contributor Author

What I forgot: the AI found a bug in the derivatives. This is included in the first commit

Copilot AI 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.

Pull request overview

Adds an optional “distributed endpoint moment compensation” to the beaminteraction potential-reduction formulation to improve convergence by removing the distributed endpoint moment contribution near beam endpoints, including corresponding linearization updates and a new regression test case.

Changes:

  • Introduce a new input parameter potential_reduction_endpoint_moment_compensation and wire it into beam potential evaluation.
  • Update force/moment evaluation and stiffness assembly to apply the endpoint-moment compensation behavior.
  • Add a new regression test (input + reference CSVs) for the endpoint moment compensation option.

Reviewed changes

Copilot reviewed 12 out of 12 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
src/beaminteraction/src/potential/4C_beaminteraction_potential_pair_beam_to_beam.cpp Implements the endpoint moment compensation behavior in force/moment evaluation and stiffness assembly; also adjusts a geometry linearization call argument.
src/beaminteraction/src/potential/4C_beaminteraction_potential_input.hpp Adds the new boolean parameter to the beam potential parameter struct.
src/beaminteraction/src/potential/4C_beaminteraction_potential_input.cpp Registers the new YAML/input-file parameter with description and default.
tests/list_of_tests.cmake Adds a new test case and CSV comparisons for the endpoint moment compensation scenario.
tests/input_files/beam3r_herm2line3_static_vdW_singlelengthsspec_smallsepapprox_simple_end_point_potential_reduction_strategy_endpoint_moment_comp.4C.yaml New test input enabling potential_reduction_endpoint_moment_compensation: true.
tests/input_files/ref/beam3r_herm2line3_static_vdW_singlelengthsspec_smallsepapprox_simple_end_point_potential_reduction_strategy_endpoint_moment_comp/beams-101_monitor_dbc.csv Reference output for reaction monitor 101 for the new test.
tests/input_files/ref/beam3r_herm2line3_static_vdW_singlelengthsspec_smallsepapprox_simple_end_point_potential_reduction_strategy_endpoint_moment_comp/beams-103_monitor_dbc.csv Reference output for reaction monitor 103 for the new test.
tests/input_files/ref/beam3r_herm2line3_static_vdW_singlelengthsspec_smallsepapprox_simple_end_point_potential_reduction_strategy_endpoint_moment_comp/beams_energy.csv Reference energy output for the new test.
tmp/xxx-timings.yaml Added timing report artifact (should not be committed).
tmp/xxx-101_monitor_dbc.csv Added generated output artifact (should not be committed).
tmp/xxx-103_monitor_dbc.csv Added generated output artifact (should not be committed).
tmp/xxx_energy.csv Added generated output artifact (should not be committed).

Comment thread tmp/xxx-timings.yaml Outdated
Comment thread tmp/xxx-101_monitor_dbc.csv Outdated
Comment thread tmp/xxx-103_monitor_dbc.csv Outdated
Comment thread tmp/xxx_energy.csv Outdated
@davidrudlstorfer davidrudlstorfer force-pushed the __add_potential_reduction_distributed_endpoint_moment_compensation branch from 365aef4 to 08c4599 Compare June 19, 2026 15:32
@davidrudlstorfer davidrudlstorfer requested a review from Copilot June 19, 2026 15:37

Copilot AI 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.

Pull request overview

Copilot reviewed 8 out of 8 changed files in this pull request and generated no new comments.

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