Learn R Programming

soilphysics (version 2.1)

fitbusscher: Self-starting Nls Busscher's (1990) Model for Soil Penetration Resistance

Description

Function to self start the nonlinear Busscher's (1990) model for penetration resistance, i.e., $Pr = b0 * (\theta ^ {b1}) * (Bd ^ {b2})$. It creates initial estimates (by log-linearization) of the parameters b0, b1 and b2 and uses them to provide its least-squares estimates through nls.

Usage

fitbusscher(Pr, theta, Bd, ...)

Arguments

Pr
a numeric vector containing penetration resistance values.
theta
a numeric vector containing soil moisture values at which to evaluate the model.
Bd
a numeric vector containing bulk density values at which to evaluate the model.
...
further arguments to nls.

Value

  • A nls output (see help(nls)).

References

Busscher, W. J. (1990). Adjustment of flat-tipped penetrometer resistance data to common water content. Transactions of the ASAE, 3:519-524.

See Also

fitlbc, nls, summary.nls, predict.nls, Rsq

Examples

Run this code
data(compaction)
attach(compaction)
out <- fitbusscher(Pr = PR, theta = Mois, Bd = BD)
summary(out)
Rsq(out)

# 3D plot
X <- seq(min(Mois), max(Mois), len = 30) # theta
Y <- seq(min(BD), max(BD), len = 30) # Bd
f <- function(x, y) coef(out)[1] * (x^coef(out)[2]) * (y^coef(out)[3])
Z <- outer(X, Y, f)
persp(X, Y, Z,
	xlab = "Soil moisture",
	ylab = "Soil bulk density",
	zlab = "Penetration resistance",
	ticktype = "detailed",
	phi = 20, theta = 30)

# End (not run)

Run the code above in your browser using DataLab