Skip to content

Fitting particle size analysis data

2 messages · Zorig Davaanyam, PIKAL Petr

#
Hi

I made a simple spredsheet for PSD using Rosin Rammler equation and I am lazy to transform it to R. However for single purpose you can use nls.

Reverse your cumulative values

PSD$cum<-cumsum(PSD$ret)

plot(PSD$size, PSD$cum)

fit<-nls(cum~ exp(-((size/r)^gama))*100, data=PSD, start=c(r=80, gama=2))

summary(fit)

Formula: cum ~ exp(-((size/r)^gama)) * 100

Parameters:
     Estimate Std. Error t value Pr(>|t|)    
r     88.9664     2.3360   38.09 2.35e-07 ***
gama   2.5435     0.2244   11.33 9.36e-05 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 3.411  on  5  degrees of freedom

Number of iterations to convergence: 7 
Achieved convergence tolerance: 1.612e-06

lines(PSD$size, predict(fit))

Regards
Petr