用x、y等参线和解曲线在Matlab中绘制相图

用x、y等参线和解曲线在Matlab中绘制相图,matlab,Matlab,您好,我在Matlab中绘制了dx/dt=-x和dy/dt=(y-1)^2*y*(x-1)的相图。是否有更好的方法来实现这一点,或者为绘图中的每个部分添加一些初始条件和解决方案曲线?我觉得这大部分是“手工”完成的。 谢谢 clf;clear;clc; [x,y] = meshgrid(-3:0.3:3); dx = -x; dy = (y-1).^2.*(y).*(x-1); r = (dx.^2 + dy.^2).^0.5; udx = dx./r; udy = dy./r; grid

您好,我在Matlab中绘制了dx/dt=-x和dy/dt=(y-1)^2*y*(x-1)的相图。是否有更好的方法来实现这一点,或者为绘图中的每个部分添加一些初始条件和解决方案曲线?我觉得这大部分是“手工”完成的。 谢谢

clf;clear;clc;

[x,y] = meshgrid(-3:0.3:3);
dx = -x;
dy = (y-1).^2.*(y).*(x-1);

r = (dx.^2 + dy.^2).^0.5;
udx = dx./r;
udy = dy./r;

grid on;hold on;

%x isoclines: x = 0 (y axis)
yline(0,'linew',1);

%y isoclines: y = 1; y = 0 (x axis), x = 1
xline(1,'linew',1)
xline(0,'linew',1);
yline(1,'linew',1)

quiver(x,y,udx,udy,'r')
plot(0,0,'ob','linew',3)
plot(0,1,'og','linew',3)