Learn R Programming

biogeom (version 1.4.3)

MLRFE: Modified Lobry-Rosso-Flandrois (LRF) Equation

Description

MLRFE is used to calculate \(y\) values at given \(x\) values using the modified LRF equation or one of its simplified versions.

Usage

MLRFE(P, x, simpver = 1)

Value

The \(y\) values predicted by the modified LRF equation or one of its simplified versions.

Arguments

P

the parameters of the modified LRF equation or one of its simplified versions.

x

the given \(x\) values.

simpver

an optional argument to use the simplified version of the modified LRF equation.

Author

Peijian Shi pjshi@njfu.edu.cn, Johan Gielis johan.gielis@uantwerpen.be, Brady K. Quinn Brady.Quinn@dfo-mpo.gc.ca.

Details

When simpver = NULL, the modified LRF equation is selected:

$$\mbox{if } x \in{\left(x_{\mathrm{min}}, \ \frac{x_{\mathrm{min}}+x_{\mathrm{max}}}{2}\right)},$$ $$y = y_{\mathrm{opt}}\left\{\frac{\left(x-x_{\mathrm{min}}\right)\left(x-x_{\mathrm{max}}\right)^{2}}{\left(x_{\mathrm{max}}-x_{\mathrm{opt}}\right)\left[(x_{\mathrm{max}}-x_{\mathrm{opt}})(x-x_{\mathrm{opt}})-(x_{\mathrm{min}}-x_{\mathrm{opt}})(x_{\mathrm{opt}}+x_{\mathrm{max}}-2x)\right]}\right\}^{\delta};$$ $$\mbox{if } x \in{\left[\frac{x_{\mathrm{min}}+x_{\mathrm{max}}}{2}, \ x_{\mathrm{max}}\right)},$$ $$y = y_{\mathrm{opt}}\left\{\frac{\left(x-x_{\mathrm{max}}\right)\left(x-x_{\mathrm{min}}\right)^{2}}{\left(x_{\mathrm{opt}}-x_{\mathrm{min}}\right)\left[(x_{\mathrm{opt}}-x_{\mathrm{min}})(x-x_{\mathrm{opt}})-(x_{\mathrm{opt}}-x_{\mathrm{max}})(x_{\mathrm{opt}}+x_{\mathrm{min}}-2x)\right]}\right\}^{\delta};$$ $$\mbox{if } x \notin{\left(x_{\mathrm{min}}, \ x_{\mathrm{max}}\right)},$$ $$y = 0.$$

Here, \(x\) and \(y\) represent the independent and dependent variables, respectively; \(y_{\mathrm{opt}}\), \(x_{\mathrm{opt}}\), \(x_{\mathrm{min}}\), \(x_{\mathrm{max}}\), and \(\delta\) are constants to be estimated; \(y_{\mathrm{opt}}\) represents the maximum \(y\), and \(x_{\mathrm{opt}}\) is the \(x\) value associated with the maximum \(y\) (i.e., \(y_{\mathrm{opt}}\)); and \(x_{\mathrm{min}}\) and \(x_{\mathrm{max}}\) represents the lower and upper intersections between the curve and the \(x\)-axis. There are five elements in P, representing the values of \(y_{\mathrm{opt}}\), \(x_{\mathrm{opt}}\), \(x_{\mathrm{min}}\), \(x_{\mathrm{max}}\), and \(\delta\), respectively.

\(\quad\) When simpver = 1, the simplified version 1 is selected:

$$\mbox{if } x \in{\left(0, \ \frac{x_{\mathrm{max}}}{2}\right)},$$ $$y = y_{\mathrm{opt}}\left\{\frac{x\left(x-x_{\mathrm{max}}\right)^{2}}{\left(x_{\mathrm{max}}-x_{\mathrm{opt}}\right)\left[(x_{\mathrm{max}}-x_{\mathrm{opt}})(x-x_{\mathrm{opt}})+x_{\mathrm{opt}}(x_{\mathrm{opt}}+x_{\mathrm{max}}-2x)\right]}\right\}^{\delta};$$ $$\mbox{if } x \in{\left[\frac{x_{\mathrm{max}}}{2}, \ x_{\mathrm{max}}\right)},$$ $$y = y_{\mathrm{opt}}\left\{\frac{\left(x-x_{\mathrm{max}}\right)x^{2}}{x_{\mathrm{opt}}\left[x_{\mathrm{opt}}(x-x_{\mathrm{opt}})-(x_{\mathrm{opt}}-x_{\mathrm{max}})(x_{\mathrm{opt}}-2x)\right]}\right\}^{\delta};$$ $$\mbox{if } x \notin{\left(0, \ x_{\mathrm{max}}\right)},$$ $$y = 0.$$ There are four elements in P, representing the values of \(y_{\mathrm{opt}}\), \(x_{\mathrm{opt}}\), \(x_{\mathrm{max}}\), and \(\delta\), respectively.

