optim_pheno | R Documentation |
Interface of optimization functions for double logistics and other parametric curve fitting functions.
optim_pheno( prior, sFUN, y, t, tout, method, w, nptperyear, ylu, iters = 2, wFUN = wTSM, lower = -Inf, upper = Inf, constrain = TRUE, verbose = FALSE, ..., use.cpp = FALSE )
prior |
A vector of initial values for the parameters for which optimal
values are to be found. |
sFUN |
The name of fine curve fitting functions, can be one of |
y |
Numeric vector, vegetation index time-series |
t |
Numeric vector, |
tout |
Corresponding doy of prediction. |
method |
The name of optimization method to solve fine fitting, one of
|
w |
(optional) Numeric vector, weights of |
nptperyear |
Integer, number of images per year, passed to |
ylu |
|
iters |
How many times curve fitting is implemented. |
wFUN |
weights updating function, can be one of 'wTSM', 'wChen' and 'wBisquare'. |
lower, upper |
vectors of lower and upper bounds, replicated to be as long as
|
constrain |
boolean, whether to use parameter constrain |
verbose |
Whether to display intermediate variables? |
... |
other parameters passed to |
use.cpp |
(unstable, not used) boolean, whether to use c++ defined fine
fitting function? If |
A fFIT()
object, with the element of:
tout
: The time of output curve fitting time-series.
zs
: Smoothed vegetation time-series of every iteration.
ws
: Weights of every iteration.
par
: Final optimized parameter of fine fitting.
fun
: The name of fine fitting.
fFIT()
, stats::nlminb()
# library(magrittr) # library(purrr) # simulate vegetation time-series t <- seq(1, 365, 8) tout <- seq(1, 365, 1) FUN = doubleLog_Beck par = c( mn = 0.1 , mx = 0.7 , sos = 50 , rsp = 0.1 , eos = 250, rau = 0.1) par0 = c( mn = 0.15, mx = 0.65, sos = 100, rsp = 0.12, eos = 200, rau = 0.12) y <- FUN(par, t) methods = c("BFGS", "ucminf", "nlm", "nlminb") opt1 <- I_optim(par0, doubleLog_Beck, y, t, methods) # "BFGS", "ucminf", "nlm", # opt2 <- I_optimx(prior, fFUN, y, t, tout, ) sFUN = "doubleLog.Beck" # doubleLog.Beck r <- optim_pheno(par0, sFUN, y, t, tout, method = methods[4], nptperyear = 46, iters = 2, wFUN = wTSM, verbose = FALSE, use.julia = FALSE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.