GuFit {phenopix} | R Documentation |
Fit a double logistic equation to a time series according to Gu et al. (2003)
Description
This function fits a double logistic curve to observed values using the function as described in Gu et al. (2003).
Usage
GuFit(ts, uncert = FALSE, nrep = 100, ncores='all',
sf=quantile(ts, probs=c(0.05, 0.95), na.rm=TRUE))
Arguments
ts |
A ts or zoo object with gcc data. index(ts) must be numeric days of year (doys) or a POSIXct vector |
uncert |
Should uncertainty be estimated? |
nrep |
Number of relications to estimate uncertainty, defaults to 100. |
ncores |
Number of processors to be used in parallel computation, defaults to 'all' which will accidentally slow down any other activity on your computer. Otherwise set the number of processors you want to use in parallelization. |
sf |
Scaling factors required to normalize the data prior to the fitting. If the function is called by e.g. |
Details
The function estimates parameters of the double logistic equation from
Gu et al. 2009 and provides an uncertainty estimation. Parameters are
estimated by a call to the function FitDoubleLogGu
. Uncertainty
is computed by adding noise to the raw
data and by estimating again the parameters. Noise is added according
to the standard deviation of the residuals (fitted - observed).
The procedure is repeated nrep times.
Value
A list containing the following items.
fit |
A list as returned by the function FitDoubleLogGu |
uncertainty |
A list containing a zoo data.frame with the uncertainty predicted values, and a dataframe containing the respective uncertainty curve parameters |
Author(s)
Gianluca Filippa <gian.filippa@gmail.com>
References
Gu L, Post WM, Baldocchi D, Black TA, Suyker AE, Verma SB, Vesala T, Wofsy SC. (2009) Characterizing the Seasonal Dynamics of Plant Community Photosynthesis Across a Range of Vegetation Types. In: Phenology of Ecosystem Processes (Ed: Noormets A, Springer New York), pp 35-58.
See Also
Examples
## Not run:
library(zoo)
data(bartlett2009.filtered)
## fit without uncertainty estimation
fitted.gu <- GuFit(bartlett2009.filtered)
## convert
plot(bartlett2009.filtered)
lines(fitted.gu$fit$predicted, col='red')
## look at fitting parameters
fitted.gu$fit$params
## look at fitting equation, where t is time
fitted.gu$fit$formula
## End(Not run)