Re: Problems integrating InterpolatingFunction

• To: mathgroup at smc.vnet.net
• Subject: [mg116090] Re: Problems integrating InterpolatingFunction
• From: Bob Hanlon <hanlonr at cox.net>
• Date: Tue, 1 Feb 2011 06:55:25 -0500 (EST)

```Use FunctionInterpolation

s = y /. NDSolve[{y'[x] == y[x] Cos[x + y[x]], y[0] == 1},
y, {x, 0, 30}][[1]];

NIntegrate[1/s[x]^2, {x, 0, 30}]

10325.5

v = FunctionInterpolation[
Evaluate[
Table[
D[
Integrate[1/s[t]^2, {t, 0, x}],
{x, k}],
{k, 0, 1}]],
{x, 0, 30}];

v[30]

10325.5

Plot[v[x], {x, 0, 30}]

Bob Hanlon

---- Sergio Miguel Terrazas Porras <sterraza at uacj.mx> wrote:

=============
Hi again, the thing is that I need a function as a result of the integration, no a number.
I can make a very long table of the results of NIntegrate, then try to fit the elements of Table, etc.
I just needed to know if it was possible to obtain a function directly from the indefinite integral.

In the documentation there is an example of an indefinte integral of an InterpolatinFuntion.

Thanks to all who responded.

Sergio

________________________________________
De: Bob Hanlon [hanlonr at cox.net]
Enviado el: domingo, 30 de enero de 2011 01:32 a.m.
Para: mathgroup at smc.vnet.net
Asunto: [mg116049] Re: Problems integrating InterpolatingFunction

You must use NIntegrate

s = y /. NDSolve[{y'[x] == y[x] Cos[x + y[x]], y[0] == 1},
y, {x, 0, 30}][[1]];

NIntegrate[1/s[x]^2, {x, 0, 30}]

10325.5

Bob Hanlon

---- Sergio Miguel Terrazas Porras <sterraza at uacj.mx> wrote:

==========================
Hello group,

I use NDSolve for a nonlinear differential equation, and I get an InterpolatingFunction, as expected.

I can plot it, evaluate it, etc.

The problem I have is that now I need to integrate 1/(the square of the InterpolatingFunction), and I get nothing but the input back.

Any ideas?