[Rd] nls (with SSlogis model and upper limit) never returns (PR#10544)

hendrik.weisser at gmx.net hendrik.weisser at gmx.net
Fri Jan 4 15:45:26 CET 2008


Full_Name: Hendrik Weisser
Version: 2.6.1
OS: Linux
Submission from: (NULL) (139.19.102.218)


The following computation never finishes and locks R up:

> values <- list(x=10:30, y=c(23.85, 28.805, 28.195, 26.23, 25.005, 20.475,
17.33, 14.97, 11.765, 8.857, 5.3725, 5.16, 4.2105, 2.929, 2.174, 1.25, 1.0255,
0.612, 0.556, 0.4025, 0.173))
> y.max <- max(values$y)
> model <- nls(y ~ SSlogis(x, asym, xmid, scal), data=values, algorithm="port",
start=c(asym=y.max, xmid=15, scal=-0.5), upper=c(y.max, Inf, Inf))

This used to work with R version 2.5.1 patched.
The problem does _not_ occur if the parameter "scal=-0.5" in the nls call is
changed, e. g. to "scal=-0.6" or "scal=-0.4".
Simply calling "model <- nls(y ~ SSlogis(x, asym, xmid, scal), data=values)"
also works, but this does not use the upper bound for the asym parameter, which
was the point.



More information about the R-devel mailing list