Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2009

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

Search the Archive

Re: How to get data from solvin' numerically

  • To: mathgroup at smc.vnet.net
  • Subject: [mg104156] Re: [mg104129] How to get data from solvin' numerically
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Wed, 21 Oct 2009 06:30:49 -0400 (EDT)
  • Reply-to: hanlonr at cox.net

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

The integral of the interpolation function is

int[x_?NumericQ /; 0 <= x <= 30] :=
 Integrate[s[t], {t, 0, x}]

Plotting the function and its integral

Show[{p1 = Plot[s[x], {x, 0, 30},
    PlotRange -> All],
  p2 = Plot[int[x], {x, 0, 30}]},
 Frame -> True, Axes -> False]

The plots were done separately to facilitate extraction of the points. Extracting the points from the plots

pts1 = Cases[p1, {_?NumericQ, _?NumericQ}, {6}];

pts2 = Cases[p2, {_?NumericQ, _?NumericQ}, {6}];

If you want to see the points displayed, remove the semi-colons that are suppressing their display. However, there are lots of points:

Length /@ {pts1, pts2}

{1281,634}

Showing that the points represent the original curves

ListLinePlot[{pts1, pts2}, PlotRange -> All, Frame -> True, Axes -> False]


Bob Hanlon

=D0=B8=D0=BD=D0=BE=D0=B2" <shalm89 at gmail.com> wrote:

=============
Bob, thank you for your answer.
Should all the values(points of numerical solution of differential equation)
appear after the command ListLinePlot?
I can't see values of this points.
Do you know, how can I integrate this interpolated function?
Thank you again.
Best regards,  Mikhail Shalaginov


2009/10/20 Bob Hanlon <hanlonr at cox.net>

>
> s = y /. NDSolve[
>     {y'[x] == y[x] Cos[x + y[x]], y[0] == 1},
>     y, {x, 0, 30}][[1]];
>
> p = Plot[s[x], {x, 0, 30}, PlotRange -> All,
>  Frame -> True, Axes -> False]
>
> Extracting the points from the plot
>
> pts = Cases[p, {_?NumericQ, _?NumericQ}, {6}];
>
> Length[pts]
>
> 1281
>
> ListLinePlot[pts, PlotRange -> All,
>  Frame -> True, Axes -> False]
>
>
> Bob Hanlon
>
> ---- "=D0=9C=D0=B8=D1=85=D0=B0=D0=B8=D0=BB =D0=A8=D0=B0=D0=BB=D0=B0=D0=B3=
=D0=B8=D0=BD=D0=BE=D0=B2" <shalm89 at gmail.com> wrote:
>
> =============
> Hi,
> Mathematica solves numerically differential equation and makes
> interpolation. I can plot this interpolating function. Can I save all
> the points in a file or somehow get this data?
> Best regards, Mikhail Shalaginov.
>
>

--

Bob Hanlon



  • Prev by Date: Re: Question on Dynamic with "DockedCell"
  • Next by Date: Re: Question on Dynamic with "DockedCell"
  • Previous by thread: Re: How to get data from solvin' numerically
  • Next by thread: Filling problem in ListLine Plot -- depends on the order of list ?