Darcy-Forchheimer Porous Media Coefficients Calculator
Darcy–Forchheimer Porous Media Coefficients Calculator
Turn a measured pressure-drop curve into the viscous and inertial resistance coefficients your solver asks for: a closed-form least-squares fit of Δp/L = a·v + b·v² over up to five points, α, 1/α and C₂ in the units Fluent, OpenFOAM and Star-CCM+ want, the name of the box each goes in, and an honest statement of whether your data determined them at all. Plus the perforated-plate case from open-area ratio.
Darcy–Forchheimer coefficients from measured pressure drop
A 24 mm heat-exchanger core on an air bench: 5.9, 14.3, 26.4, 40.4 and 58.3 Pa at 1, 2, 3, 4 and 5 m/s face velocity, air at 20 °C
The model, the closed-form fit, and which box each number goes in
- v
- SUPERFICIAL velocity — volumetric flow divided by the whole frontal area, solid included. Both α and C₂ are defined against it, and using the interstitial velocity instead gets both wrong by a factor of the porosity
- α
- permeability, m². A property of the medium alone, not of the fluid. Fluent, CFX and OpenFOAM all want its reciprocal rather than α itself
- 1/α
- viscous resistance, 1/m². This is the number Fluent’s Viscous Resistance box asks for, and OpenFOAM’s d in the DarcyForchheimer source
- C₂
- inertial resistance factor, 1/m. A loss coefficient per unit thickness. This is Fluent’s Inertial Resistance and OpenFOAM’s f, which are the same quantity with the same definition
- a, b
- the raw coefficients of the quadratic in superficial velocity, in Pa·s/m² and Pa·s²/m³ — equivalently kg/(m³·s) and kg/m⁴. Star-CCM+’s porous viscous and inertial resistances are these two directly; check your version’s units and whether it wants superficial or interstitial velocity
- L
- sample thickness along the flow. α and C₂ are per unit length, so dividing by L is not optional. Omitting it scales both coefficients by L, and for a 24 mm core that is a factor of 42
- K
- loss coefficient of a perforated plate on the approach velocity, Δp = K·½ρv². Converted to a porous zone as C₂ = K/t
- β
- open-area ratio of the plate: hole area over total area. 0.9069(d/p)² for round holes on a triangular pitch, 0.7854(d/p)² on a square pitch
- C_c
- contraction coefficient of the jet through a hole. 1 if the jet reattaches inside a thick hole; 1/(1 + 0.707(1−β)^0.375) for a thin sharp-edged plate, which reproduces Idelchik’s empirical form exactly
Worked example
A 24 mm heat-exchanger core on an air bench: 5.9, 14.3, 26.4, 40.4 and 58.3 Pa at 1, 2, 3, 4 and 5 m/s face velocity, air at 20 °C
FIRST divide by the thickness, because α and C₂ are per unit length. Δp/L = 5.9/0.024 = 245.83, 595.83, 1100.0, 1683.3 and 2429.2 Pa/m. Skipping this step is the commonest error on this page and it scales both coefficients by 0.024 — a factor of 42 in the wrong direction, and the solver will not complain
The sums, written out: S₂ = Σv² = 55, S₃ = Σv³ = 225, S₄ = Σv⁴ = 979, T₁ = Σ(Δp/L)v = 23,616.67 and T₂ = Σ(Δp/L)v² = 100,191.67. The determinant is S₂S₄ − S₃² = 55 × 979 − 225² = 3,220, and a = (T₁S₄ − T₂S₃)/3220 = 179.376 Pa·s/m², b = (T₂S₂ − T₁S₃)/3220 = 61.115 Pa·s²/m³. No iteration anywhere: two sums, two multiplications and a determinant
Now the solver numbers. With air at 20 °C, μ = ν·ρ = 1.516×10⁻⁵ × 1.204 = 1.8253×10⁻⁵ Pa·s and ρ = 1.204 kg/m³. 1/α = a/μ = 179.376/1.8253×10⁻⁵ = 9,827,000 1/m², so α = 1.0176×10⁻⁷ m² (1.031×10⁵ darcy, or 103 mD × 10⁶ — permeabilities this large are far outside the rock-physics range the darcy was invented for), and C₂ = 2b/ρ = 2 × 61.115/1.204 = 101.52 1/m. Those two numbers go into Fluent's Viscous Resistance and Inertial Resistance boxes, and into OpenFOAM's d and f in a DarcyForchheimer porosity source, unchanged
WHICH TERM DOMINATES, which is the question the model exists to answer. At 3 m/s the Darcy term is 179.376 × 3 = 538.1 Pa/m and the Forchheimer term is 61.115 × 9 = 550.0 Pa/m, so the inertial share is 50.5 per cent and both terms are genuinely needed. At 1 m/s the split is 74.6 per cent viscous, and at 10 m/s it is 77.3 per cent inertial. A medium is not "Darcy" or "Forchheimer" — an operating point is
THE FIT QUALITY, which is what tells you whether to believe any of it. R² = 0.99987 and the largest residual is 2.17 per cent of the measured pressure drop at that point. That is a clean fit. Now switch the fit method to the equal-weight one and it gives a = 182.54, 1/α = 10,000,800 1/m² and C₂ = 100.15, with R² = 0.99986. The two fits differ by 1.8 per cent in 1/α and 1.4 per cent in C₂, and that spread is a fairer estimate of the uncertainty in the coefficients than either R² is. These data were in fact generated from 1/α = 10,000,000 and C₂ = 100.00 and then rounded to 0.1 Pa, so the equal-weight fit is the one that recovered the truth here — which is what the measurements on synthetic noisy data say it should do
THE CROSS-CHECK THAT SAYS WHAT THIS MEDIUM IS NOT. If the core were a packed bed at 40 per cent porosity, Ergun's equation would tie both coefficients to one particle diameter: d_p = √(150α(1−ε)²/ε³) = 9.27 mm from the permeability, and d_p = 3.5(1−ε)/(ε³C₂) = 323 mm from C₂. The two disagree by a factor of 35, so the core is emphatically not a packed bed — it has far more inertial loss for its permeability than granular packing does, which is exactly what louvred fins are for. Useful negative information: do not reach for Ergun to fill in a coefficient you did not measure
AND A WARNING FROM THE SOLVER'S OWN MANUAL. The Fluent User's Guide demonstrates this procedure on four points — 28.4, 487, 1432 and 2964 Pa at 20, 50, 80 and 110 m/s — and quotes the trendline Δp = 0.28296v² − 4.33539v, giving C₂ = 0.462 and 1/α = −242,282 1/m². Two things about that. The viscous resistance is NEGATIVE, which the manual itself flags, and the reason is that a pure quadratic through those four points already gives R² = 0.9938, so the linear term is fitting six parts in a thousand of the variance and carries almost no information. And the coefficients are not the least-squares fit of those four points: refitting them here by unweighted least squares gives −4.94333 and 0.28912, i.e. 1/α = −276,256 and C₂ = 0.472. The manual's numbers match a fit of Δp/v against v (−4.358 and 0.28245) much more closely, which is the equal-weight method offered above. So the published example differs from its own table's least-squares fit by 14 per cent in the viscous coefficient, and the same four points give three different answers depending on how you fit them. That is the honest state of this calculation, and it is the reason this page prints the fit quality and offers both fits instead of a single confident number
Which box each number goes in
| Solver | Field name | Give it | Units | Verified from |
|---|---|---|---|---|
| ANSYS Fluent, porous cell zone | Viscous Resistance | 1/α | 1/m² | Fluent User’s Guide, S_i = −(μ/α·v_i + C₂·½ρ|v|v_i) |
| ANSYS Fluent, porous cell zone | Inertial Resistance | C₂ | 1/m | same equation, same guide |
| ANSYS Fluent, porous jump BC | Face permeability α, thickness Δm, pressure-jump coefficient C₂ | α, L, C₂ | m², m, 1/m | Fluent User’s Guide, porous jump as a 1-D porous medium |
| OpenFOAM, DarcyForchheimer | d | 1/α | 1/m² | source header: S = −(μd + (ρ|U|/2)f)U, d in 1/m² |
| OpenFOAM, DarcyForchheimer | f | C₂ | 1/m | same header, f in 1/m; the leading ½ is in the code |
| Star-CCM+ / CFX style, quadratic in v | porous viscous and inertial resistance | a and b directly | kg/(m³·s) and kg/m⁴ | dimensional identity: a = μ/α is kg/(m³·s), b = ½ρC₂ is kg/m⁴ |
| A thin-baffle or screen BC of any flavour | loss coefficient K | K = C₂·t | dimensionless | Δp = K·½ρv² by definition of K |
What your data can and cannot determine
| Inertial share at your highest test velocity | Expected error in 1/α | Expected error in C₂ | Chance of a negative coefficient | What to do |
|---|---|---|---|---|
| under 1 % | 1 to 2 × the scatter | hopeless — 10× the scatter or worse | about 50 % | set C₂ = 0, use pure Darcy, say so |
| about 5 % | 1 to 2 × the scatter | about 25 × the scatter | 10 to 20 % | add faster points or accept pure Darcy |
| about 13 % | 1.2 × the scatter | 11 × the scatter | a few per cent | usable for C₂ to within a factor |
| about 40 % | 1 × the scatter | 2 to 3 × the scatter | negligible | both coefficients sound |
| over 95 % | poor — the viscous term is invisible | 1 to 2 × the scatter | about 50 % for 1/α | add points a fifth of your lowest velocity |
Perforated plates: the two limits, and how far apart they are
| Open-area ratio β | Sharp-edged thin plate, K | Reattached thick plate, K | Ratio | Contraction coefficient implied |
|---|---|---|---|---|
| 0.05 | 1080.5 | 361.0 | 3.0 | 0.5905 |
| 0.10 | 249.5 | 81.0 | 3.1 | 0.5954 |
| 0.20 | 52.58 | 16.00 | 3.3 | 0.6060 |
| 0.30 | 19.32 | 5.444 | 3.5 | 0.6179 |
| 0.40 | 8.758 | 2.250 | 3.9 | 0.6314 |
| 0.50 | 4.370 | 1.000 | 4.4 | 0.6472 |
| 0.70 | 1.148 | 0.1837 | 6.2 | 0.6896 |
| 0.90 | 0.1955 | 0.01235 | 15.8 | 0.7703 |
Fitting the two coefficients, and why R² does not tell you whether to trust them
Two numbers, and everybody gets one of them wrong. Every solver represents a porous region the same way: Δp/L = (μ/α)v + C₂·½ρv², a term linear in velocity for viscous drag on the pore walls and a term quadratic in velocity for the form drag and jet losses that dominate once the pore Reynolds number is past about 1. To use it you need the permeability α and the inertial resistance factor C₂, and what you actually have is a pressure-drop curve from a bench or a manufacturer’s datasheet. This page does the fit in closed form, prints both coefficients in the units every major solver asks for, names the box each one goes in, and — the part that matters — tells you whether your data actually determined them.
The three errors, in order of frequency. The first is forgetting to divide by the sample thickness. α and C₂ are per-unit-length quantities; if you fit Δp instead of Δp/L you scale both coefficients by the thickness, which for a 24 mm core is a factor of 42, and nothing in the solver will tell you. The second is using the interstitial velocity instead of the superficial one. Both coefficients are defined against the superficial velocity — volumetric flow divided by the whole frontal area, solid included — and swapping them scales α by the porosity and C₂ by its square. The third is fitting data taken in air and then using the coefficients as though they were properties of the medium measured in water: they are properties of the medium, but you extracted them by dividing out a particular μ and ρ, so the fluid the TEST ran in is the one to enter above.
Why the fit is fixed at five points, and why a blank row costs nothing. The expression language behind this page has no loops, so the number of data rows has to be fixed and the normal equations written out term by term. Five rows is enough for real bench data and the sums are short: a = (T₁S₄ − T₂S₃)/(S₂S₄ − S₃²) and b = (T₂S₂ − T₁S₃)/(S₂S₄ − S₃²), with Sk = Σvk and the two cross-sums T₁ = Σ(Δp/L)v and T₂ = Σ(Δp/L)v². There is a pleasant accident in the algebra: every term of every one of those sums carries at least one factor of v, so a row entered with zero velocity contributes exactly nothing. Setting a velocity to zero does not approximately remove a point, it removes it algebraically. The point count, R² and the residuals are masked as well, so they count only the rows you used.
Two fits, because the standard one is not the better one. The fit every textbook and every solver manual describes is unweighted least squares on Δp/L against v, which is also what a spreadsheet trendline with the intercept forced to zero gives you. It has a known weakness: the residuals it minimises are absolute, so the highest-velocity point — where Δp is largest — dominates the fit, and the viscous coefficient, which is only visible at the low end, is fitted almost as an afterthought. The alternative is to divide through by v first and fit (Δp/L)/v = a + bv, an ordinary straight line that gives every point equal weight and is equally closed-form. Which is better is a measurable question, so: synthetic Darcy–Forchheimer data at five velocities were perturbed with proportional Gaussian noise and refitted 4,000 times at each of several noise levels. The equal-weight fit recovers the permeability 1.5 to 3 times more accurately at every noise level tested, recovers C₂ about 1.4 times more accurately, and roughly halves the chance of returning a negative coefficient. Both are offered; the unweighted one is the default because it is the one a reviewer will reproduce, and the gap between the two is a better uncertainty estimate than either R².
R² tells you about the curve, not about the coefficients, and the difference is enormous. This is the single most useful thing on the page. A five-point Darcy–Forchheimer fit can have R² = 0.9999 and a coefficient that is wrong by a factor of two, and the reason is structural rather than statistical: if one of the two terms accounts for only a few per cent of the pressure drop anywhere in your data, then the data contain almost no information about that term’s coefficient, and the fit will put it wherever the scatter pushes it while still passing beautifully through every point. The measured rule is simple enough to remember: the relative error in a coefficient is roughly your measurement scatter divided by that term’s share of the pressure drop. Two per cent scatter and a five per cent inertial share means C₂ is uncertain by about half its own value, and about one such fit in six returns a negative C₂ outright. This page prints the inertial share at your highest test velocity for exactly this reason, and the band above the result says plainly when a coefficient is not determined.
The Fluent manual’s own example fails this test, which is worth knowing before you copy it. The Fluent User’s Guide demonstrates the procedure on four points at 20, 50, 80 and 110 m/s and arrives at 1/α = −242,282 1/m² — a negative viscous resistance, which it flags and tells you to avoid. The cause is visible from the data: a pure quadratic through those four points, with no linear term at all, already reaches R² = 0.9938, and adding the linear term takes it only to 0.9998. The viscous coefficient is fitting the last six parts in a thousand of the variance, so its value is scatter and its sign is a coin toss. There is a second thing worth noticing. Refit those same four points here by unweighted least squares and you get a = −4.94333 and b = 0.28912, not the manual’s −4.33539 and 0.28296 — a 14 per cent difference in the viscous coefficient. The manual’s pair matches a fit of Δp/v against v (−4.358 and 0.28245) to within 0.6 per cent, so the published example used the equal-weight method without saying so. Three answers from four points, depending on how you fit them. That is not a criticism of the manual; it is the reason a page like this should show the fit quality and offer both fits rather than hand you one confident number.
Perforated plates and screens, where there is no curve to fit. A thin plate has essentially no viscous resistance: the loss is form drag on the jets issuing from the holes, so α is effectively infinite and all the resistance is inertial. The loss coefficient follows from a two-step argument that needs no empiricism at all — the flow accelerates into a vena contracta of area CcβA, then suffers a Borda–Carnot sudden-expansion loss of ½ρ(vvc − v)² on the way back out, which gives K = (1/(Ccβ) − 1)² on the approach velocity. Setting Cc = 1 is the thick-plate limit where the jet reattaches inside the hole. And here is the result that makes the section worth having: Idelchik’s published empirical form for a thin sharp-edged perforated plate, ζ = (0.707(1−β)0.375 + 1 − β)²/β², is exactly algebraically identical to that same Borda–Carnot expression with Cc = 1/(1 + 0.707(1−β)0.375). Not approximately: identically. So the handbook correlation is the elementary derivation in disguise, with a contraction coefficient that rises from 0.590 for an isolated small hole to 0.770 as the holes take over the plate — physically the right direction, and the isolated-hole limit 1/(1+1/√2) = 0.5858 sits close to the classical free-streamline value of 0.611. Convert to a solver input with C₂ = K/t, or better, use a porous-jump or thin-baffle boundary condition and give it K directly.
Ergun as a cross-check, never as a substitute. If your medium really is a packed bed, Ergun’s equation ties both coefficients to one particle diameter and one porosity: α = dp²ε³/(150(1−ε)²) and C₂ = 3.5(1−ε)/(ε³dp). This page inverts both and prints the two equivalent particle diameters. If they agree, your medium behaves like granular packing and you can extrapolate with some confidence. If they disagree by a large factor — 35 in the worked example above — it does not, and that is useful negative information rather than an error: a louvred-fin core, a wire-mesh screen or a perforated plate all produce far more inertial loss for their permeability than packing does. The wrong conclusion to draw is that one coefficient must be wrong; the right one is that you cannot use Ergun to fill in a coefficient you did not measure.
What to check in the model afterwards. Three things, in this order. That the porous zone thickness in your mesh equals the sample thickness you fitted with, because the coefficients are per unit length and this error survives every other check. That the direction is right: a real core is strongly anisotropic and the resistance across the fins is often a hundred times the resistance along them, so a single isotropic pair of coefficients models a core only if the flow is normal to the face. And that the velocity in the zone is near the range you fitted over, which you can read off the plot above. If your case runs at a velocity outside the data, you are extrapolating a two-parameter fit, which is usually safe upward and unreliable downward. For the approach flow itself, the pipe friction and pressure drop calculator gives the duct term this one does not, and the hydraulic diameter calculator handles the passage geometry if you want a Reynolds number for the pores rather than for the face.
Frequently asked questions
Fluent wants 1/α and C₂ — which of my numbers are those?
The first two rows of the result. Fluent’s porous cell zone states its source term as S_i = −(μ/α·v_i + C₂·½ρ|v|v_i), so its Viscous Resistance box takes 1/α in 1/m² and its Inertial Resistance box takes C₂ in 1/m, exactly as printed. OpenFOAM’s DarcyForchheimer source is S = −(μd + (ρ|U|/2)f)U with d in 1/m² and f in 1/m, which are numerically the same two numbers — you can move a set of coefficients between Fluent and OpenFOAM with no conversion at all. If your solver instead asks for two coefficients of a quadratic in velocity with units kg/(m³·s) and kg/m⁴, those are the a and b rows.
My fit gives a negative viscous resistance. What do I do?
Do not use it, and do not clamp it to zero without understanding why it came out negative. The usual cause is that all your test velocities are high enough that the flow is almost entirely inertial, so the data carry no information about the viscous term and the fit puts it wherever the scatter pushes it. Look at the inertial share printed above: if it is over about 95 per cent at your highest velocity, that is the diagnosis. The fix is data, not arithmetic — add points at a fifth to a tenth of your current lowest velocity. Meanwhile, try the equal-weight fit, which halves the incidence of a negative coefficient; and if you only need the model at high velocity, setting 1/α to zero and using C₂ alone is defensible and will reproduce your curve there.
Superficial or interstitial velocity?
Superficial, everywhere: volumetric flow divided by the whole frontal area, with the solid included. Both α and C₂ are defined against it, all three major solvers use it for their porous inputs by default, and it is what a bench measures. The interstitial (pore) velocity is the superficial velocity divided by the porosity, so at 40 per cent porosity it is 2.5 times larger. Using it by mistake scales your permeability by the porosity and C₂ by its square — at ε = 0.4 that is a factor of 2.5 and 6.25. Some solvers offer a physical-velocity formulation as an option; if you turn it on, the coefficients change meaning and this page’s output is no longer what you want.
How many points do I need, and where should they be?
Two is the algebraic minimum and it tells you nothing about the fit, because two points and two unknowns always fit exactly. Three is the minimum for a meaningful residual, five is comfortable. Where they sit matters far more than how many there are: you need at least one point low enough that the viscous term is a visible fraction of the pressure drop, and at least one high enough that the inertial term is. A geometric spread — say 0.2, 0.5, 1.2, 3 and 7 m/s — does much more for the coefficients than five points evenly spaced near the top of the range, because the information about each coefficient lives at opposite ends of the curve.
Why is my R² almost 1 when the page says a coefficient is not determined?
Because R² measures how well the curve passes through the points, and the coefficient uncertainty measures something else entirely. If the inertial term is 3 per cent of the pressure drop everywhere in your data, then doubling C₂ changes the predicted curve by 3 per cent — which is inside your scatter, so the fit is nearly as good either way and R² barely moves. The curve is well determined; the split between the two terms is not. Measured on synthetic data, the relative error in a coefficient runs at roughly the measurement scatter divided by that term’s share of the pressure drop, so the inertial share printed above is a far better guide to whether you can trust C₂ than R² is.
Can I get the coefficients from a manufacturer’s curve instead of my own test?
Usually yes, and check three things first. What velocity is the abscissa — face velocity, or flow rate, or flow per unit frontal area, and in what units? What fluid and what temperature, because the coefficients are extracted by dividing out μ and ρ? And does the quoted pressure drop include the housing, the face contraction and any ducting, or is it the core alone? A curve that includes the housing fitted as though it were the core gives a medium that is too resistive, and the error appears as an unphysically small permeability. Read four or five points off the curve at a geometric spread of velocities and put them in above.
Should I use a porous cell zone or a porous jump?
For a genuinely thick medium — a catalyst bed, a filter block, a heat-exchanger core you want to put heat into — use the cell zone, because you need the volume. For anything thin compared with the cells around it — a screen, a perforated plate, a mesh, a thin baffle — use the porous jump or thin-baffle boundary condition. Fluent’s own guide recommends the jump wherever it is possible, on the grounds that it is more robust and converges better, and the reason is mechanical: a cell zone two cells thick resolves the pressure gradient inside it badly, whereas a jump imposes the loss on a face with no internal gradient to resolve at all.
What porosity should I enter, and does it change the pressure drop?
Not the steady pressure drop, no. With the superficial-velocity formulation the two resistance coefficients determine the pressure drop entirely, and the porosity affects the storage terms: the transient response, the residence time, the thermal mass and the energy equation. Enter the real void fraction anyway, because your solver will use it for those, and because this page uses it for the Ergun cross-check and the interstitial-velocity conversion. Typical values: 0.36 to 0.43 for randomly packed spheres, 0.4 as a default, 0.7 to 0.95 for metal foams and fibrous media, and for a fin core the ratio of free-flow area to frontal area, which is often 0.6 to 0.8.
My core is anisotropic. Can I still use these numbers?
Only for flow normal to the face, which is what you measured. A finned or louvred core can be a hundred times more resistive across the fins than along them, and every solver lets you give a directional resistance tensor for exactly that reason: three viscous and three inertial coefficients on principal axes. Put the fitted pair on the through-flow direction, and make the transverse directions much larger — a factor of 100 to 1000 is the usual way to force the flow to stay axial — rather than leaving them equal, which lets flow cross the core sideways with no penalty and is a common and quiet source of wrong results.
The two Ergun particle diameters disagree wildly. Is something wrong?
Almost certainly not. Ergun’s constants 150 and 1.75 are calibrated for granular packing, and a heat-exchanger core, a wire mesh or a perforated plate is not granular packing — it generates much more inertial loss for its permeability, so the C₂-implied diameter comes out far larger than the α-implied one. That disagreement is the cross-check working: it tells you the medium is not a packed bed and that you must not use Ergun to estimate a coefficient you did not measure. If you genuinely have a packed bed and the two still disagree by more than a factor of about two, then suspect the porosity first — Ergun’s α goes as ε³/(1−ε)², so at ε = 0.4 a 10 per cent error in porosity is a 53 per cent error in permeability.
Related calculators
References
- ANSYS Fluent User’s Guide, porous media conditions. The source of the model form used here: the momentum sink is S_i = −(ΣD_ij μv_j + ΣC_ij ½ρ|v|v_j), which for a homogeneous isotropic medium reduces to S_i = −(μ/α v_i + C₂ ½ρ|v|v_i), with the viscous resistance 1/α in m⁻² and the inertial resistance C₂ in m⁻¹ described as a loss coefficient per unit length. The guide also states that the porous jump boundary condition is a one-dimensional simplification of the same model and should be preferred where possible for robustness. Cited, not reproduced.
- The worked example in that same guide — 28.4, 487.0, 1432.0 and 2964.0 Pa at 20, 50, 80 and 110 m/s, ρ = 1.225 kg/m³, μ = 1.7894×10⁻⁵ Pa·s, Δn = 1 m, quoted trendline Δp = 0.28296v² − 4.33539v giving C₂ = 0.462 and 1/α = −242,282 m⁻² — was used here as an independent test of this page’s closed-form fit, and the result is a finding rather than a confirmation. Unweighted least squares on those four points gives a = −4.94333 and b = 0.28912 (checked against an independent SVD least-squares solve, agreeing to eleven significant figures), hence 1/α = −276,256 and C₂ = 0.4720. The guide’s quoted pair is 14 per cent away from that in the viscous coefficient. It matches a least-squares fit of Δp/v against v (−4.35818 and 0.28245) to within 0.6 per cent, so the published trendline is the equal-weight fit rather than the unweighted one. Both fits are offered on this page and the difference is printed.
- OpenFOAM,
DarcyForchheimer.HandDarcyForchheimer.Cin the porosity models. The header states the source as S = −(μd + (ρ|U|/2)f)U with d the Darcy coefficient in 1/m² and f the Forchheimer coefficient in 1/m, and the implementation carries the comment “leading 0.5 is from 1/2*rho” beside the line that halves f. Read directly from the published source rather than from secondary descriptions, because it establishes the one thing a user needs: OpenFOAM’s d and f are numerically identical to Fluent’s viscous and inertial resistances, so coefficients transfer between the two solvers unchanged. - S. Ergun, Fluid Flow through Packed Columns, Chemical Engineering Progress 48 (1952), 89–94, for Δp/L = 150μ(1−ε)²v/(ε³d_p²) + 1.75ρ(1−ε)v²/(ε³d_p). Inverted here into the two equivalent particle diameters printed as a cross-check: d_p = √(150α(1−ε)²/ε³) from the permeability, and d_p = 3.5(1−ε)/(ε³C₂) from the inertial factor, the second following from C₂ = 2b/ρ with b = 1.75ρ(1−ε)/(ε³d_p). Used only as a consistency check on a fitted pair, never to supply a coefficient. Cited, not reproduced.
- I. E. Idel’chik, Handbook of Hydraulic Resistance, for the loss coefficient of a thin sharp-edged perforated plate, ζ = (0.707(1−β)0.375 + 1 − β)²/β² on the approach velocity. Cited and not reproduced as a table, because this page does not need to: the expression was shown here to be algebraically identical to the elementary Borda–Carnot result K = (1/(C_cβ) − 1)² with C_c = 1/(1 + 0.707(1−β)0.375), which is what the calculator evaluates. The identity was verified at β = 0.05 to 0.9 and reproduces Idel’chik’s values exactly (for instance β = 0.3 gives 19.3157 by both routes), and the implied contraction coefficient rises monotonically from 0.5905 to 0.7703, with the isolated-hole limit 1/(1 + 1/√2) = 0.58579 close to the classical free-streamline value π/(π+2) = 0.61101 for a slot.
- L. Borda and L. Carnot’s sudden-expansion loss, ½ρ(v₁ − v₂)², which is classical and derivable from a control-volume momentum balance with no empirical content. Combined with a vena contracta of area C_cβA it gives the whole perforated-plate result on this page, including the thick-plate limit K = (1/β − 1)² at C_c = 1.
- The uncertainty figures quoted on this page and in the second table were generated here by Monte Carlo, not taken from a reference: synthetic Darcy–Forchheimer data at five velocities, perturbed with proportional Gaussian noise at 2, 5 and 10 per cent, refitted 4,000 times at each level by both fit methods, and the median absolute error in each recovered coefficient reported. Three media were covered, spanning inertial shares from under 1 per cent to 38 per cent. The equal-weight fit recovered the permeability 1.5 to 3 times more accurately than the unweighted fit at every level tested, and roughly halved the incidence of a negative coefficient. The rule of thumb that falls out — relative coefficient error ≈ 1.3 × scatter / that term’s share of the pressure drop — fits the measured medians to within about 20 per cent across the cases tested.
- National Institute of Standards and Technology, Special Publication 811, for the unit conversions used: 1 psi = 6 894.757 293 Pa, the conventional inch of water = 2.490 889×10² Pa (0.0254 m × 1000 kg/m³ × 9.80665 m/s² exactly), and 1 ft/min = 0.00508 m/s exactly. The darcy is taken as 9.869233×10⁻¹³ m², its definition from a viscosity of 1 cP, a gradient of 1 atm/cm and a flux of 1 cm/s. A US Government work.
Setup guidance, not validation. Correlations have ranges of validity and cell-count estimates are order-of-magnitude. A converged simulation is not a correct one. Full disclaimer at calcengines.com/disclaimer/
