Differential Equations in Mathematica

In summary, the conversation discusses ways to plot slope fields and integral curves using Mathematica. One method involves using a standard package called Graphics`PlotField`, while another involves defining a function using DSolve or NDSolve. The conversation also includes a discussion on a quicker way to plot the results, but the shorter version has a few typos that need to be corrected.
  • #1
amcavoy
665
0
I know how to solve them in Mathematica, but is there a way I can plot slope fields / integral curves?
 
Physics news on Phys.org
  • #2
apmcavoy said:
I know how to solve them in Mathematica, but is there a way I can plot slope fields / integral curves?
yes there is
 
  • #3
Well, how would I do it?
 
  • #4
There is a standard package
Graphics`PlotField`
that may be helpfull
all you need for particular curves is to define a function using DSolve or NDSolve
f[x_,x0_,y0_]:=NDSolve[{y'[x]+y[x]==0,y[x0]==y0},y[x],{x,y0,10}][1,1,2]
for the slope field use the DE to get the slope
 
  • #5
Hey Apmcavoy, can you follow this (note the double equal signs):

Code:
<<Graphics`PlotField`
<<Graphics`Arrow`


sol1=NDSolve[{y'[x]==y[x]-x,y[0]==0.5},y,{x,0,3}];
fsol[x_]:=Evaluate[y[x]/.Flatten[sol1]];
xpt=2.6
xed=2.7
ypt=fsol[2.6]
yed=fsol[2.7]
a1=Graphics[Arrow[{xpt,ypt},{xed,yed}]];

pv=PlotVectorField[{1,y-x},{x,-3,3},{y,-3,3},PlotRange->{{-4,4},{-4,4}},
    PlotPoints->25,Axes->True]
pt1=Plot[fsol[x],{x,0,2.7},PlotStyle->{{Thickness[0.01]}}]
Show[{pv,pt1,a1}]

A plot of the results is attached. If so, can you post the same for your differential equation?

Edit: Alright, you don't need some of that stuf: arrow tip at the end of the curve, the axes->True, thickness, plotstyle, plotpoints. Just take them out to cut it down.
 

Attachments

  • slope field.JPG
    slope field.JPG
    26.3 KB · Views: 499
Last edited:
  • #6
I'm not on my home computer now, but I will post it tomorrow most likely. I would have thought Wolfram would have a quicker way to do this, but I guess this is it. Thanks a lot saltydog for the information! I will try that out as soon as possible.
 
  • #7
apmcavoy said:
I'm not on my home computer now, but I will post it tomorrow most likely. I would have thought Wolfram would have a quicker way to do this, but I guess this is it. Thanks a lot saltydog for the information! I will try that out as soon as possible.

Quicker? How about this stripped-down version:

Code:
<<Graphics`PlotField`

sol1=NDSolve[{y'[x]==y[x]-x,y[0]==0.5},y,{x,0,3}];
pt1=Plot[Evaluate[y[x]/.sol1]

pv=PlotVectorField[{1,y-x},{x,-3,3},{y,-3,3}]

Show[{pt1,pv}]
 
  • #8
The longer way worked great. However, I couldn't get the cut-down version to work properly. Any ideas why? Thanks saltydog.
 
  • #9
apmcavoy said:
The longer way worked great. However, I couldn't get the cut-down version to work properly. Any ideas why? Thanks saltydog.

Alright I'm sorry. That's what I get for posting it without trying it first. Some typos: (no x range in Plot). Also the <<Graphics line should be in it's own cell as it needs to be executed only once to load the package (PlotField is a library of functions).

Code:
<<Graphics`PlotField`

sol1=NDSolve[{y'[x]==y[x]-x,y[0]==0.5},y,{x,0,3}];
pt1=Plot[Evaluate[y[x]/.sol1,{x,0,3}]

pv=PlotVectorField[{1,y-x},{x,-3,3},{y,-3,3}]

Show[{pt1,pv}]
 

Related to Differential Equations in Mathematica

1. What are differential equations and why are they important in mathematics?

Differential equations are mathematical equations that describe the relationship between a function and its derivatives. They are important because they allow us to model and understand various physical and natural phenomena, such as the motion of objects, population growth, and chemical reactions.

2. How can Mathematica be used to solve differential equations?

Mathematica is a powerful computational software that can solve differential equations numerically and symbolically. It has built-in functions and algorithms specifically designed for solving differential equations, making it an efficient tool for researchers and scientists.

3. Can Mathematica handle systems of differential equations?

Yes, Mathematica has the capability to handle systems of differential equations, including ordinary and partial differential equations. It can also solve initial value problems and boundary value problems for systems of any size.

4. Are there any limitations to using Mathematica for solving differential equations?

While Mathematica is a powerful tool for solving differential equations, it does have limitations. It may not be suitable for solving highly complex or nonlinear equations, and the accuracy of the solutions may vary depending on the chosen numerical methods and parameters.

5. Can Mathematica visualize solutions to differential equations?

Yes, Mathematica has built-in visualization tools that can plot the solutions to differential equations in both 2D and 3D. This allows for a better understanding of the behavior of the solutions and can aid in further analysis and interpretation.

Similar threads

  • MATLAB, Maple, Mathematica, LaTeX
Replies
4
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
9
Views
314
  • MATLAB, Maple, Mathematica, LaTeX
Replies
2
Views
1K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
5
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
3
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
4
Views
890
  • MATLAB, Maple, Mathematica, LaTeX
Replies
1
Views
551
  • MATLAB, Maple, Mathematica, LaTeX
Replies
6
Views
553
  • MATLAB, Maple, Mathematica, LaTeX
Replies
2
Views
697
  • MATLAB, Maple, Mathematica, LaTeX
Replies
3
Views
2K
Back
Top