FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
0110 — Default load law misses lift at high solidity and the angle dependence of Rudi, Løland and Zhan (A6 disabled tests)
ID 0110
Class KNOWN-LIMITATION
Severity 2
Status ready

Models: hydrodynamics::LocalThroughFlow (default law); hydrodynamics::ScreenMF2022 (L2 lift only); both selectable by HydroModel on Net/NetStructure and Net/NetStructureWithConstraints since WP-A7 to A9

Found: 2026-09-26, WP-A6 load-law validation tests (MARE-0093), filed by the lead at the A6 merge (e9ff9c5); lead ruling R20; OWNER_QUESTIONS Q11

Decision needed: Answered 2026-09-27 (OWNER_QUESTIONS Q11, lead ruling R36 (d)): disclose now (methods manual Sections 9, 11.4, 13 and the validation report) and replace the angle form later, filed as MARE-0131 (0131 — Default law: replace the two-harmonic angle form with three harmonics, refitted to MF2022, Rudi, Løland and Zhan). This issue stays open until MARE-0131 is done; the 11 tests stay DISABLED_ meanwhile and nobody tunes laws, a3/b4 or tolerances to make them pass (R20).

Evidence

Reproduction at e9ff9c5 (integration build per BUILD.md step 3, from build/no_vis/Release/playpen/bin):

./test_fhsim_marine_elements --gtest_also_run_disabled_tests --gtest_filter=PanelLoadLaw*

The filter also runs the A5 PanelLoadLaw parser suite, which passes. Result: [ PASSED ] 28 tests. and [ FAILED ] 11 tests, exactly the eleven DISABLED_ tests:

Test File:line
PanelLoadLaw_MF2022.DISABLED_L1_Eq10LiftAtRn2000_LocalThroughFlow tests/PanelLoadLaw_MF2022_Test.cpp:177
PanelLoadLaw_MF2022.DISABLED_L2_TextLiftAt1p75_LocalThroughFlow tests/PanelLoadLaw_MF2022_Test.cpp:202
PanelLoadLaw_MF2022.DISABLED_L2_TextLiftAt1p75_ScreenMF2022 tests/PanelLoadLaw_MF2022_Test.cpp:215
PanelLoadLaw_MF2022.DISABLED_L4_LocalCdPlateauAt0Deg tests/PanelLoadLaw_MF2022_Test.cpp:233
PanelLoadLaw_Rudi.DISABLED_L5_DragAngleDependence_LocalThroughFlow tests/PanelLoadLaw_Rudi_Test.cpp:33
PanelLoadLaw_Rudi.DISABLED_L5_LiftAngleDependence_LocalThroughFlow tests/PanelLoadLaw_Rudi_Test.cpp:42
PanelLoadLaw_Loland.DISABLED_L6_DragAtNormalIncidence_LocalThroughFlow tests/PanelLoadLaw_Loland_Test.cpp:118
PanelLoadLaw_Loland.DISABLED_L6_LiftCoefficient_LocalThroughFlow tests/PanelLoadLaw_Loland_Test.cpp:128
PanelLoadLaw_Zhan.DISABLED_L8_AngleRatios_LocalThroughFlow tests/PanelLoadLaw_Zhan_Test.cpp:96
PanelLoadLaw_Zhan.DISABLED_L8_SpeedTrendAt30And60Deg_LocalThroughFlow tests/PanelLoadLaw_Zhan_Test.cpp:110
PanelLoadLaw_Consistency.DISABLED_L9_DefaultHarmonicsSatisfyL5AndL8 tests/PanelLoadLaw_Consistency_Test.cpp:212

Numbers (OWNER_QUESTIONS Q11; full tables in the reports, see below). 14 of the 25 data tests pass; 11 are disabled. Default law (LocalThroughFlow, a3 = 0.07, b4 = 0.10):

  • L1: CL(45°) −26…−31 % against MF2022 Eq. 10 at Rn 2000 for N33a / N36a / N33b (N33a −26.1 %, N36a −30.8 %, N33b −25.6 %; tolerance 25 %).
  • L2: N33a lift 196 N against the 271 N text value at 45°, 1.75 m/s (−27.6 %; tolerance 15 %). ScreenMF2022: N19a lift 79 N against 102 N (−22.6 %, at Rn = 1225, below the fit Rn 2000).
  • L4: localCd at 0° rises to 0.93–0.96 at Rn 3750–5000 (N18b / N20b) against the 0.8 plateau (tolerance 0.12).
  • L5 (Rudi et al. 1988): drag ratio C_D(θ)/C_D(0) at 60–80° low by up to 0.154; lift ratio C_L(θ)/C_L(45°) at 30/60/80° low by up to 0.358 (tolerance 0.08).
  • L6 (Løland 1991): C_D(0) −30 % at Sₙ 0.317 (Re 2000, −29.8 %); C_L fails 31 of 80 rows at ±25 % (Sₙ 0.317 low, ratio up to 2.11; Sₙ 0.13 / 0.144 high at 30°).
  • L8 (Zhan et al. 2006, K = 1 per R2): R60/R0 off by up to −0.184 (model 0.395 against 0.377–0.579); R30/R0 at 0.75 m/s +0.131 (tolerance 0.10); inclined speed trend +39 % (up to +38.7 %; tolerance 10 %).
  • L9: refit a3 = 0.046, b4 = 0.050 (a3 over 50 points, b4 over 24; per dataset a3 = 0.072 MF2022, 0.035 Rudi, 0.039 Zhan). 16 of 66 L5/L8 checks fail at the defaults and 16 of 66 also fail at the refit, so the two-harmonic θ form itself misfits at 60–80°, not only its parameter values.

Passing, for contrast: L1 CD default 0.935–1.074, L2 drag 0.937–0.989, L3 0.845–1.181, L8 absolute R0 0.996–1.184 (measured / model).

The angle form is C_D(θ) = cd (a1 cos θ + a3 cos 3θ), C_L(θ) = cl (b2 sin 2θ + b4 sin 4θ), KF2012 Eq. 14, documented at src/hydrodynamics/LocalThroughFlow.h:16-37 and evaluated by kf2012::EvaluateScreen (src/hydrodynamics/KF2012Common.h:294), which LocalThroughFlow calls with the induction on (src/hydrodynamics/LocalThroughFlow.h:61).

Reports: the validation report (Net hydrodynamics: validation report), generated from the tests/out/ files the tests write: Validation: MF2022 towed panels (L1-L4), Validation: Rudi 1988 and Løland 1991 (L5, L6), Validation: Zhan 2006 planar nets and cylinder (L8, S2, W9, S6) and the refit Validation: a3/b4 consistency and refit (L9).

Effect

Since WP-A7 made LocalThroughFlow the default of the net structures, a net panel inclined to the flow gets 26–31 % too little lift at high solidity (Sₙ ≈ 0.33–0.36) against MF2022, and the angle dependence of drag and lift at 60–80° is too weak against Rudi, Løland and Zhan. Drag at normal incidence and at 45° agrees with MF2022 within 7 %.

Possible fix

  1. Change the angle form (e.g. more harmonics, or a solidity-dependent lift as in ScreenMF2022 Eq. 10). Changes loads at every inclination; needs new tests and a methods manual update.
  2. Refit a3 and b4 (L9: a3 = 0.046, b4 = 0.050). L9 shows 16 of 66 L5/L8 checks still fail, so this alone does not make the tests pass; it moves drag at 45° away from MF2022.
  3. Accept wider tolerances per dataset, with a stated reason, and enable the tests.
  4. Disclose only: keep the tests DISABLED_, state the deviations in the methods manual and the E4 validation report.

Test that would prove it

The eleven tests above, enabled (remove the DISABLED_ prefix) and passing.

Risk

Options 1 and 2 change physics and every regression baseline with an inclined net once A7 wires the law in (baselines are A12's, with Karl's approval). Option 3 weakens the validation claim. No current SimObject uses the law, so nothing moves before A7.

Progress (2026-09-30)

The angle-form refit of MARE-0131 was run and reported there (owner decision 2026-09-30: no default changed). It finds that a third harmonic improves the 60–80° angle dependence (L5, L6, L8) but cannot close the lift deficit at 45° (L1, L2): the lift at 45° is cl whatever the harmonics, so that part of this item needs a different cl (a solidity-dependent lift).