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?
Thanks in advance.
Sergio Terrazas