# Grain-Size Distribution Functions

### Description

These functions compute diferent aspects related to grain-size distributions of soil.

### Usage

1 2 3 4 5 6 | ```
size.from.sieve(sieve, metric)
grainSize.plot(sieve = NA, size = NA, percent, metric)
percentComponents(sieve = NA, size = NA, percent, metric)
Dsize(N, sieve = NA, size = NA, percent, metric)
grainSize.coefs(percent, sieve = NA, size = NA, D10 = NA,
D30 = NA, D60 = NA)
``` |

### Arguments

`sieve` |
vector of sieve numbers according to ASTM D422 |

`size` |
vector of grain sizes (in or mm) |

`percent` |
vector of percent passing |

`metric` |
logical variable: TRUE for metric units (mm), FALSE for English units (in) |

`N` |
the percent corresponding to the desired D-size |

`D10` |
D-size corresponding to 10 percent passing |

`D30` |
D-size corresponding to 30 percent passing |

`D60` |
D-size corresponding to 60 percent passing |

### Details

Either sieve numbers (

`sieve`

) OR grain sizes (`size`

) must be provided in all functions; however, in grainSize.coefs the user additionally has the option of specifying D10, D30, and D60.For sieves larger than the no. 4 sieve, the user should specify the sieve size in inches (e.g., 3/8, 3/4, 1, 1.5, 2, 3, etc.).

The argument

`percent`

is required in all functions except size.from.sieve, and the argument`metric`

is required in all functions except for grainSize.coefs and Dsize (although it is needed in Dsize if sieve numbers are provided).The percentComponents function assumes that the no. 4 and no. 200 sieves have been used.

### Value

sieve.from.size calculates a set of grain sizes corresponding to a set of sieves (output is vector of grain sizes (in or mm)

grainSize.plot creates a plot of the soil's grain-size distribution; no numerical values are output

percentComponents is used to calculate the percent gravel, sand, and fines, and outputs a three-element list:

pg = Percent gravel

ps = percent sand

pf = percent fines

Dsize outputs the grain size corresponding to a certain percent finer (N), given a grain-size distribution

grainSize.coefs calculates the coefficients of uniformity and curvature, and outputs a two-element list:

Cu = Coefficient of uniformity (D60 / D10)

Cc = Coefficient of Curavture (D30^2 / (D10 * D60))

### Note

The Dsize function uses logarithmic interpolation to calculate the D-size from the provided grain-size distribution. Log-linear extrapolation is used for grain sizes beyond the range of the data, and a warning is provided.

### Author(s)

James Kaklamanos <kaklamanosj@merrimack.edu> and Kyle Elmy <ElmyK@merrimack.edu>

### See Also

`USCS`

, `AASHTO`

, `Plasticity`

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | ```
## Example 1: Grain-size distribution
## (a) Define data
sieve.example <- c(3/8, 4, 10, 20, 40, 140, 200)
percent.example <- c(95.72, 90.23, 81.49, 66.36, 50.00, 8.51, 4.82)
## (b) Percent gravel, sand, and fines
percentComponents(sieve = sieve.example, percent = percent.example,
metric = TRUE)
## (c) Plot grain-size distribution
grainSize.plot(sieve = sieve.example, percent = percent.example,
metric = TRUE)
## (d) Calculate D50
Dsize(N = 50, sieve = sieve.example, percent = percent.example,
metric = TRUE)
## (e) Coefficients of uniformity and curvature
grainSize.coefs(sieve = sieve.example, percent = percent.example)
## Example 2: coefficients of uniformity and curvature
grainSize.coefs(D60 = 0.10, D30 = 0.03, D10 = 0.002)
``` |