Development instance — data may be reset at any time

Urethral fluid dynamics

Closed-form derivation of urethral flow and pressure, given bladder pressure, the sphincter chain, and any external obstruction.

A realistic omorashi simulation lives or dies by what happens inside the urethra. Can the sphincters hold against bladder pressure? If they can't quite, how much flow leaks through, and how much force does the external sphincter need to apply to stay continent? When flow does get through, what pressure does the urethral wall feel — the signal that feeds back to the periaqueductal gray (PAG) and pontine micturition center (PMC) and drives the micturition reflex?

The picture changes when there's an external obstruction downstream — a hand held between the legs, a heel pressed against the perineum. Does flow slow, stop entirely, or push the wall pressure somewhere new?

This document derives the correct answer from first principles: a closed-form expression for flow rate and the full pressure profile across a chain of sphincters with closing pressures. Each piece is built up only when the previous one demands it, so the final formula arrives as the natural endpoint of the physics rather than a result to be taken on faith.

Setup

We have this sequence of parts:

  1. The bladder, at some pressure. I'll call this B\text{B}, with fluid pressure PBP_\text{B}.
  2. The internal sphincter. IS\text{IS}, with closing pressure PISP_\text{IS}.
  3. The first part of the urethra. U1\text{U}_1, with fluid pressure PU1P_{\text{U}_1} and flow QU1Q_{\text{U}_1}. Assume flow resistance RU1R_{\text{U}_1} is negligible (since it's very short).
  4. The external sphincter. ES\text{ES}, with closing pressure PESP_\text{ES}.
  5. The second part of the urethra. U2\text{U}_2, with fluid pressure PU2P_{\text{U}_2}, flow QU2Q_{\text{U}_2}, and flow resistance RU2R_{\text{U}_2}. The PMC-feedback sensor sits in the urethral wall here, so we identify PS=PU2P_\text{S} = P_{\text{U}_2}.
  6. An external obstruction. EO\text{EO}, with closing pressure PEOP_\text{EO}.
  7. Open air, with fluid pressure 00 (for simplicity).
BISU1ESU2EOAir\text{B} \to \text{IS} \to \text{U}_1 \to \text{ES} \to \text{U}_2 \to \text{EO} \to \text{Air}

The goal of the rest of this document is to derive a method for solving for the flow rate QQ and the pressure at every point in the chain, given the closing pressures and the bladder pressure. We'll build it up in stages, starting from the simplest physical case and adding complexity only as needed.

What a sphincter actually is

Before any equations: we need a clear physical picture, because the wrong mental model leads straight into the wrong math.

A sphincter is a ring of muscle wrapped around the outside of a soft pipe. When the muscle activates, it contracts circumferentially — like a hand squeezing a section of garden hose. The muscle is on the outside of the pipe wall, pulling inward; the fluid is on the inside, pushing outward.

This is not a check valve, and the difference is geometric.

A check valve sits inside a pipe, at the boundary between two pipe segments. Its sealing element has upstream fluid on one face and downstream fluid on the other; the seal feels the differential between them. A check valve opens when PupstreamPdownstreamP_\text{upstream} - P_\text{downstream} exceeds its spring setpoint — and downstream pressure literally helps hold it closed.

A sphincter has none of that help. It's wrapped around the outside of the pipe, so its outer surface is in contact with atmospheric pressure (or, inside the body, with tissue at roughly atmospheric pressure), and its inner surface is in contact with the pipe wall. The pipe wall in turn is being pushed outward against the muscle by the local fluid pressure inside the pipe at that location — and that's the only force pushing back. Whatever's happening downstream is geometrically separated: it's inside the pipe, past the sphincter location, on the far side of an intervening section of pipe wall. It cannot reach back through the pipe wall and around the muscle to push on it. The sphincter only ever feels local upstream pressure.

This sounds like a small distinction, but it's the foundation everything else rests on.

When you see the symbol PcloseP_\text{close} in this document, hold this picture in mind: a circumferential muscle squeezing inward at force-per-unit-area PcloseP_\text{close}, with atmospheric pressure on its outer surface (no help from anywhere), and the local fluid pressure inside the pipe pushing the wall outward against it.

The closing pressure: a local rule

The closing pressure PcloseP_\text{close} of a sphincter is the muscle's clamp force, per unit area, pushing inward on the pipe wall. There's a contest at the wall:

  • Muscle pushes in at PcloseP_\text{close}.
  • Fluid pushes out at the local fluid pressure, PlocalP_\text{local}.

If Plocal<PcloseP_\text{local} < P_\text{close}, muscle wins — wall stays collapsed, no flow can pass. If Plocal>PcloseP_\text{local} > P_\text{close}, fluid wins — wall opens, flow can pass.

The crucial thing is that the comparison is between PcloseP_\text{close} and the local fluid pressure on the upstream side of the sphincter. It is not the pressure differential across the sphincter.

The bicycle-tire test makes this concrete: take a fully inflated tire at pressure PP throughout. Squeeze it shut at one point. To collapse the wall there, you have to apply at least PP of clamping force per unit area, regardless of how big or small the rest of the tire is, regardless of what the pressure is on the other side of your hand. The fluid pushes on the wall everywhere with force determined by local pressure. Your clamp must exceed that local pressure, and only that local pressure, to close it.

Principle 1. A sphincter holds (lumen collapsed, no flow can pass) iff its closing pressure is at least the local upstream fluid pressure: PlocalPcloseP_\text{local} \ge P_\text{close}.

The differential view ("the gate cracks when ΔP\Delta P across it exceeds PcloseP_\text{close}") is what we'd use for a check valve. It's wrong for a sphincter.

Static analysis: the no-flow case

Before tackling flow, let's solve the simpler problem: bladder pressurized to PBP_\text{B}, no flow yet, where does the fluid end up at rest?

Walk the chain forward from the bladder. The bladder presses against IS\text{IS} at PBP_\text{B}. By Principle 1:

  • If PISPBP_\text{IS} \ge P_\text{B}, IS\text{IS} holds. Fluid stays in the bladder. U1,U2\text{U}_1, \text{U}_2 stay empty (atmospheric). Done.
  • If PIS<PBP_\text{IS} < P_\text{B}, IS\text{IS} opens and fluid passes into U1\text{U}_1.

Suppose IS\text{IS} opens. U1\text{U}_1 pressurizes essentially instantly as fluid pours in. What pressure does it settle at?

A natural guess is PU1=PBPISP_{\text{U}_1} = P_\text{B} - P_\text{IS}, as if IS\text{IS} "consumes" PISP_\text{IS} as fluid passes through. That's what a check valve would do — its seal sits between segments and feels the differential. But a sphincter is geometrically different.

The sphincter sits around the outside of the pipe with atmospheric pressure on its outer surface. It never sees the downstream fluid — that fluid is past the sphincter, on the far side of the pipe wall, geometrically unable to reach the muscle. The muscle only fights local upstream pressure. So once fluid is past the sphincter location, the muscle has no leverage over it. The fluid in U1\text{U}_1 is continuous with the fluid in B\text{B} at the same pressure: PU1=PBP_{\text{U}_1} = P_\text{B}.

Principle 2 (static case). With no flow, an open sphincter transmits pressure unchanged. There is no fixed "tax" the way a check valve has.

The static qualifier matters. During flow, a sphincter can create a pressure drop via a different mechanism (Bernoulli, which we'll meet shortly). Principle 2 says only that there's no static cost: an open sphincter sitting in a static fluid column doesn't subtract anything from the pressure.

By induction, each open gate transmits PBP_\text{B} forward. Fluid pressurizes the chain until reaching the first gate strong enough to hold. So no flow happens iff some gate has PclosePBP_\text{close} \ge P_\text{B}. Negating: flow can happen only when every gate has Pclose<PBP_\text{close} < P_\text{B}, i.e.:

Principle 3. Flow happens iff PB>max(PIS,PES,PEO)P_\text{B} > \max(P_\text{IS}, P_\text{ES}, P_\text{EO}).

Maximum, not sum — a single strong gate suffices to hold PBP_\text{B} regardless of how weak the others are.

Worked examples (static)

All pressures in cmH2O\text{cmH}_2\text{O}.

Example A: PB=60P_\text{B} = 60, PIS=40P_\text{IS} = 40, PES=30P_\text{ES} = 30, PEO=0P_\text{EO} = 0. max=40<60\max = 40 < 60 → flow. (Will need the dynamic analysis to get QQ.)

Example B: PB=60P_\text{B} = 60, PIS=40P_\text{IS} = 40, PES=70P_\text{ES} = 70, PEO=0P_\text{EO} = 0. max=70>60\max = 70 > 60 → no flow. Walking the chain: IS\text{IS} opens (40<6040 < 60), U1=60\text{U}_1 = 60. ES\text{ES} holds (706070 \ge 60), U2\text{U}_2 stays empty. Sensor sees atmospheric (00).

Example C (heel obstruction): PB=60P_\text{B} = 60, PIS=5P_\text{IS} = 5 (relaxed), PES=0P_\text{ES} = 0 (relaxed), PEO=80P_\text{EO} = 80. max=80>60\max = 80 > 60 → no flow. Walking the chain: IS\text{IS} opens, U1=60\text{U}_1 = 60. ES\text{ES} opens, U2=60\text{U}_2 = 60. EO\text{EO} holds. The sensor in U2\text{U}_2 sees PS=60P_\text{S} = 60, with zero flow.

Example C is the phantom-void configuration. By Principle 2, every open upstream gate transmits PBP_\text{B} unchanged, so fluid pressurizes the entire urethra all the way to the held EO\text{EO} at full bladder pressure. The sensor inside the urethral wall reports PBP_\text{B} even though no fluid is leaving. (Under the wrong "check valve" intuition, we'd predict PS=PBPISPES=55P_\text{S} = P_\text{B} - P_\text{IS} - P_\text{ES} = 55, which is materially wrong.)

Beyond static: how does flow get throttled?

The static analysis settles the binary question — does any flow happen? — but says nothing about how much. To predict flow rate we need a new mechanism, and there's a puzzle to solve first.

Imagine ES\text{ES} gradually tightening from 3030 toward 6060 in Example A. Empirically, the stream slows: a partially-engaged sphincter throttles flow, even when it's not strong enough to fully stop it. But the static analysis says: at PES=59<PB=60P_\text{ES} = 59 < P_\text{B} = 60, the lumen is open, the muscle isn't strong enough to deform the wall, geometry is unchanged. So why does flow rate change?

The answer is that flow itself changes the local pressure at the constriction, via Bernoulli. The mechanism is dynamic, not static.

Bernoulli flow limitation. Fluid moving through the chain at rate QQ passes any constriction at velocity v=Q/Av = Q/A (continuity, where AA is the constriction's cross-section). Bernoulli's principle says higher velocity comes with lower local static pressure: at a constriction,

Plocal=PB12ρv2=PB12ρ(Q/A)2P_\text{local} = P_\text{B} - \tfrac{1}{2}\rho v^2 = P_\text{B} - \tfrac{1}{2}\rho (Q/A)^2

The wall at the constriction is being pushed outward by PlocalP_\text{local}, which is lower than PBP_\text{B}. The clamp on the wall is still PcloseP_\text{close}. The contest is now:

  • Muscle pushes in at PcloseP_\text{close}.
  • Fluid pushes out at PB12ρ(Q/A)2P_\text{B} - \tfrac{1}{2}\rho (Q/A)^2.

If QQ is large enough that 12ρ(Q/A)2>PBPclose\tfrac{1}{2}\rho (Q/A)^2 > P_\text{B} - P_\text{close} — enough kinetic energy to drop PlocalP_\text{local} below PcloseP_\text{close} — the wall starts moving inward. Smaller AA means higher vv means even lower PlocalP_\text{local}: positive feedback. The wall snaps shut.

The stable equilibrium is the largest QQ at which this hasn't happened yet: AA adjusts so that PlocalP_\text{local} at the constriction sits exactly at PcloseP_\text{close}. Solving for QQ:

PB12ρ(Q/A)2=Pclose    QPBPcloseP_\text{B} - \tfrac{1}{2}\rho (Q/A)^2 = P_\text{close} \quad\implies\quad Q \propto \sqrt{P_\text{B} - P_\text{close}}

This is the Starling resistor flow-limited regime. The clamp dictates a flow ceiling — not by deforming the wall statically (it doesn't, when Pclose<PBP_\text{close} < P_\text{B}) but by setting the flow rate at which the wall would start to deform.

Principle 4. A sphincter overcome by flow throttles the flow via Bernoulli flow limitation. The flow ceiling is set by the gap between its PinP_\text{in} and its own PcloseP_\text{close}, independent of PoutP_\text{out}.

The exact Bernoulli form is QPinPcloseQ \propto \sqrt{P_\text{in} - P_\text{close}}, the inviscid limit. In the opposite limit (wall friction dominates over kinetic energy), the form is linear: Q(PinPclose)Q \propto (P_\text{in} - P_\text{close}). Real urinary flows are transitional (Re5000\mathrm{Re} \approx 5000), so neither is exact. For the rest of this document we use the linear form, both because it's mathematically simpler and because it's what's appropriate for the viscous regime of the flows we care about. So: each gate, if it's flow-limited, satisfies

Q=PinPcloseRQ = \frac{P_\text{in} - P_\text{close}}{R}

where RR is the resistance associated with that gate. We treat the sphincters as the dominant friction sources, absorbing any non-sphincter urethral friction into the adjacent gate's RR. This is empirically reasonable: in females the urethra is short and the sphincters occupy much of its length, and peak flow rates are similar across sexes despite the male urethra being several times longer — which would be surprising if non-sphincter urethra contributed materially to the resistance budget. With this lumping, pressure within each segment is uniform and all ohmic loss happens at the gates. We assume R>0R > 0 throughout.

Three regimes

Combining the static and dynamic cases, any single gate can be in one of three states depending on the surrounding pressures:

  1. Closed: PinPcloseP_\text{in} \le P_\text{close}. Wall fully collapsed (or just barely open with no driving pressure). Q=0Q = 0.
  2. Flow-limited: Pout<Pclose<PinP_\text{out} < P_\text{close} < P_\text{in}. Wall partially collapsed at the constriction; Q=(PinPclose)/RQ = (P_\text{in} - P_\text{close})/R, independent of PoutP_\text{out}.
  3. Open: PclosePoutPinP_\text{close} \le P_\text{out} \le P_\text{in}. Wall fully open; ordinary tube flow Q=(PinPout)/RQ = (P_\text{in} - P_\text{out})/R.

The boundaries are smooth, not discontinuous. At Pin=PcloseP_\text{in} = P_\text{close}, regime 1's Q=0Q=0 matches regime 2's formula evaluated at the boundary. At Pout=PcloseP_\text{out} = P_\text{close}, regimes 2 and 3 give the same QQ. The \le assignments above place each equality case in the regime whose formula gives the correct (continuous) answer.

Solving the cascade

We now have everything needed to attack the original question: given the chain (with NN gates having closing pressures Pclose,kP_{\text{close},k} and resistances RkR_k, numbered 11 to NN from upstream to downstream) and the bladder pressure PBP_\text{B}, find QQ and the pressure at every point.

Each gate's regime depends on its PinP_\text{in} and PoutP_\text{out}, which depend on QQ and on the regime configuration of the whole chain. The dependencies look circular. But we can break them with a clean recursion.

Setting up the recursion

Define sks_k = the fluid pressure on the upstream side of gate kk (=Pin,k= P_{\text{in},k}). We have two anchoring conditions:

  • Base case: sN+1=0s_{N+1} = 0 (atmosphere downstream of the last gate). This is what the recursion grounds out at.
  • Bladder boundary: s1=PBs_1 = P_\text{B} (set by the bladder). This is what pins down QQ once we have the recursion in hand.

The plan: write a recursion that gives sks_k in terms of sk+1s_{k+1} with QQ as a parameter, unfold it from NN down to 11 to get s1s_1 in closed form, then set s1=PBs_1 = P_\text{B} and solve for QQ.

For gate kk, depending on its regime:

  • Regime 2: Pin,k=Pclose,k+QRkP_{\text{in},k} = P_{\text{close},k} + Q \cdot R_k. (From Q=(PinPclose)/RQ = (P_\text{in} - P_\text{close})/R; notice PoutP_\text{out} doesn't appear. This is exactly what Principle 4 says: the flow ceiling is set by PcloseP_\text{close}, not by anything downstream.)
  • Regime 3: Pin,k=Pout,k+QRk=sk+1+QRkP_{\text{in},k} = P_{\text{out},k} + Q \cdot R_k = s_{k+1} + Q \cdot R_k. (Just ohmic loss.)

What determines which regime gate kk is in? The regime test from above is Pclose,k>Pout,kP_{\text{close},k} > P_{\text{out},k} for regime 2, equivalently Pclose,k>sk+1P_{\text{close},k} > s_{k+1}. So:

  • If Pclose,k>sk+1P_{\text{close},k} > s_{k+1}: gate kk is in regime 2, and sk=Pclose,k+QRks_k = P_{\text{close},k} + Q \cdot R_k.
  • If Pclose,ksk+1P_{\text{close},k} \le s_{k+1}: gate kk is in regime 3, and sk=sk+1+QRks_k = s_{k+1} + Q \cdot R_k.

These two cases combine into a single formula:

sk=max(Pclose,k,sk+1)+QRks_k = \max(P_{\text{close},k},\, s_{k+1}) + Q \cdot R_k

The max\max selects regime 2 when the gate's threshold is the binding constraint, regime 3 when the cumulative downstream pressure already exceeds the threshold. We don't have to know the regimes in advance — the max\max chooses for us.

The formula covers regimes 2 and 3 only, not regime 1 (closed). That's fine: whenever the cascade yields Q>0Q > 0, the recursion forces skPclose,k+QRk>Pclose,ks_k \ge P_{\text{close},k} + Q R_k > P_{\text{close},k}, so every gate has Pin>PcloseP_\text{in} > P_\text{close} and none can be in regime 1. The closed case appears only when Q=0Q = 0, handled separately by the static analysis below.

Unfolding to closed form

The recursion has a tidy unfolded form. Distribute the QRkQ \cdot R_k inside the max\max:

sk=max(Pclose,k+QRk,    sk+1+QRk)s_k = \max\bigl(\, P_{\text{close},k} + Q \cdot R_k,\;\; s_{k+1} + Q \cdot R_k \,\bigr)

Substitute sk+1s_{k+1}:

sk=max(Pclose,k+QRk,    Pclose,k+1+Q(Rk+Rk+1),    sk+2+Q(Rk+Rk+1))s_k = \max\bigl(\, P_{\text{close},k} + Q \cdot R_k,\;\; P_{\text{close},k+1} + Q \cdot (R_k + R_{k+1}),\;\; s_{k+2} + Q \cdot (R_k + R_{k+1}) \,\bigr)

And so on, all the way down to gate NN. At the bottom, sN=max(Pclose,N,0)+QRN=Pclose,N+QRNs_N = \max(P_{\text{close},N},\, 0) + Q \cdot R_N = P_{\text{close},N} + Q \cdot R_N — since clamp pressures are non-negative, Pclose,NP_{\text{close},N} dominates the sN+1=0s_{N+1} = 0 base case (with equality if Pclose,N=0P_{\text{close},N} = 0, which is harmless: both candidates give the same value). Each substitution step converts the trailing sk+is_{k+i} branch into two — a Pclose,k+iP_{\text{close},k+i} branch and a forwarded sk+i+1s_{k+i+1} branch, each carrying cumulative resistance Rk++Rk+iR_k + \cdots + R_{k+i}. By induction on the unfolding depth, each gate j{k,,N}j \in \{k, \ldots, N\} contributes exactly one branch of the form Pclose,j+Q(Rk+Rk+1++Rj)P_{\text{close},j} + Q \cdot (R_k + R_{k+1} + \cdots + R_j). So the closed form for s1s_1 is:

s1=maxj{1,,N}[Pclose,j+QR1j]s_1 = \max_{j \in \{1, \ldots, N\}} \bigl[\, P_{\text{close},j} + Q \cdot R_{1\ldots j} \,\bigr]

where R1j:=R1+R2++RjR_{1\ldots j} := R_1 + R_2 + \cdots + R_j is the cumulative resistance from gate 11 through gate jj.

Each branch represents "the bladder pressure that gate jj alone would require to drive flow QQ, accounting for the cumulative ohmic loss through everything upstream of and including gate jj." The actual PBP_\text{B} has to be at least each branch — whichever branch is largest is the binding constraint.

Solving for QQ

The boundary condition s1=PBs_1 = P_\text{B} becomes:

PB=maxj[Pclose,j+QR1j]P_\text{B} = \max_{j} \bigl[\, P_{\text{close},j} + Q \cdot R_{1\ldots j} \,\bigr]

By definition of max\max, the equation maxjxj=PB\max_j x_j = P_\text{B} holds iff every xjPBx_j \le P_\text{B} and at least one equals PBP_\text{B}. So PBP_\text{B} has to be \ge each branch:

PBPclose,j+QR1jfor every jP_\text{B} \ge P_{\text{close},j} + Q \cdot R_{1\ldots j} \quad \text{for every } j

Rearranging (using R1j>0R_{1\ldots j} > 0):

QPBPclose,jR1jfor every jQ \le \frac{P_\text{B} - P_{\text{close},j}}{R_{1\ldots j}} \quad \text{for every } j

Each branch is monotonically increasing in QQ, so the max\max is too — there's a unique QQ at which it equals PBP_\text{B}. The largest QQ satisfying every constraint is the minimum, and on its argmin the inequality is automatically tight (giving the required max=PB\max = P_\text{B}):

Q=minjPBPclose,jR1jQ = \min_{j} \frac{P_\text{B} - P_{\text{close},j}}{R_{1\ldots j}}

If any Pclose,jPBP_{\text{close},j} \ge P_\text{B}, that term is 0\le 0, meaning gate jj alone is strong enough to hold against the bladder. Physically Q0Q \ge 0, so we clamp:

  Q=max ⁣(0,  minjPBPclose,jR1j)  \boxed{\;Q = \max\!\left(\, 0,\; \min_{j} \frac{P_\text{B} - P_{\text{close},j}}{R_{1\ldots j}} \right)\;}

That's the closed-form answer. O(N)O(N) to compute — one pass accumulating R1jR_{1\ldots j}, computing each candidate, taking the min.

The argmin jj^* is the dominant throttle: the gate where the constraint is binding. As we'll see in the worked examples, jj^* is not necessarily the gate with the highest PcloseP_\text{close}.

This formula also recovers Principle 3 as the no-flow criterion: Q=0Q = 0 iff some Pclose,jPBP_{\text{close},j} \ge P_\text{B}, i.e., max(Pclose)PB\max(P_\text{close}) \ge P_\text{B}. So the static and dynamic analyses agree on when flow happens.

Recovering the regimes

Given QQ from the formula above, we can compute each sks_k by walking the recursion:

sN+1=0sk=max(Pclose,k,sk+1)+QRk(for k=N down to 1)\begin{aligned} s_{N+1} &= 0 \\ s_k &= \max(P_{\text{close},k},\, s_{k+1}) + Q \cdot R_k \quad (\text{for } k = N \text{ down to } 1) \end{aligned}

Each gate's regime then falls out:

  • Regime 2 if Pclose,k>sk+1P_{\text{close},k} > s_{k+1}.
  • Regime 3 if Pclose,ksk+1P_{\text{close},k} \le s_{k+1}.

This is also O(N)O(N).

(If Q=0Q = 0, the cascade is in static equilibrium and the regimes are determined by Principle 1 directly: walk the chain forward, the first gate with PclosePBP_\text{close} \ge P_\text{B} holds, everything upstream of it sits at PBP_\text{B} and everything downstream sits at atmospheric.)

Worked examples

Example 1: voiding (one dominant gate). PB=60P_\text{B} = 60, Pclose=(5,30,0)P_\text{close} = (5, 30, 0), R=(1,1,1)R = (1, 1, 1). The internal sphincter has relaxed during the reflex (PIS=5P_\text{IS} = 5), the external sphincter is the only meaningful clamp (PES=30P_\text{ES} = 30), no external obstruction (PEO=0P_\text{EO} = 0).

j=1:  (605)/1=55j=2:  (6030)/2=15minj=3:  (600)/3=20\begin{aligned} j=1:\;& (60 - 5)/1 = 55 \\ j=2:\;& (60 - 30)/2 = 15 \quad \leftarrow \min \\ j=3:\;& (60 - 0)/3 = 20 \end{aligned}

Q=15Q = 15. Argmin j=2j^* = 2 (ES\text{ES}). Walking the recursion: s4=0s_4 = 0, s3=max(0,0)+15=15s_3 = \max(0, 0) + 15 = 15, s2=max(30,15)+15=45s_2 = \max(30, 15) + 15 = 45, s1=max(5,45)+15=60s_1 = \max(5, 45) + 15 = 60 ✓.

Regimes: gate 1 (IS\text{IS}): s2=455s_2 = 45 \ge 5 → regime 3 (back-pressured open). Gate 2 (ES\text{ES}): s3=15<30s_3 = 15 < 30 → regime 2 (the throttle). Gate 3 (EO\text{EO}): s4=00s_4 = 0 \ge 0 → regime 3 (relaxed gate, just open tube).

Example 2: heel obstruction (no flow). PB=60P_\text{B} = 60, Pclose=(5,0,80)P_\text{close} = (5, 0, 80), R=(1,1,1)R = (1, 1, 1).

j=1:  55j=2:  30j=3:  (6080)/3=6.67min\begin{aligned} j=1:\;& 55 \\ j=2:\;& 30 \\ j=3:\;& (60 - 80)/3 = -6.67 \quad \leftarrow \min \end{aligned}

Min <0< 0, so Q=0Q = 0. No flow. Reverting to static analysis (Principle 2): IS\text{IS} and ES\text{ES} are both open (Pclose<PBP_\text{close} < P_\text{B}), they transmit PBP_\text{B} unchanged; EO\text{EO} holds; U1=U2=60\text{U}_1 = \text{U}_2 = 60. Recovers Example C from earlier.

Example 3: cascade subtlety — strong upstream gate. PB=60P_\text{B} = 60, Pclose=(50,30,40)P_\text{close} = (50, 30, 40), R=(1,1,1)R = (1, 1, 1). The internal sphincter is unusually strong, the external is moderate, EO\text{EO} has some perineal pressure.

j=1:  (6050)/1=10j=2:  (6030)/2=15j=3:  (6040)/3=6.67min\begin{aligned} j=1:\;& (60 - 50)/1 = 10 \\ j=2:\;& (60 - 30)/2 = 15 \\ j=3:\;& (60 - 40)/3 = 6.67 \quad \leftarrow \min \end{aligned}

Q6.67Q \approx 6.67. Argmin j=3j^* = 3, not gate 1 despite gate 1 having the highest PcloseP_\text{close}. The cumulative ohmic loss through all three gates makes gate 3's constraint the binding one.

Walking the recursion: s4=0s_4 = 0, s3=max(40,0)+6.67=46.67s_3 = \max(40, 0) + 6.67 = 46.67, s2=max(30,46.67)+6.67=53.33s_2 = \max(30, 46.67) + 6.67 = 53.33, s1=max(50,53.33)+6.67=60s_1 = \max(50, 53.33) + 6.67 = 60 ✓.

Regimes: gate 1: s2=53.3350s_2 = 53.33 \ge 50 → regime 3 (back-pressured!). Gate 2: s3=46.6730s_3 = 46.67 \ge 30 → regime 3. Gate 3: s4=0<40s_4 = 0 < 40 → regime 2 (the throttle).

So even though gate 1 has the highest PcloseP_\text{close}, it's not the throttle — it's been back-pressured into regime 3 by the cumulative cascade pressure pushing on its downstream side. The dominant throttle is gate 3.

This is the case that breaks the simple "strongest gate is the throttle" intuition. The cascade math handles it cleanly.

Pressure profile and the sensor

Once QQ and the sks_k values are known, the pressure at every point in the chain is determined: sks_k is the pressure throughout the segment between gate k1k-1 and gate kk (with gate 00 being the bladder). The uniform-pressure-per-segment claim is what the lumping convention bought us — by absorbing each upstream segment's friction into the next gate, the segment itself has no internal pressure drop.

For our chain (3 gates IS,ES,EO\text{IS}, \text{ES}, \text{EO}; sensor S\text{S} in segment U2\text{U}_2):

  • Bladder side of IS\text{IS}: PB=s1P_\text{B} = s_1.
  • Between IS\text{IS} and ES\text{ES} (segment U1\text{U}_1): s2s_2.
  • Between ES\text{ES} and EO\text{EO} (segment U2\text{U}_2): s3s_3. The sensor sees s3s_3.
  • Atmosphere: s4=0s_4 = 0.

Three behaviors fall out of s3=max(Pclose,EO,s4)+QREO=max(Pclose,EO,0)+QREO=Pclose,EO+QREOs_3 = \max(P_{\text{close},\text{EO}},\, s_4) + Q \cdot R_\text{EO} = \max(P_{\text{close},\text{EO}}, 0) + Q \cdot R_\text{EO} = P_{\text{close},\text{EO}} + Q \cdot R_\text{EO}:

  • Static, sphincter holds (Q=0Q = 0, max(Pclose)PB\max(P_\text{close}) \ge P_\text{B} due to IS\text{IS} or ES\text{ES}). Flow never reaches S\text{S}; static analysis gives PS=0P_\text{S} = 0 (atmospheric).
  • Static, downstream holds (Q=0Q = 0 due to EO\text{EO}). Open upstream gates transmit PBP_\text{B}; static analysis gives PS=PBP_\text{S} = P_\text{B}.
  • Flow (Q>0Q > 0). PS=Pclose,EO+QREOP_\text{S} = P_{\text{close},\text{EO}} + Q \cdot R_\text{EO}. With no external obstruction (Pclose,EO=0P_{\text{close},\text{EO}} = 0), PS=QREOP_\text{S} = Q \cdot R_\text{EO} — small, proportional to flow. With heel pressure but flow forced through, PSP_\text{S} sits at Pclose,EOP_{\text{close},\text{EO}} plus the ohmic addition.

For Example 1 (voiding): PS=0+151=15P_\text{S} = 0 + 15 \cdot 1 = 15. For Example 2 (heel obstruction, no flow): PS=60P_\text{S} = 60 (static analysis). For Example 3 (cascade with EO\text{EO} as throttle): PS=40+6.67=46.67P_\text{S} = 40 + 6.67 = 46.67.

Summary

The complete solution for a chain of NN gates given PBP_\text{B}, Pclose,kP_{\text{close},k}, and RkR_k:

Q=max ⁣(0,  minj{1..N}PBPclose,jR1j)Q = \max\!\left(\, 0,\; \min_{j \in \{1..N\}} \frac{P_\text{B} - P_{\text{close},j}}{R_{1\ldots j}} \right)

If Q>0Q > 0, walk the recursion sk=max(Pclose,k,sk+1)+QRks_k = \max(P_{\text{close},k},\, s_{k+1}) + Q \cdot R_k from sN+1=0s_{N+1} = 0 upstream to get every pressure and every regime.

If Q=0Q = 0, fall back to static analysis: walk the chain forward from the bladder, each open gate transmits PBP_\text{B} unchanged, fluid stops at the first gate with PclosePBP_\text{close} \ge P_\text{B}.

The principles that earned each piece:

  • Principle 1 (closing pressure is local, not differential): grounds the regime tests and the static walk.
  • Principle 2 (open sphincter transmits pressure unchanged in the static case): gives us the static chain analysis and the heel-obstruction sensor result.
  • Principle 3 (flow iff PB>max(Pclose)P_\text{B} > \max(P_\text{close})): the binary flow criterion, which the cascade formula recovers automatically.
  • Principle 4 (Bernoulli flow limitation): the dynamic mechanism that makes regime 2 well-defined and gives us Q=(PinPclose)/RQ = (P_\text{in} - P_\text{close})/R for any single flow-limited gate.

If a future change violates one of these principles, that's a signal to revisit — either revise the principle deliberately (and update this document) or fix the change.

For a copy-pasteable implementation of the closed-form cascade (without the derivation), see urethral-cascade.