Clear Filters
Clear Filters

How To Plot Directional Field of 2nd Order Differential Equation IVP

11 views (last 30 days)
Hello,
I have the second order differential equation initial value problem, y'' + 2y' + y = 0, y(-1) = 0, y'(0) = 0.
In MATLAB, I need to plot the directional field of the solution to the equation without the initial conditions.
I have used the meshgrid() command so far and know that I have to use the quiver() command but I don't know how to enter what I need as parameters to plot the solution.
Here is what I have so far...
% Finds solution to the DE
syms y(x)
Dy = diff(y);
D2y = diff(y,2);
ode = D2y + 2*Dy + y == 0;
ySol = dsolve(ode)
% Sets up directional field
[x,y]=meshgrid(-3:0.3:3,-2:0.3:2);
quiver() %Not sure what to include here.
Any help is appreciated!

Accepted Answer

Sam Chak
Sam Chak on 11 Apr 2022
Edited: Sam Chak on 11 Apr 2022
Basically, it should look something like this:
[X, Y] = meshgrid(-3:6/14:3, -3:6/14:3);
U = Y; % x1' = y'
V = - 2*Y - X; % x2' = y'' = - 2*y' - y
quiver(X, Y, U, V)
% quiver(X, Y, U, V, 1.5) % can adjust arrow size
xlabel('x')
ylabel('y')
  3 Comments
Sam Chak
Sam Chak on 11 Apr 2022
Edited: Sam Chak on 11 Apr 2022
Well, the ODE can be rewritten in the form of a state-space representation.
Begin by defining
Taking the time derivative yields
.
Rewritting the dynamics in system states
.
Back to quiver function, this quiver(X, Y, U, V) command plots arrows with directional components U and V at the Cartesian coordinates specified by the grid of X and Y values.
The directional components U and V mean the motion of the the point that extends horizontally according to U vector, and extends vertically according to V vector. Naturally, these imply the first-order equations. So, if we assign
then
.
Hope this explanation is helpful for you to plot the direction field of the desired ODEs.

Sign in to comment.

More Answers (0)

Categories

Find more on Numerical Integration and Differential Equations in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!