Re: Simple Eval Question
- To: mathgroup at smc.vnet.net
- Subject: [mg31901] Re: [mg31883] Simple Eval Question
- From: Andrzej Kozlowski <andrzej at tuins.ac.jp>
- Date: Mon, 10 Dec 2001 06:14:45 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
In[1]:= <<Statistics`ContinuousDistributions` In[2]:= W=1; g=0.5; q=0.1; V=2; In[3]:= fd[x_]:= PDF[ LogNormalDistribution[0,1],x ] ; In[4]:= FindRoot[ Evaluate[Integrate[ ((W +(x-p)*q)^g)/g * fd[x], { x, 0, Infinity } ]== V], {p ,1}]//Timing Out[4]= {30.93 Second,{p->1.56521}} Somewhat surprisingly you can get the right answer also using NIntegrate and much faster although with some error messages: In[5]:= FindRoot[ Evaluate[NIntegrate[ ((W +(x-p)*q)^g)/g * fd[x], { x, 0, Infinity } ]== V], {p ,1}]//Timing Out[5]= {0.45 Second,{p->1.56521}} Andrzej Kozlowski Toyama International University JAPAN http://platon.c.u-tokyo.ac.jp/andrzej/ On Sunday, December 9, 2001, at 08:07 PM, ivo welch wrote: > I have a simple problem. I want to numerically solve > > Solve[ Integrate[ f[x,p]*g[x], {x,0,Infinity}] == V , p ] > > where f[] and g[] are defined functions, but the naive solution fails. > > W=1; g=0.5; q=0.1; V=2; > fd[x_]:= PDF[ LogNormalDistribution[0,1],x ] ; > Solve[ Integrate[ ((W +(x-p)*q)^g)/g * fd[x], { x, 0, Infinity } ]== V, > p ] > > Solve::"tdep": "The equations appear to involve the variables to be > solved \ > for in an essentially non-algebraic way." > > The correct answer seems to be 1.5652 . How do I ask Mathematica to > tell me > this number? > > (My ultimate goal is to plot the solved p as a function of q.) > > /iaw > > >