Azzera filtri
Azzera filtri

How does one plot phase portraits for systems of differential equations?

82 visualizzazioni (ultimi 30 giorni)
I'm sort of new to this whole process and a lof of my homework for diff eq's asks for us to use technology to plot some of the solutions.
We just started last week on system of diff eq's and I wanted to learn how to do this with MATLAB. Be easy on me as I have very limited knowledge of the language.
The example I have on hand of something I've been asked to plot is the following:
Where x is a function of t.
Any help would be greayly appreciated. Thank in advance!

Risposte (2)

Ameer Hamza
Ameer Hamza il 19 Apr 2020
Modificato: Ameer Hamza il 19 Apr 2020
See this: to understand how to make phase portraits in MATLAB. The following shows an example without using for-loop for your equations.
[X1,X2] = meshgrid(-5:0.5:5);
xs = arrayfun(@(x,y) {odeFun([],[x,y])}, X1, X2);
x1s = cellfun(@(x) x(1), xs);
x2s = cellfun(@(x) x(2), xs);
quiver(x1s, x2s)
axis tight equal;
function dxdt = odeFun(t,x)
dxdt(1) = 5*x(1)-9*x(2);
dxdt(2) = 1*x(1)-5*x(2);
  2 Commenti
Frantisek Stloukal
Frantisek Stloukal il 29 Apr 2021
Hi, how do i get the axis in the right place ? The stable point should be [0,0] not [11,11]... Thanks for answer.
Ahsan Mujtaba
Ahsan Mujtaba il 5 Mag 2021
In this question, I wanted to ask that the all the possible initial consitions are being plotted?

Accedi per commentare.

Brian Hong
Brian Hong il 26 Gen 2022
There are also apps that you can use to plot your phase portrait. Here's one that we created recently:


Scopri di più su Symbolic Math Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by