Membrane Flux Calculation with Concentration Polarization Model for Reverse Osmosis and Ultrafiltration

The purpose of this article is to provide a practical, calculation-ready method to predict membrane permeate flux using a concentration polarization model, including clear workflows for reverse osmosis, nanofiltration, and ultrafiltration.

1. Why concentration polarization must be included in membrane flux calculations

Membrane separation flux is not determined by pressure alone because solute accumulates near the membrane surface when the membrane rejects solute.

This near-surface enrichment is called concentration polarization, and it raises the membrane-surface osmotic pressure and increases the driving-force loss in pressure-driven membranes.

If concentration polarization is ignored, predicted flux is often higher than measured flux, especially at higher recovery, higher rejection, and lower crossflow velocity.

Note : Flux models that ignore concentration polarization can be directionally wrong when you change operating conditions, because the same membrane may appear to have different permeability if the boundary-layer resistance is not modeled.

2. Core model map for membrane flux

2.1 Two common regimes

Pressure-driven desalting membranes such as reverse osmosis and many nanofiltration cases are typically modeled using a water-flux equation that subtracts an osmotic pressure term evaluated at the membrane surface.

Macromolecular ultrafiltration and many fouling-prone systems are often described using a limiting-flux form such as the gel polarization model, in which flux becomes weakly dependent on pressure once a critical surface concentration is reached.

2.2 Quick decision table

Membrane process Typical dominant limitation Common flux model form When it is most useful
Reverse osmosis. Osmotic pressure increase at membrane surface from concentration polarization. J = A(ΔP − Δπm). Salt or small-solute systems with high rejection and meaningful osmotic pressure.
Nanofiltration. Mixed osmotic and charge effects with concentration polarization influencing both. J = A(ΔP − Δπm) with an appropriate π model. Moderate salinity, partial rejection, and spacer-channel modules.
Ultrafiltration. Boundary-layer buildup leading to gel layer, cake, or strong viscosity effects. J = k ln(Cg/Cb). Macromolecules, colloids, proteins, and systems that show a plateau flux with increasing pressure.

3. Definitions, symbols, and consistent units

3.1 Symbol table

Symbol Meaning Typical units Notes for implementation
J. Volumetric permeate flux normal to membrane. m/s or LMH. Use m/s inside exponent terms to match k in m/s.
A. Water permeability coefficient. m/s/bar or LMH/bar. Convert to m/s/bar if you will compute exp(J/k).
ΔP. Transmembrane hydraulic pressure difference. bar. Use effective ΔP across active layer, not just feed pressure, if pressure drop is large.
π. Osmotic pressure. bar. For dilute salts, van’t Hoff is often adequate as a first estimate.
Cb. Bulk feed solute concentration. mol/L or kg/m³. Use the same basis as used in π(C).
Cm. Membrane-surface concentration on feed side. mol/L or kg/m³. Computed from concentration polarization equation.
Cp. Permeate concentration. mol/L or kg/m³. Can be measured or estimated from rejection.
k. Mass transfer coefficient in the feed boundary layer. m/s. Often obtained from Sherwood correlations or fitted from data.
Cg. Gel concentration at membrane surface for UF gel polarization model. kg/m³ or g/L. Treated as a fitted parameter for a given solute and hydrodynamic condition.

3.2 Essential unit conversions

A common engineering unit for flux is LMH, meaning liters per square meter per hour.

For calculations that use exp(J/k), convert LMH to m/s so that J and k have the same units.

1 LMH = 1 L/(m^2·h) = 1e-3 m^3/(m^2·h) = (1e-3/3600) m/s = 2.7777778e-7 m/s.

4. Concentration polarization by film theory

4.1 Film-theory concentration polarization relationship

In steady crossflow filtration, the boundary layer can be approximated as a stagnant film with thickness δ, giving k = D/δ, and the solute balance leads to a standard exponential relationship.

A widely used form that includes a finite permeate concentration is shown below.

(C_m - C_p) / (C_b - C_p) = exp(J / k). C_m = C_p + (C_b - C_p) * exp(J / k).

This expression indicates that membrane-surface concentration increases rapidly when J is large or when k is small.

The ratio Cm/Cb is often called the concentration polarization factor.

Note : The exponential form is extremely sensitive to J/k, so a small change in crossflow velocity that changes k can produce a large change in predicted Cm and therefore a large change in predicted flux.

4.2 Estimating osmotic pressure from concentration

For dilute electrolytes, a practical first estimate is the van’t Hoff form.

π(C) = i * R * T * C. R = 0.08314 L·bar/(mol·K) when C is in mol/L. i is the van’t Hoff factor, such as i ≈ 2 for NaCl in a first estimate.

