nlregb
nlregb
.
nlregb.control(eval.max, iter.max, abs.tol, rel.tol, x.tol,
step.min, step.max, scale.init, scale.upd, scale.fac,
scale.tol, scale.mod, sing.tol, sing.step, diff.j)
max(10^(-10),
.Machine$double.eps^(2/3))
.Machine$double.eps^(1/2)
100*.Machine$double.eps
scale. If
scale.init >= 0, all components of the scale vector will be initialized to
scale.init before updating. If
scale.init < 0, the scale vector will not
be initialized internally. Default is 0.0
scale at the beginning of
an iteration. Each component of
scale is set either to the norm of the
corresponding column of the Jacobian matrix or else to
scale.fac times its
current value, whichever is larger. Default is 0.6
scale during
automatic updating. If a component of
scale becomes smaller than
scale.tol
in magnitude, it is set to
scale.mod.
Default is
scale.tol = 10^(-6)
scale during
automatic updating. If a component of
scale becomes smaller than
scale.tol
in magnitude, it is set to
scale.mod.
Default is
scale.mod = 1.0
sing.tol = max( 10^(-10),
.Machine$double.eps^(2/3))
sing.step = 1
.Machine$double.eps^(1/2)
nlregb.
nlregb.control
would normally be called only to set the
control parameter
in a call to
nlregb. Names may not be abbreviated.
For details, see the PORT Mathematical Subroutine Library Manual.
A. T. & T. Bell Laboratories (1984). PORT Mathematical Subroutine Library Manual.
x <- seq(0, 2*pi, length=100)
y <- 4*sin(x-pi)+rnorm(100, sd=.5)
myfun <- function(param, x, y) {
y - param[1] * sin(x - param[2])
}
nlregb(n=length(y), start=c(3, 1.5), residuals=myfun,
lower=c(0, -Inf),
control=nlregb.control(iter.max=100, x.tol=.0001),
x=x, y=y)