Azzera filtri
Azzera filtri

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

11 visualizzazioni (ultimi 30 giorni)
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!

Risposta accettata

Sam Chak
Sam Chak il 11 Apr 2022
Modificato: Sam Chak il 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 Commenti
Sam Chak
Sam Chak il 11 Apr 2022
Modificato: Sam Chak il 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.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Numerical Integration and Differential Equations in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by