Glam Prestige Journal

Bright entertainment trends with youth appeal.

$\begingroup$

How do you plot the direction (vector) field of a second-order homogeneous ode using Matlab?

I've already used MATLAB to check the solution to the ode and I've tried to use tutorials online to plot the direction (vector) field, but haven't had any luck. Here's what I have done in MATLAB:

eqn1 = 'D2x + 5*Dx + 4*x = 0';
x = dsolve(eqn1, 't')

The above gives me the correct solution to the second-order ode, but isn't helpful for plotting the direction (vector) field. I'm new to MATLAB, so any help would be greatly appreciated.

$\endgroup$ 4

2 Answers

$\begingroup$

The second order ODE $X'' +5X'+4X =0$ rewrites as a first-order ODE system. Indeed, setting $(x,y)=(X,X')$, one has \begin{aligned} \frac{\text{d}x}{\text{d}t} &= y \, ,\\ \frac{\text{d}y}{\text{d}t} &= -5y-4x \, . \end{aligned} The phase-space plot can then be obtained in a similar manner as described in this post, e.g. using Matlab's quiver function.

$\endgroup$ $\begingroup$

This is what I did, using help from above, in order to accomplish the task:

% set the domain and subintervals in each direction
xdom = linspace(-2,2,25);
ydom = linspace(-2,2,25);
% generate mesh of domain
[X,Y] = meshgrid(xdom,ydom);
% dx/dt
U = Y;
% dy/dt
V = (-5*Y - 4*X);
quiver(X,Y,U,V,'r')

The second-order ode was rewritten as a system of first-order odes and then those were plotted.

$\endgroup$

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy