2017-03-14 32 views
0

我正在使用constrOptim函數在最佳擬合參數上添加一個約束。我的功能是ode功能,所以我不能給漸變。我寫爲'NULL'。不過,我得到這個錯誤grad.default(theta,...)中的ConstrOptim錯誤:找不到函數「func」

'在grad.default錯誤(THETA,...):找不到函數 「功能」'

uinit = rbind(c(0, 1, -1, 0, 0, 0, 0), c(1, 0, 0, 0, 0, 0, 0)) 

fit0 <- constrOptim(params0, sse.bigmodel, NULL,data = head(dataind, 20), ui = uinit , ci = c(0, 0), hessian = TRUE, method = c("Nelder-Mead")) 
parest = fit0$par 

回答

0

我解決了這個問題。 NULL的地方很重要,hessian = TRUE不起作用。

fit0 <- constrOptim(params0, sse.bigmodel, NULL, ui = c(0, 1, -1, 0, 0, 0, 0) , ci = c(0),data = head(dataind, 20)) 

parest = fit0 $ PAR

相關問題