Particle size estimation

  echo = TRUE,
  warning = FALSE, 
  message = FALSE,
  comment = "# >"






Dispersing solution

Dissolve 40 g of SHMP in 1 L of deionized water. To facilitate complete dissolution, fill a 1 L volumetric flask with about 500 mL of deionized water and add the SHMP step-by-step while stirring the solution with a magnetic stirrer. The solution is stable for at least one month.


Hydrometers are graduated to be read at the bottom of the meniscus. However, readings may need be taken at the top of the meniscus in opaque soil suspensions.

Lower the hydrometer into a 1 L cylinder filled with 125 mL of SHMP solution and 875 mL of deionized water. When stabilized (after about 20 s), record both the reading at the bottom (zero or composite correction factor) and at the top of the meniscus (meniscus correction factor).

Sample pretreatment

If the soil sample contains primarily clay or silt, weigh out 50 g of soil (accuracy ± 0.01 g) in a 500 mL screw bottle (in 3-fold replication). If the sample is sandy, take 100 g each. Add 125 mL SHMP solution to the soil. Agitate the mixture for 16 h (or overnight) in a horizontal shaker.

Completely transfer the soil slurry into the 1 L sedimentation cylinder using a squirt bottle. Fill up to the 1 L mark with deionized water. Cap the cylinder with parafilm (ensure tightness). Agitate the slurry by turning the cylinder upside down and back 30 times during 1 min.


Place the sedimentation cylinder at a bench where it can stand undisturbed for the next 4–6 h.

Insert the hydrometer into the soil solution as soon as possible and take the first reading the latest after 40 s. Measure the temperature of the slurry. Repeat this measurement at 2, 5, 15, 30, 60, 120, 240, and 360 min. In any case, record the exact reading time. The measurements may be reduced to an initial reading after 40 s and a second one after 240 or 360 min (Ashworth et al., 2001). Remove the hydrometer after each measurement, in order not to disturb the sedimentation process, and rinse the hydrometer with deionized water.

If the ambient temperature changes, recalibrate the hydrometer. In case foam obscures the hydrometer reading, use another point on the hydrometer scale as reference and mark its position with a permanent marker on the outside of the glass cylinder. The exact readings may be recorded at the end of the measurement by reinserting the hydrometer at the previous position.

Data recording

The following table may serve as a sample template to record the data

| Sample data | Time [min] | Hydrometer reading | Correction | Temperature [°C] | | :---------- | ---------: | -----------------: | ---------: | ---------------: | | S1 | 0.66 | 39 | 2 | 23 | | S1 | 2.00 | 33 | 2 | 23 | | S1 | 5.00 | 29 | 2 | 23 | | S1 | 15.00 | 23 | 2 | 23 | | S1 | 30.00 | 22 | 2 | 23 | | S1 | 60.00 | 20 | 2 | 23 | | S1 | ... | ... | ... | ... | | S2 | ... | ... | ... | ... |

Data evaluation

A complete description of how to calculate the particle size distribution from the recorded hydrometer readings is available in the respective ASTM guideline (ASTM D422-63, 2007). The algorithm has also been implemented into this package using the texture() function.

After loading envalysis, the texture() function is applied to the clayloam sample data set coming with this package.



tex <- texture(reading ~ blank + time + temperature, data = clayloam)


Further soil classification and plotting may be performed using the soiltexture package.


For that, the soil texture data needs to be converted into a special data.frame.

germansoil <- as_tridata(tex, which = "din")
ussoil <- as_tridata(tex, which = "usda")

Now, texture classes are determined, for example, in accordance with the German "Bodenartendiagramm" (DE.BK94.TT) or USDA (USDA.TT)., class.sys = "DE.BK94.TT"), class.sys = "USDA.TT")

The analyzed soil is a clay loam (German: "Toniger Lehm", Lt2), which may be plotted as follows.

par(cex = 0.75, cex.lab = 0.5, cex.axis = 0.5, cex.main = 1)
TT.plot(class.sys = "DE.BK94.TT", = germansoil)

For further details, see the soiltexture package vignette on CRAN.


Ashworth, J., Keyes, D., Kirk, R., & Lessard, R. (2001). Standard Procedure in the Hydrometer Method for Particle Size Analysis. Communications in Soil Science and Plant Analysis 32, 633-642. DOI: 10.1081/CSS-100103897.

ASTM D422-63 (2007). Standard Test Method for Particle-Size Analysis of Soils. Technical standard. ASTM International, West Conshohocken, PA.

Bouyoucos, G.J. (1927). The hydrometer as a new method for the mechanical analysis of soils. Soil Science 23, 343–354.

Moeys, J., Shangguan, W., Petzold, R., Minasny, B., Rosca, B., Jelinski, N., Zelazny, W., Souza, R.M.S., Safanelli, J.L., & ten Caten, A. (2018). soiltexture: Functions for Soil Texture Plot, Classification and Transformation. URL:

Try the envalysis package in your browser

Any scripts or data that you put into this service are public.

envalysis documentation built on Sept. 20, 2023, 5:07 p.m.