FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
0404 — Net/Sphere drag coefficient 0.3 is hard-coded and differs from the env default 0.5; DNV references unchecked
ID 0404
Class DOCUMENTATION
Severity 1
Status blocked

Models: — (annotated on the fhsim_marine_elements library group)

Found: 2026-10-20, hydrodynamics overview section 7 (doc/hydrodynamics-overview.md in fhsim_workspace), feature m2-hydro-doc-gaps

Decision needed: Owner: should Net/Sphere take its Cd from XML (default 0.3 to keep results, or the env default 0.5 which moves them)? Who checks the DNV-RP-C205 Table A-2 and Morison references?

Evidence

  • src/net/Sphere.cpp:34: const environment::sphere_hydro::Sphere shape {m_Rho, m_sphereD, 0.3, cableD};. The drag coefficient 0.3 is hard-coded and not an XML parameter. The environment default is 0.5 (SphereHydro.h:44, ENV-0122), and the fhsim_fishery and fhsim_base spheres read theirs from XML.
  • src/net/Disk.cpp:68: the axial added mass of a disc cites DNV-RP-C205 (2021) Appendix A, Table A-2, "not checked here".
  • src/cable/subroutines/CableElBasics.h:121: the Morison inertia term cites DNV-RP-C205 (2021) Sec. 6.2, "not checked here".

Effect

A sphere in a net always uses Cd 0.3, whatever the user knows about it. The two defaults (0.3 here, 0.5 in env) disagree, with no recorded reason.

Possible fix

Add a SphereCd XML parameter with default 0.3 (results unchanged), document that default, and check the two DNV references against the standard. Moving the default to 0.5 needs a ruling.

Test that would prove it

A test that sets SphereCd and checks the drag, and that the default reproduces today's result byte for byte.

Risk

Low with default 0.3; a changed default moves every net-sphere baseline.