How To Plot Directional Field of 2nd Order Differential Equation IVP
7 views (last 30 days)
Show older comments
Jordan Stanley
on 11 Apr 2022
Commented: Jordan Stanley
on 11 Apr 2022
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!
0 Comments
Accepted Answer
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
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.
More Answers (0)
See Also
Categories
Find more on Vector Fields 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!