Para ecuaciones diferenciales
y ′ = 1 − y 2 y'=1-y^2 y′=1-y2
Dibuja su diagrama de fase, donde x ∈ [- 3, 3] x \ in [-3,3]X∈[ - 3 ,3 ] ,y ∈ [- 3.3] y \ in [-3.3]y∈[ - . 3 .. 3 ] , tamaño de pasoh = 0,2 h = 0,2h=0 . 2 , flecha longitudc = 0,01 c = 0,01C=0 . 0 1
Entonces el código MATLAB es
clc,clear,close all
c=0.01;
x_0=-3:0.2:3;
y_0=-3:0.2:3;
[x,y]=meshgrid(x_0,y_0);
d=sqrt(1+(1-y.^2).^2);
u=c./d;
v=c*(1-y.^2)./d;
quiver(x,y,u,v);
xlim([-3,3])
ylim([-3,3])
% 下面几行代码用来绘制初值为 y(0)=1.6 的数值解图像
% [X,Y]=ode45(@(x,y) 1-y.^2,[-3,3],[0,1.6]);
% hold on
% plot(X,Y(:,2),'-r',"LineWidth",2)
% hold off
%%%%%%%%%% 以下代码保存成 ode1.m 文件 %%%%%%%%%%
% function dy= ode1(~,y)
% dy = 1:1-y(2).^2;
% end
9 de febrero de 2021 20:35:54