\(\quad\) When simpver = 2, the simplified version 2 is selected: $$\mbox{if } x \in{\left(x_{\mathrm{min}}, \ \frac{x_{\mathrm{min}}+x_{\mathrm{max}}}{2}\right)},$$ $$y = \frac{y_{\mathrm{opt}}\left(x-x_{\mathrm{min}}\right)\left(x-x_{\mathrm{max}}\right)^{2}}{\left(x_{\mathrm{max}}-x_{\mathrm{opt}}\right)\left[(x_{\mathrm{max}}-x_{\mathrm{opt}})(x-x_{\mathrm{opt}})-(x_{\mathrm{min}}-x_{\mathrm{opt}})(x_{\mathrm{opt}}+x_{\mathrm{max}}-2x)\right]};$$ $$\mbox{if } x \in{\left[\frac{x_{\mathrm{min}}+x_{\mathrm{max}}}{2}, \ x_{\mathrm{max}}\right)},$$ $$y = \frac{y_{\mathrm{opt}}\left(x-x_{\mathrm{max}}\right)\left(x-x_{\mathrm{min}}\right)^{2}}{\left(x_{\mathrm{opt}}-x_{\mathrm{min}}\right)\left[(x_{\mathrm{opt}}-x_{\mathrm{min}})(x-x_{\mathrm{opt}})-(x_{\mathrm{opt}}-x_{\mathrm{max}})(x_{\mathrm{opt}}+x_{\mathrm{min}}-2x)\right]};$$ $$\mbox{if } x \notin{\left(x_{\mathrm{min}}, \ x_{\mathrm{max}}\right)},$$ $$y = 0.$$ There are four elements in P, representing the values of \(y_{\mathrm{opt}}\), \(x_{\mathrm{opt}}\), \(x_{\mathrm{min}}\), and \(x_{\mathrm{max}}\), respectively.

\(\quad\) When simpver = 3, the simplified version 3 is selected: $$\mbox{if } x \in{\left(0, \ \frac{x_{\mathrm{max}}}{2}\right)},$$ $$y = \frac{y_{\mathrm{opt}}x\left(x-x_{\mathrm{max}}\right)^{2}}{\left(x_{\mathrm{max}}-x_{\mathrm{opt}}\right)\left[(x_{\mathrm{max}}-x_{\mathrm{opt}})(x-x_{\mathrm{opt}})+x_{\mathrm{opt}}(x_{\mathrm{opt}}+x_{\mathrm{max}}-2x)\right]};$$ $$\mbox{if } x \in{\left[\frac{x_{\mathrm{max}}}{2}, \ x_{\mathrm{max}}\right)},$$ $$y = \frac{y_{\mathrm{opt}}\left(x-x_{\mathrm{max}}\right)x^{2}}{x_{\mathrm{opt}}\left[x_{\mathrm{opt}}(x-x_{\mathrm{opt}})-(x_{\mathrm{opt}}-x_{\mathrm{max}})(x_{\mathrm{opt}}-2x)\right]};$$ $$\mbox{if } x \notin{\left(0, \ x_{\mathrm{max}}\right)},$$ $$y = 0.$$ There are three elements in P, representing the values of \(y_{\mathrm{opt}}\), \(x_{\mathrm{opt}}\), and \(x_{\mathrm{max}}\), respectively.

References

Shi, P., Fan, M., Ratkowsky, D.A., Huang, J., Wu, H., Chen, L., Fang, S., Zhang, C. (2017) Comparison of two ontogenetic growth equations for animals and plants. Ecological Modelling 349, 1\(-\)10. tools:::Rd_expr_doi("10.1016/j.ecolmodel.2017.01.012")

Shi, P., Gielis, J., Quinn, B.K., Niklas, K.J., Ratkowsky, D.A., Schrader, J., Ruan, H., Wang, L., Niinemets, Ü. (2022) 'biogeom': An R package for simulating and fitting natural shapes. Annals of the New York Academy of Sciences 1516, 123\(-\)134. tools:::Rd_expr_doi("10.1111/nyas.14862")

See Also

areaovate, curveovate, fitovate, fitsigmoid, MbetaE, MBriereE, MPerformanceE, sigmoid

Examples

Run this code
x3   <- seq(-5, 15, len=2000)
Par3 <- c(3, 3, 10, 2)
y3   <- MbetaE(P=Par3, x=x3, simpver=1)

dev.new()
plot( x3, y3, cex.lab=1.5, cex.axis=1.5, type="l",
      xlab=expression(italic(x)), ylab=expression(italic(y)) )
 
graphics.off()

Run the code above in your browser using DataLab