[R] nls problem: singular gradient

Jonas Stein news at jonasstein.de
Wed Jul 11 17:04:14 CEST 2012


Why fails nls with "singular gradient" here?
I post a minimal example on the bottom and would be very 
happy if someone could help me.
Kind regards,

###########

# define some constants
smallc <- 0.0001
t <- seq(0,1,0.001)
t0 <- 0.5
tau1 <- 0.02

# generate yy(t)

yy <- 1/2 * ( 1- tanh((t - t0)/smallc) * exp(-t / tau1) ) + rnorm(length(t))*0.01

# show the curve

plot(x=t, y=yy, pch=18)

# prepare data

dd <- data.frame(y=yy, x=t)

nlsfit <- nls(data=dd,  y ~  1/2 * ( 1- tanh((x - ttt)/smallc) * exp(-x / tau2) ), start=list(ttt=0.4, tau2=0.1) , trace=TRUE)

# get error:
# Error in nls(data = dd, y ~ 1/2 * (1 - tanh((x - ttt)/smallc) * exp(-x/tau2)),  : 
#   singular gradient

-- 
Jonas Stein <news at jonasstein.de>



More information about the R-help mailing list