Re: How to get data from solvin' numerically differential
- To: mathgroup at smc.vnet.net
- Subject: [mg104175] Re: [mg104129] How to get data from solvin' numerically differential
- From: ÐÐÑÐÐÐ ÐÐÐÐÐÐÐÐÐ <shalm89 at gmail.com>
- Date: Thu, 22 Oct 2009 02:17:14 -0400 (EDT)
- References: <520d9b5f0910200910x2d7ac379i9b03eeec3cc5dd30@mail.gmail.com>
Thank you, Bob. 2009/10/21 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]]; > > 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=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: > > ============= > 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 > > -- Best regards, Mikhail Shalaginov.