On Wed, 9 Jul 2003 15:33:12 -0400, Edoardo Airoldi <[EMAIL PROTECTED]> wrote :
>> hi all, >> I am using optim. I am getting the following error message: >> >> Error in optim(par = start.vals[, h], fn = post.func.pois, gr = post.grad. >> pois, : >> L-BFGS-B needs finite values of fn >> >> If I look at optim typing '> optim' it seems that the error comes from >> inside .Internal(optim), so I wonder how can I see the code for .Internal( >> optim)? Anything that's called by .Internal is C or Fortran code. You need to download the R source package, decompress it somewhere, and start looking around the src directory. Internal functions are all listed in a big array declared in the src/main/names.c file. For example, this line is in that file: {"optim", do_optim, 0, 11, 7, {PP_FUNCALL, PREC_FN, 0}}, This says that "do_optim" is the function that does all the work. The other numbers describe things like how many arguments it takes, how to deparse it, etc. You then need to search through all the source to find do_optim; it's in the file src/main/optim.c. Reading C code that works with R objects (declared as SEXP) is not easy, but that's where you'll need to look. In the end, I don't think all that work is going to be very fruitful. You'll just find out that your objective function needs to return finite values. You should try to figure out why it doesn't. Perhaps if you set the bounds on the region a little smaller you'll fix things? Duncan Murdoch ______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help