In your example, f is a function, but optimize(f,c(0,15),maximum=TRUE)$maximum is just a number (the point at which f reaches its maximum value). I'm not sure what you want, but if you had say
f <- function(x,y) x^3 + yx + 1 and defined g <- function(y) optimize(f,c(0,5),maximum=TRUE,y)$maximum then g(t) is the x-value at which the function f(x,t) (over x in (0,5)) reaches its maximum for this fixed t. That could then be integrated. Reid Huntsinger -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Gregory Gentlemen Sent: Thursday, July 28, 2005 3:58 PM To: [email protected] Subject: [R] using integrate with optimize nested in the integration Hi guys im having a problem getting R to numerically integrate for some function, say f(bhat)*optimize(G(bhat)), over bhat. Where id like to integrate this over some finite range, so that here as we integrate over bhat optimize would return a different optimum. For instance consider this simple example for which I cannot get R to return the desired result: f <- function(bhat) exp(bhat) g <- function(bhat) optimize(f,c(0,15),maximum=TRUE)$maximum*bhat integrate(g,lower=0,upper=5) which returns: 187.499393759 with absolute error < 2.1e-12 However this is an approximation of : 15*(5^2/2 - 0)=187.5, not what I intended on getting. Its not identifying that f is a function of bhat ... any advice or ways I can get integrate to not treat this as a constant? Any help is appreciated. Gregoy Gentlemen __________________________________________________ [[alternative HTML version deleted]] ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html ______________________________________________ [email protected] mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
