我试图找到一个逻辑分布函数的不动点,并确定不同参数值的固定点如何变化。代码如下所示:
nfxp.reps <- 0
err <- 10
p <- seq(0, 1, by = 0.0001)
pold <- p
gamma <- 6
k <- 3
while (err > 1E-12) {
nfxp.reps <- nfxp.reps + 1
if (nfxp.reps > 999) {
stop("The number of NFXP reps needs to be increased. \n")
}
pnew <- plogis(-k + gamma * pold)
err <- max(abs(pnew - pold))
pold <- pnew
}
上面的代码在上面的参数选择中效果很好: gamma 和 k - 找到 3 个固定点,2 个稳定点和 1 个不稳定点(其中 p=0.5)。但是,如果我不按比例更改上述参数,其中中间固定点高于或低于 0.5,例如:
gamma<-7
k<-3
循环无法定位中间不动点 p=0.3225(如果 gamma=7,k=3)