
Sieve applies thresholds to a numeric vector of fragment diameter values, returning fragment size classes. Particle diameter thresholds are evaluated as d < threshold
.
fragmentSieve(
diameter,
sieves = NULL,
ordered = FALSE,
prefix = "",
new_names = NULL,
...
)
character. Size class labels based on names of sieves
, new_names
, and prefix
(if specified).
numeric. Vector of diameters of coarse fragments to "sieve". Default sieves
are specified in millimeters.
leave as NULL
to use fragment class labels and diameters defined by fragmentClasses()
, or a named vector of fragment diameters. See examples.
logical. Return as an ordered factor.
character. Add a prefix to result names? Default: ""
adds no prefix. For example "para"
might be used for size classes of pararock fragments.
Optional: apply new labels to result classes. Should match length of sieves
.
additional arguments to fragmentClasses()
, such as sys
, flat
, and rounded
, see examples.
Soil Science Division Staff. 2017. Soil survey manual. C. Ditzler, K. Scheffe, and H.C. Monger (eds.). USDA Handbook 18. Government Printing Office, Washington, D.C.
fragmentClasses()
# use a simplified version of the USDA system
# common within NRCS/SPSD and NCSS
fragmentSieve(c(30, 125, 180, 500, 1000))
# pararock fragments
fragmentSieve(c(30, 125, 180, 500, 1000), prefix = 'para')
# result as an ordered factor
fragmentSieve(c(30, 125, 180, 500, 1000), ordered = TRUE)
# USDA system, flat size classes
fragmentSieve(c(30, 125, 180, 500, 1000), flat = TRUE)
# alternative classification systems
fragmentSieve(c(30, 125, 180, 500, 1000), sys = 'usda')
fragmentSieve(c(30, 125, 180, 500, 1000), sys = 'international')
fragmentSieve(c(30, 125, 180, 500, 1000), sys = 'unified')
fragmentSieve(c(30, 125, 180, 500, 1000), sys = 'aashto')
fragmentSieve(c(30, 125, 180, 500, 1000), sys = 'mod.wentworth')
# custom fragment labels / diameter
fragmentSieve(
c(30, 125, 180, 500, 1000),
sieves = c(clumps = 50, chunks = 300, blocks = 100000)
)
# unnamed sieves, generic labels used
fragmentSieve(c(10, 50), sieves = c(30, 70))
fragmentSieve(c(10, 50), sieves = c(30, 70), ordered = TRUE)
Run the code above in your browser using DataLab