hi , lik <- function(nO, nA, nB, nAB){
loglik <- function(par) { p=par[1] q=par[2] r <- 1 - p - q if (c(p,q,r) > rep(0,3) && c(p,q,r) < rep(1,3) ) { -(2 * nO * log (r) + nA * log (p^2 + 2 * p * r) + nB * log (q^2 + 2 * q * r) + nAB * (log(2) +log(p) +log(q))) } else NA } loglik } i want to maximize this likelihood function over the range (0,0,0) to (1,1,1). so i tried optim ( c(0.3,0.3), lik ( 176,182 , 60 ,17) , method = "CG") and obtained the following : > optim(c(0.3,0.3), fn, method="CG") $par [1] 0.26444187 0.09316946 $value [1] 492.5353 $counts function gradient 130 19 $convergence [1] 0 $message NULL Warning messages: 1: In log(q^2 + 2 * q * r) : NaNs produced 2: In log(q) : NaNs produced 3: In log(q^2 + 2 * q * r) : NaNs produced 4: In log(q) : NaNs produced please help ... -- Arindam Fadikar M.Stat Indian Statistical Institute. New Delhi, India [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.