FitDoubleLogBeck {greenbrown} R Documentation

## Fit a double logisitic function to a vector according to Beck et al. (2006)

### Description

This function fits a double logistic curve to observed values using the function as described in Beck et al. (2006) (equation 3).

### Usage

```FitDoubleLogBeck(x, t = 1:length(x), tout = t, weighting = TRUE,
hessian = FALSE, plot = FALSE, ninit = 30, ...)```

### Arguments

 `x` vector or time series to fit `t` time steps `tout` time steps of output (can be used for interpolation) `weighting` apply the weighting scheme to the observed values as described in Beck et al. 2006? This is useful for NDVI observations because higher values will get an higher weight in the estimation of the double logisitic function than lower values. `hessian` compute standard errors of parameters based on the Hessian? `plot` plot iterations for logistic fit? `ninit` number of inital parameter sets from which to start optimization `...` further arguments (currently not used)

### Value

The function returns a list with fitted values, parameters, fitting formula and standard errors if hessian is TRUE

### Author(s)

Matthias Forkel <matthias.forkel@geo.tuwien.ac.at> [aut, cre]

### References

Beck, P.S.A., C. Atzberger, K.A. Hodga, B. Johansen, A. Skidmore (2006): Improved monitoring of vegetation dynamics at very high latitudes: A new method using MODIS NDVI. - Remote Sensing of Environment 100:321-334.

`TSGFdoublelog`, `Phenology`

### Examples

```
# select one year of data
data(ndvi)
x <- as.vector(window(ndvi, start=c(1994,1), end=c(1994, 12)))
plot(x)

# fit double-logistic function to one year of data
fit <- FitDoubleLogBeck(x)
lines(fit\$predicted, col="blue")

# do more inital trials, plot iterations and compute parameter uncertainties
FitDoubleLogBeck(x, hessian=TRUE, plot=TRUE, ninit=100)

# fit double-logistic function to one year of data,
# interpolate to daily time steps and calculate phenology metrics
tout <- seq(1, 12, length=365)	# time steps for output (daily)
fit <- FitDoubleLogBeck(x, tout=tout)
PhenoDeriv(fit\$predicted, plot=TRUE)

```

[Package greenbrown version 2.4.3 Index]