MathGroup Archive 2002

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: The equivalent of FindRoot for an interpolating function

  • To: mathgroup at smc.vnet.net
  • Subject: [mg37501] RE: [mg37470] The equivalent of FindRoot for an interpolating function
  • From: "DrBob" <drbob at bigfoot.com>
  • Date: Fri, 1 Nov 2002 01:44:25 -0500 (EST)
  • Reply-to: <drbob at bigfoot.com>
  • Sender: owner-wri-mathgroup at wolfram.com

Use the inverse function computed as follows:

sol = NDSolve[{y'[t] == 1 - y[t], y[0] == 0}, y, {t, 0, 20}]
fy = y /. sol[[1]]
Dimensions /@ (List @@ fy)
data = Reverse /@ First@
  Cases[Plot[fy[x], {x, 0, 20}, PlotRange -> All], Line[a_] -> a, 3];
inverse = Interpolation[data]
Plot[inverse[x], {x, 0, 1}, PlotRange -> All]

DrBob

-----Original Message-----
From: Philip M. Howe [mailto:pmhowe at lanl.gov] 
To: mathgroup at smc.vnet.net
Subject: [mg37501] [mg37470] The equivalent of FindRoot for an interpolating
function

Hi Folks,

I wish to find the value of the independent variable in an 
interpolating function that makes the dependent variable assume some 
value of interest.  For example,

sol = NDSolve[{y'[t] == 1-y[t], y[0]==0}, y, {t, 0, 20}] 
fy = y/.sol[[1]]

produces an interpolating function.  I would like to extract the 
value of t that yields a value of 0.99 or 0.9999 (say) for y.  Is 
there a straightforward way of doing this?

Thanks in advance for the help.

Regards,

Phil
-- 
Philip M. Howe
Program Manager, Stockpile Surety
Los Alamos National Laboratory

(505) 665-5332
(505) 667-9498
Fax: 505-665-5249
email pmhowe at lanl.gov
Mail Stop P945





  • Prev by Date: Re: Importing complex numbers into mathematica
  • Next by Date: Re: OO in Mathematica
  • Previous by thread: RE: The equivalent of FindRoot for an interpolating function
  • Next by thread: Re: RE: The equivalent of FindRoot for an interpolating function