This is a 2D cross-section through a nanofiltration (NF) membrane. Unlike a single abstract "pass test" applied wherever a particle happens to be, here each solute genuinely random-walks (Brownian dynamics) through the feed channel until it physically finds one of the membrane's few real pore gaps — a diffusion-limited transport step that a 3D scene with pores everywhere skips. Only once a particle geometrically reaches a pore mouth is it tested against the Donnan–Steric Pore Model (Bowen & Mukhtar, 1996):
Brownian step (Stokes–Einstein):
D(r) = D₀ / r ← bigger solute diffuses slower
Δx, Δy = √(2·D·dt) · N(0,1) (plus convective drift v·dt toward the membrane)
Steric partitioning at the pore mouth (Ferry, 1936):
λ = r_solute / r_pore
Φ_steric = (1−λ)²·[2−(1−λ)²] for λ < 1, else 0
Donnan (charge) exclusion — membrane fixed charge is negative, so its
internal Donnan potential ψ_D = −σ is negative too:
Φ_charge = min(1, exp(z·σ))
co-ions (same sign as the membrane, i.e. anions here) are excluded;
counter-ions (cations) clamp at 1 — they pass freely, never boosted past it
Pass probability once a pore is physically reached:
P_pass = Φ_steric · Φ_charge
- Pore radius — shrinks λ for every species; once r_solute > r_pore a species is sterically excluded outright (Φ_steric = 0) even if it finds a pore.
- Fixed surface charge — sets σ. Because the membrane is negatively charged, anions (Cl⁻, SO₄²⁻) are the co-ions and get exponentially excluded, more so as their valence grows — this is why divalent SO₄²⁻ is rejected far harder than monovalent Cl⁻ even though the two ions are similar in size. Cations (Na⁺) are counter-ions and are never penalized.
- Applied pressure — scales the convective drift carrying solutes toward the membrane (Darcy's law); it changes how fast particles arrive at a pore, not the odds once they get there.
- Solid membrane vs. pore gap — a particle that reaches the membrane line away from a pore simply bounces off (elastic collision); only the handful of real gaps shown on-screen offer any chance of passage. A particle rejected at a pore mouth is likewise reflected back into the feed side.
This sits between ultrafiltration (size-only sieving) and reverse osmosis (rejects almost everything): pore size and fixed charge together give NF its selectivity — used industrially for water softening, dye/salt separation and selective removal of multivalent ions.