Skip to content

Fish swimming case study#6

Merged
skim0119 merged 88 commits into
mainfrom
dev_fish_swimming
May 11, 2026
Merged

Fish swimming case study#6
skim0119 merged 88 commits into
mainfrom
dev_fish_swimming

Conversation

@sy-cui
Copy link
Copy Markdown
Contributor

@sy-cui sy-cui commented Apr 3, 2026

Investigation of fish swimming in viscous fluid, enabled by SophT.

sy-cui and others added 30 commits April 3, 2026 13:17
Issue: Unit.Simulator.IO.H5.H5Metadata could fail on newer standard libraries because the unqualified call to format(...) becomes ambiguous once std::format is visible.
Fix: qualify the call as ::elastica::io::format so metadata naming keeps using the project helper instead of depending on ADL or standard-library lookup.
Issue: the failing Cosserat rod data tests were all exercising Model::initialize(model, std::move(initializer)), but the same initializer object was then repeatedly forwarded as an rvalue through the plugin and component initialization chain. That left later stages reading a moved-from initializer, which is undefined behavior and can show up as GCC-only segfaults or aborts in cross-section and elasticity setup.

Fix: keep a stable initializer reference during initialization and update the Cosserat initialize_component helpers to forward references instead of taking the initializer by value. This removes the moved-from reuse and makes geometry and elasticity initialization deterministic across toolchains.
@sy-cui sy-cui requested a review from skim0119 April 3, 2026 23:09
@sy-cui sy-cui self-assigned this Apr 3, 2026
@sy-cui sy-cui added the enhancement New feature or request label Apr 3, 2026
@sy-cui sy-cui marked this pull request as ready for review May 5, 2026 23:30
@skim0119 skim0119 merged commit 220ad7c into main May 11, 2026
5 checks passed
@skim0119 skim0119 deleted the dev_fish_swimming branch May 11, 2026 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants