Summary (hypothesis)
The sand-bed sediment conductance diverges as S → 0 (∝ S^(p−1) = S^(−1/6)).
The hydraulic-radius reframing + competence-limited self-arrest developed for
GRLP — full derivation in MNiMORPH/GRLP#20
(MNiMORPH/GRLP#20) — may cap this divergence,
converting it into a physical Q_s → 0 shutoff. But a quick estimate suggests
the self-arrest onset overlaps realistic lowland sand-bed slopes, so this is not
obviously a free fix — it needs derivation and testing.
The singularity
In fluvtree/alluvial_core/closures.py, SandClosure:
conductance_exponent = -1/6 → the implicit sediment-flux conductance goes as
S^(−1/6) → ∞ as S → 0.
channel_depth(S) = (1+ε)·τ_crit_bank / (ρg·S) → ∝ 1/S → ∞ as S → 0.
The connection to GRLP #20
GRLP #20's finding: the length the shear/threshold closure returns and calls
"depth" is actually the hydraulic radius R_h; the true flow depth differs,
and the width b from continuity (∝ Q·S^(7/6)) is really the wetted
perimeter. The correction is a single linear cofactor f = R_h/h_true
applied to Q_s = q_s·b, plus a competence-limited self-arrest at the
narrow-channel limit.
Sand's channel_depth = (1+ε)·τ_crit_bank/(ρg·S) has the identical ∝1/S
bank-shear-closure form — so it too is R_h, not the true flow depth, and the
same reframing/cofactor/self-arrest apply.
Mechanism at S → 0 (sand): R_h ∝ 1/S → ∞ while width b ∝ S^(7/6) → 0,
so b/R_h ∝ Q·S^(13/6) → 0, dropping below the existence floor b ≥ 8·R_h. The
channel can no longer hold the bank-shear threshold → competence-limited
self-arrest → Q_s → 0, which caps the S^(−1/6) conductance divergence
before it reaches S = 0. That is the sense in which #20 may resolve the
singularity.
Caveat — why this may not be a clean fix
Rough estimate of the self-arrest onset slope S_min (existence floor
b = 8·R_h; sand constants n = 0.02, τ_crit_bank = 2–10 — test values):
| Q (m³/s) |
S_min (τ_c=2) |
S_min (τ_c=10) |
| 1 |
5.7×10⁻⁴ |
4.1×10⁻³ |
| 100 |
6.8×10⁻⁵ |
4.9×10⁻⁴ |
| 10000 |
8.1×10⁻⁶ |
5.9×10⁻⁵ |
Realistic lowland sand-bed slopes are ~10⁻⁴–10⁻⁵, so these overlap. The
correction would therefore change real low-gradient sand reaches, not merely
remove the numerical singularity at S = 0. Whether that is physically correct
(real low-gradient sand transport genuinely is competence/supply-limited) or an
artifact of porting gravel-derived geometry to sand is the open question.
(Numbers preliminary: test-value constants and the gravel-derived 8·R_h floor.)
To investigate / do
Reference
Full derivation, numerical verification, gravel implementation plan, and the
b = A/R_h = P identity: MNiMORPH/GRLP#20
(MNiMORPH/GRLP#20).
🤖 Generated with Claude Code
Summary (hypothesis)
The sand-bed sediment conductance diverges as
S → 0(∝ S^(p−1) = S^(−1/6)).The hydraulic-radius reframing + competence-limited self-arrest developed for
GRLP — full derivation in MNiMORPH/GRLP#20
(MNiMORPH/GRLP#20) — may cap this divergence,
converting it into a physical
Q_s → 0shutoff. But a quick estimate suggeststhe self-arrest onset overlaps realistic lowland sand-bed slopes, so this is not
obviously a free fix — it needs derivation and testing.
The singularity
In
fluvtree/alluvial_core/closures.py,SandClosure:conductance_exponent = -1/6→ the implicit sediment-flux conductance goes asS^(−1/6) → ∞asS → 0.channel_depth(S) = (1+ε)·τ_crit_bank / (ρg·S)→∝ 1/S → ∞asS → 0.The connection to GRLP #20
GRLP #20's finding: the length the shear/threshold closure returns and calls
"depth" is actually the hydraulic radius
R_h; the true flow depth differs,and the width
bfrom continuity (∝ Q·S^(7/6)) is really the wettedperimeter. The correction is a single linear cofactor
f = R_h/h_trueapplied to
Q_s = q_s·b, plus a competence-limited self-arrest at thenarrow-channel limit.
Sand's
channel_depth = (1+ε)·τ_crit_bank/(ρg·S)has the identical∝1/Sbank-shear-closure form — so it too is
R_h, not the true flow depth, and thesame reframing/cofactor/self-arrest apply.
Mechanism at
S → 0(sand):R_h ∝ 1/S → ∞while widthb ∝ S^(7/6) → 0,so
b/R_h ∝ Q·S^(13/6) → 0, dropping below the existence floorb ≥ 8·R_h. Thechannel can no longer hold the bank-shear threshold → competence-limited
self-arrest →
Q_s → 0, which caps theS^(−1/6)conductance divergencebefore it reaches
S = 0. That is the sense in which #20 may resolve thesingularity.
Caveat — why this may not be a clean fix
Rough estimate of the self-arrest onset slope
S_min(existence floorb = 8·R_h; sand constantsn = 0.02,τ_crit_bank = 2–10— test values):Realistic lowland sand-bed slopes are
~10⁻⁴–10⁻⁵, so these overlap. Thecorrection would therefore change real low-gradient sand reaches, not merely
remove the numerical singularity at
S = 0. Whether that is physically correct(real low-gradient sand transport genuinely is competence/supply-limited) or an
artifact of porting gravel-derived geometry to sand is the open question.
(Numbers preliminary: test-value constants and the gravel-derived
8·R_hfloor.)To investigate / do
R_hnaming + cofactor + self-arrest from GRLP #20 toSandClosure,re-deriving the sand-specific constants (Manning
n,τ_crit_bank).Q_min/ onsetS_minproperly — thegravel quadratic geometry may not carry over unchanged (sand width closure
is bank-cohesion, not grain-threshold).
S = 0with/without the correction;confirm it caps the
S^(−1/6)divergence.onset physical, or an artifact to be pushed below the realistic range?
Reference
Full derivation, numerical verification, gravel implementation plan, and the
b = A/R_h = Pidentity: MNiMORPH/GRLP#20(MNiMORPH/GRLP#20).
🤖 Generated with Claude Code