Wood et al. (2015) ont étudié la croissance de Abies balsamea. Ils réalisent différents modèles linéaires et non linéaires et mettent en évidence que le modèle de Gompertz est le plus approprié.
abies <- read("../data/abies.rds")
abies <- sfilter(abies, elevation >= 950 & elevation <= 1050)
chart(data = abies, height ~ diameter)+
geom_point()+ geom_hline(yintercept = 17.50, col = "gray", linetype = "dashed") -> abies_plot
abies_plot

Ce graphique représente la hauteur en fonction du diamètre à 1.37m du sol. Nous pouvons voir qu’il semble y avoir un point d’inflexion vers 9 cm de diamètre et qu’il semble avoir une asymptote vers 17.5 m de hauteur, cependant un point est au dessus de celle-ci. Nous pouvons voir que le nuage de point semble donc former une sigmoïde asymétriques de part et d’autre au point d’inflexion situé à 9 cm.
gomp <- nls(data = abies, height ~ SSgompertz(diameter, Asym, b2, b3))
summary(gomp)
##
## Formula: height ~ SSgompertz(diameter, Asym, b2, b3)
##
## Parameters:
## Estimate Std. Error t value Pr(>|t|)
## Asym 16.447221 0.261887 62.80 <2e-16 ***
## b2 2.506615 0.027280 91.88 <2e-16 ***
## b3 0.888581 0.002614 339.89 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.039 on 1053 degrees of freedom
##
## Number of iterations to convergence: 2
## Achieved convergence tolerance: 1.87e-06
AIC(gomp)
## [1] 3081.598
logis <- nls(data = abies, height ~ SSlogis(diameter, Asym, b2, b3))
summary(logis)
##
## Formula: height ~ SSlogis(diameter, Asym, b2, b3)
##
## Parameters:
## Estimate Std. Error t value Pr(>|t|)
## Asym 14.71577 0.16922 86.96 <2e-16 ***
## b2 9.80233 0.16237 60.37 <2e-16 ***
## b3 4.72311 0.09221 51.22 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1.064 on 1053 degrees of freedom
##
## Number of iterations to convergence: 4
## Achieved convergence tolerance: 2.573e-06
AIC(logis)
## [1] 3133.5
Nous obtenons donc comme valeurs pour asym égal à 16.44, pour b2 égal à 2.5 et pour b3 égal 0.88 tandis que pour le modéle de la courbre logistique nous obtenons 14.71, 9.8 et 4.73 Toutes ces valeurs sont significatives au seuil alpha 1% pour les deux modéles. Cependant le critère d’’Akaïke est inférieur pour le modéle de Gompertz, celui-ci est donc préféré
\[ Taille(D) = 16.44 \ e^{-2.5 \cdot 0.89^D} \]
as.function.nls <- function(x, ...) {
nls_model <- x
name_x <- names(nls_model$dataClasses)
stopifnot(length(name_x) == 1)
function(x) predict(nls_model, newdata = structure(list(x), names = name_x))
}
abies_plot +
stat_function(fun = as.function(gomp), color = "red", size = 1)

as.function.nls <- function(x, ...) {
nls_model <- x
name_x <- names(nls_model$dataClasses)
stopifnot(length(name_x) == 1)
function(x) predict(nls_model, newdata = structure(list(x), names = name_x))
}
abies_plot +
stat_function(fun = as.function(logis), color = "red", size = 1)

Nous avons réussi donc a modéliser la croissance de la hauteur de l’arbre en fonction du diamètre à 1.37m du sol. Nous avons utilisé deux modéles pour ceci et le meilleur est celui de gompertz. La croissance de la hauteur de l’arbre en fonction du diamètre semble donc suivre un modéle de gompertz.