Re: SetDelayed and NIntegrate
- To: mathgroup at smc.vnet.net
- Subject: [mg47831] Re: [mg47805] SetDelayed and NIntegrate
- From: Anton Antonov <antonov at wolfram.com>
- Date: Thu, 29 Apr 2004 00:33:49 -0400 (EDT)
- References: <200404270847.EAA18887@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Mukhtar Bekkali wrote: >Very simple question. Is it possible in Mathematica 5 to execute this >code? > >f[x_,y_]:=f[x,y] (*where f[x,y] is some known function*) >g[x_]:=NIntegrate[f[x,y],{y,0,1}] >h[x_]:=D[g[x],x] >FindRoot[h[x]==0,x] > >I get a message that Integrand is not numeric and FindRoot stops. I would >like to make clear that I do not want to use Integrate. > >My other question is why this code does not work > >w=q^x; >With[{x=2},Plot[w,{q,0,1}] > >Thanks. Mukhtar Bekkali > > > With this lines you are trying to find a symbolic derivative of the result of a numerical function (which is a number): g[x_]:=NIntegrate[f[x,y],{y,0,1}] h[x_]:=D[g[x],x] May be you want NIntegrate[D[f[x,y],x],{y,0,1}] ? In this case you can try this: In[252]:= Clear[f, g, h, x, y] In[253]:= f[x_, y_] := (x - 0.5)^2*y^2 g[(x_)?NumericQ] := NIntegrate[D[f[x1, y], x1] /. x1 -> x, {y, 0, 1}] FindRoot[g[x] == 0, {x, 1}] Out[255]= {x -> 0.5} Anton Antonov Wolfram Research, Inc.
- References:
- SetDelayed and NIntegrate
- From: "Mukhtar Bekkali" <mbekkali@iastate.edu>
- SetDelayed and NIntegrate