library(bbmle)
library(numDeriv)
library(coda)

sessionInfo()

ReedfrogSizepred <- read.table("../DATA/tadpole.dat",header=TRUE)

source("tadpole_R_funs.R")

t.fit <- system.time(tfit <- tadpole_R_fit())

times <- c(fit=unname(t.fit["elapsed"]))

## FIXME: can replace with @details$maxgrad, @details$eratio
##  when bbmle 1.0.1 is available from R-forge/CRAN ...

## compute termination info
maxgrad <-
  max(abs(grad(function(x)
       do.call(tfit@minuslogl,as.list(x)),
       coef(tfit))))

ev <- eigen(tfit@details$hessian)$value
eratio <- min(ev)/max(ev)

results.quad <- list(obj=-logLik(tfit),  ## objective function/Neg log likelihood (NULL for MCMC)
                coef=coef(tfit),  ## coefficients
                sd=sqrt(diag(vcov(tfit))),
                vcov=vcov(tfit),
                confint.quad=confint(tfit,method="quad"),
                time=times,
                terminfo=c(maxgrad=maxgrad,eratio=eratio) ## MLE termination info
                )

t.profile <- system.time(ciprof <- confint(tfit))
results.prof <- results.quad
results.prof$confint.quad <- NULL
results.prof$confint.prof <- ciprof

results <- list(quad=results.quad,prof=results.prof)

save("results",file="fit.RData")