For higher salinity or strong non-ideality, replace π(C) with an activity-based or empirical osmotic pressure correlation that matches your feed chemistry.

5. Reverse osmosis and nanofiltration flux calculation with concentration polarization

5.1 Water-flux equation using membrane-surface osmotic pressure

A practical pressure-driven model for reverse osmosis and many nanofiltration cases is shown below.

J = A * (ΔP - Δπ_m). Δπ_m = π(C_m) - π(C_p).

Because Cm depends on J through the concentration polarization equation, the flux must be solved as a nonlinear problem.

5.2 Recommended solution workflow for engineering calculations

The following fixed-point workflow is robust and easy to implement in a spreadsheet or script.

Step Action Engineering details
1. Choose consistent units for J and k. Use m/s for J and k, and m/s/bar for A.
2. Initialize flux J0. Use J0 = A(ΔP − (π(Cb) − π(Cp))).
3. Update membrane-surface concentration. Cm = Cp + (Cb − Cp) exp(J/k).
4. Compute Δπm using Cm. Δπm = π(Cm) − π(Cp).
5. Update flux. Jnew = A(ΔP − Δπm).
6. Relax and iterate until convergence. Use J = 0.5 J + 0.5 Jnew and stop when |Jnew − J| is sufficiently small.

5.3 Worked example with explicit numbers

This example demonstrates a reverse osmosis flux calculation with concentration polarization using film theory and van’t Hoff osmotic pressure.

Assume NaCl feed at 25°C with bulk concentration 2000 mg/L, permeate concentration 50 mg/L, applied transmembrane pressure difference 20 bar, mass transfer coefficient k = 1.2×10−5 m/s, and water permeability A = 1.5 LMH/bar.

Convert A to m/s/bar using 1 LMH = 2.7777778×10−7 m/s, giving A = 1.5×2.7777778×10−7 = 4.1666667×10−7 m/s/bar.

Convert concentrations to mol/L using NaCl molecular weight 58.44 g/mol, giving Cb ≈ 0.034 mol/L and Cp ≈ 0.00085 mol/L.

Use i = 2 and R = 0.08314 L·bar/(mol·K) and T = 298 K for π(C).

Solving the coupled equations gives a converged flux of about 25.55 LMH and a membrane-surface concentration of about 3550 mg/L.

The concentration polarization factor is about Cm/Cb = 3550/2000 ≈ 1.78, and the effective osmotic pressure difference across the membrane is increased compared to the bulk-based estimate.

Given: T = 298 K. R = 0.08314 L·bar/(mol·K). i = 2. Cb = 0.034 mol/L. (≈ 2000 mg/L as NaCl). Cp = 0.00085 mol/L. (≈ 50 mg/L as NaCl). ΔP = 20 bar. k = 1.2e-5 m/s. A = 1.5 LMH/bar = 4.1666667e-7 m/s/bar. Equations: Cm = Cp + (Cb - Cp) * exp(J/k). π(C) = i * R * T * C. J = A * (ΔP - (π(Cm) - π(Cp))). Result: J ≈ 25.55 LMH. Cm ≈ 0.0607 mol/L ≈ 3550 mg/L as NaCl.
Note : If your calculated J becomes negative, it indicates ΔP is not sufficient to overcome the osmotic pressure difference at the membrane surface under the assumed k and Cb, which is a physically meaningful outcome for high salinity or low pressure.

6. Ultrafiltration limiting flux with gel polarization model

6.1 Gel polarization limiting flux equation

For many ultrafiltration systems with macromolecules or colloids, flux may approach a limiting value when the membrane-surface concentration reaches a gel concentration Cg.

The classic gel polarization expression is shown below.

J_lim = k * ln(C_g / C_b).

In this model, increasing pressure above a certain point does not significantly increase flux because the boundary-layer transport sets the limiting rate.

6.2 Practical parameter selection

The mass transfer coefficient k is still determined by hydrodynamics and solute diffusivity, and Cg is treated as a solute-specific parameter that is commonly estimated from data.

If you have flux measurements at multiple bulk concentrations under the same hydrodynamic conditions, you can fit Cg by plotting J versus ln(1/Cb) and extracting the intercept behavior implied by the model.

6.3 Quick example for gel polarization flux

Assume k = 6×10−6 m/s, bulk concentration Cb = 10 g/L, and gel concentration Cg = 100 g/L.

The limiting flux is then J = k ln(100/10) = k ln(10) ≈ 6×10−6×2.3026 = 1.3816×10−5 m/s, which is about 49.7 LMH.

k = 6e-6 m/s. Cb = 10 g/L. Cg = 100 g/L.
J = k * ln(Cg/Cb) = 6e-6 * ln(10) = 1.3816e-5 m/s.
J in LMH = (1.3816e-5) / (2.7777778e-7) = 49.7 LMH.

