|
FhSim
3.1.0
Marine systems simulation
|
| ID | 0086 |
| Class | BUG |
| Severity | 2 |
| Status | blocked |
Models: Trawl/CenterWeight; fhsim_marine_elements Cable/Branched
Found: Review 2026-09-28: FISH-R-7. 2026-09-28 review of feature/net-hydrodynamics at 73aa0c7 (worktrees/nethydro/review/fhsim_fishery.md); rechecked at 1e6770c; filed by phase K WP K4 (owner ruling R42 item 39)
Decision needed: Owner (Karl-Johan): does R41's bottom-contact gate extend to Trawl/CenterWeight and fhsim_marine_elements Cable/Branched? (Note review F1 / MARE-0135: with SUNDIALS, a state-dependent gate needs the fhsim core fallback that K1 adds.)
Review 2026-09-28: FISH-R-7 (severity 2, tracker scale). Suspected (owner decision); whether the omission matters depends on how often contact is active, not measured. The same question for fhsim_marine_elements Cable/Branched (CableBranched.cpp:198-201, HasJacobians() true, cable bottom contact) is recorded here as the primary item.
src/trawl/CenterWeight.cpp:117-120: HasJacobians() returns true unconditionally.:122-131: the analytical Jacobian says it omits "input-port forces, bottom contact and the spatial gradient of the water velocity".OdeFcn adds CalcBottomForceSphere (:69).CableBranched::HasJacobians() (src/cable/CableBranched.cpp:198-201) returns true with cable bottom contact in OdeFcn.Suspected: implicit integrators get a Jacobian without the contact stiffness while a centre weight (or a cable) rests on the seabed, as in a bottom trawl.
Extend R41's gate to CenterWeight and CableBranched (report false in contact), or add the contact block to their Jacobians.
After the decision: a test of the chosen behaviour.
Result changes only in the cases named above; check the regression baselines.