
Last chance! 50% off unlimited learning
Sale ends in
This function allows creating artificial grain-size end-members. One such "artificial end-member loading" may be composed of one or more superimposed normal distributions.
create.EM(p1, p2, s, boundaries, n)
Numeric
vector with normalised end-member loadings,
consisting of the mixed normal distributions according to the input
parameters.
Numeric
vector, means of normal distributions, i.e. mode
positions.
Numeric
vector, standard deviations of normal
distributions, i.e. mode width.
Numeric
vector, relative proportions of each mode, i.e.
relative mode height.
Numeric
vector of length two with class boundaries
(i.e. c(lower boundary, upper boundary)
).
Numeric
scalar with number of classes, i.e. resolution of
the end-member.
Michael Dietze, Elisabeth Dietze
When building a data set of many artificial end member loadings, these
should all have the same boundaries
and n
. The function
builds composites of individual normal distributions. Each distribution is
scaled according to s
. Finally the distribution is scaled to 100 %.
mix.EM
## set lower and upper class boundary, number of classes and class units
boundaries <- c(0, 11)
n <- 40
phi <- seq(from = boundaries[1],
to = boundaries[2],
length.out = n)
## create two artificial end-member loadings
EMa.1 <- create.EM(p1 = c(2, 5), p2 = c(1, 0.8), s = c(0.7, 0.3),
boundaries = boundaries, n = n)
EMa.2 <- create.EM(p1 = c(4, 7), p2 = c(1.1, 1.4), s = c(0.5, 0.5),
boundaries = boundaries, n = n)
## plot the two artificial end-member loadings
plot(phi, EMa.1, type = "l")
lines(phi, EMa.2, col = "red")
Run the code above in your browser using DataLab