7. How to estimate the mass transfer coefficient k in concentration polarization models

7.1 Relationship between k, Sherwood number, and diffusivity

In many module geometries, k is estimated using a Sherwood number correlation that relates convective mass transfer to Reynolds and Schmidt numbers.

Sh = k * d_h / D. Re = ρ * u * d_h / μ. Sc = μ / (ρ * D).

Here dh is a hydraulic diameter, u is a characteristic velocity, D is solute diffusivity, ρ is density, and μ is viscosity.

7.2 Practical guidance for using correlations

Use a correlation that matches your geometry, such as flat-sheet channels, spacer-filled channels, hollow fibers, or tubular modules.

If you do not have a geometry-specific correlation, treat k as an effective fitted parameter using a small set of measured flux and rejection data at known hydrodynamic conditions, then validate by predicting flux at a different crossflow rate.

Note : In spacer-filled channels, the effective k can vary strongly along the length due to concentration increase and viscosity change, so using a single k is best viewed as a module-average approximation unless you are building a spatially resolved model.

8. Implementation checklist for reliable membrane flux prediction

Item What to verify Common mistake Practical fix
Units. J and k in the same units in exp(J/k). Using LMH for J and m/s for k. Convert LMH to m/s before evaluating exp(J/k).
Osmotic pressure model. π(C) matches solute type and salinity range. Applying van’t Hoff at very high ionic strength without adjustment. Use an empirical π correlation or activity-based approach for high salinity.
Permeate concentration. Cp is consistent with rejection and operating conditions. Assuming Cp = 0 for partial rejection systems. Use measured Cp or estimate from observed rejection.
Pressure drop. ΔP is the local driving force, not just inlet gauge pressure. Ignoring feed-channel pressure drop in long modules. Use average ΔP or segment the module.
Temperature. A, D, μ, and π depend on temperature. Using 25°C properties for warm or cold operation. Adjust A and transport properties to operating temperature.
Convergence. Nonlinear solver is stable for your parameter range. Divergence when exp(J/k) is large. Use relaxation or a bounded root-finding method.

9. Reusable calculation template for spreadsheets and scripts

The following template is designed to be copied into a calculation note, spreadsheet, or script with minimal modification.

Inputs: Cb, Cp, ΔP, A, k, T, and an osmotic pressure function π(C).
Step 1:
Convert A to m/s/bar if A is provided in LMH/bar.
Convert J units so J and k are consistent.

Step 2:
Initialize J using bulk osmotic pressure:
J0 = A * (ΔP - (π(Cb) - π(Cp))).

Step 3:
Iterate:
Cm = Cp + (Cb - Cp) * exp(J/k).
Δπm = π(Cm) - π(Cp).
Jnew = A * (ΔP - Δπm).
J = α * J + (1 - α) * Jnew, with α around 0.3 to 0.7 for stability.
Stop when |Jnew - J| is below a tolerance.

Outputs:
Flux J, membrane-surface concentration Cm, and polarization factor Cm/Cb.

FAQ

How do I decide whether to use the osmotic pressure model or the gel polarization model.

Use the osmotic pressure model when the rejected solute creates a meaningful osmotic pressure difference that reduces water flux, which is typical in reverse osmosis and many nanofiltration cases.

Use the gel polarization limiting flux model when flux plateaus with increasing pressure and the system behavior indicates a surface concentration constraint, which is common in ultrafiltration of macromolecules and colloids.

How can I estimate k when I do not trust a Sherwood correlation.

Estimate k by fitting the concentration polarization model to measured flux and permeate concentration data at fixed hydrodynamic conditions, then validate the fitted k by predicting flux at a different crossflow velocity.

This approach yields an effective k that includes spacer and module effects that are difficult to capture in a single correlation.

Why does my iteration diverge when I include exp(J/k).

Divergence usually occurs when J/k becomes large, making the exponential term extremely sensitive to small numerical changes.

Use relaxation, cap the maximum allowed change in J per iteration, or switch to a root-finding method that brackets the solution.

What concentration should be used for osmotic pressure in the flux equation.

Use the membrane-surface concentration on the feed side, Cm, because that is the concentration that determines the local osmotic pressure opposing permeation at the membrane interface.

Using the bulk concentration Cb systematically underestimates the osmotic pressure term whenever concentration polarization is present.

How should I handle multi-solute feeds in a concentration polarization flux calculation.

Compute concentration polarization for each solute or for an appropriately defined total osmotic pressure using a mixture model, then evaluate π as a function of the membrane-surface composition.

In engineering practice, a first-pass method is to compute total osmotic pressure from measured or modeled water activity and use that in Δπm, while still using film theory to relate bulk and surface concentrations.

: