Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

slurrycalc — slurry concentration and dredge production

English · 中文

Convert a measured slurry density into volume concentration, mass concentration, dry-solids tonnage and in-situ bank volume. Pure Python, no dependencies, unit tested against a published worked example.

Written for dredging and mineral processing, where a density meter's output has to become the number a contract settles on.

python -m slurrycalc --density 1.30 --material "quartz sand" --flow 7000 --seawater
  carrier density   1.025 t/m3
  solids density    2.650 t/m3   (quartz sand, indicative)
  mixture density   1.300 t/m3

  volume conc. Cv   16.92 %
  mass   conc. Cw   34.50 %
  dry solids        3139.2 t/h

  sensitivity       0.01 t/m3 of density error = 3.6 % of production

Or as a library:

from slurrycalc import dry_solids_rate, volume_concentration, WATER_SEA

cv = volume_concentration(rho_m=1.30, rho_s=2.65, rho_w=WATER_SEA)   # 0.1692
tph = dry_solids_rate(flow_m3h=7000, rho_m=1.30, rho_s=2.65, rho_w=WATER_SEA)

The formulas

With rho_m measured, rho_w the carrier, rho_s the solid particles:

Cv = (rho_m - rho_w) / (rho_s - rho_w)          volume fraction
Cw = Cv * rho_s / rho_m                          mass fraction
P  = Q * Cv * rho_s                              dry solids, t/h
Vb = Q * Cv / (1 - n)                            bank volume, m3/h

Full derivation and worked example: https://www.pisonics.com/guides/dredge-production-calculation-density-flow

What actually drives the error

Ranked, because it is rarely what people argue about:

  1. Density measurement error dominates. Differentiating Cv shows it is amplified by 1 / (rho_s - rho_w). On sand at 1.30 t/m³ in seawater, 0.01 t/m³ of density error is about 3.6 % of reported production. production_error_from_density_error() computes this for your case.
  2. Assumed solids density is a silent bias. Everyone writes 2.65 for sand. Clay, silt, mixed spoil and shell content are not 2.65. An assumption 3 % high puts a 3 % bias into every tonne, for the whole job. The SOLIDS table here is indicative only — confirm against your own material.
  3. Entrained air under-reports. Air lowers mixture density, so production reads low during air ingress — the direction that costs the contractor.
  4. Flow measurement, usually the smallest, provided the pipe runs full.

Bank volume is where settlements get argued

bank_volume_rate() needs in-situ porosity n, which is almost always assumed rather than measured. That assumption, not the instrument, is why bank-volume settlements are disputed more often than tonnage ones. If your contract is written in bank cubic metres, agree the porosity figure in advance and in writing.

Tests

python tests/test_slurrycalc.py

The tests pin the published worked example, check the round trip, and assert the sensitivity figure quoted above — so the documentation and the code cannot drift apart silently.

About Pisonics

Pisonics builds inline density and concentration meters for dredging, mining, power and chemical processing. The PS7000 measures slurry density by acoustic impedance across DN50–DN1000 with no radioactive source — see also non-nuclear density meters for dredgers.

MIT licensed.

About

Convert slurry density to volume/mass concentration, dry-solids tonnage and bank volume. For dredging and mineral processing.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages