資源簡介
MATLAB使用歐拉Euler法求解微分方程組
部分源碼
clear;clc
c=2/3; %設置c的值
x(1)=0.1; %設置x初值為0.1
y(1)=0.3; %設置y初值為0.3
h=0.05; %設置步長為0.05

代碼片段和文件信息
clear;clc
c=2/3;??%設置c的值
x(1)=0.1;??%設置x初值為0.1
y(1)=0.3;??%設置y初值為0.3
h=0.05;????%設置步長為0.05
%for循環:根據Euler法,求解微分方程組
for?i=1:1000
????x(i+1)=x(i)+h*(x(i)*(c-x(i)/y(i)));
????y(i+1)=y(i)+h*(y(i)*(1-y(i))-x(i)*y(i));
end
t=0:h:1000*h;???%計算時間
plot(tx)???????%繪制x曲線
hold?on???????
plot(ty‘r‘)???%繪制y曲線
xlabel(‘time‘)??%設置x軸的標簽
ylabel(‘value‘)?%設置y軸的標簽
legend({‘x‘‘y‘})??%設置圖例
title(‘time?evolution?plot‘)??%設置圖形的標題
figure???
plot(xy)???%繪制phase圖
title(‘phase?plane?plot‘)??%設置標題
xlabel(‘x‘)???%設置x軸的標簽
ylabel(‘y‘)???%設置y軸的標簽
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????637??2018-04-21?18:38??MATLAB使用歐拉Euler法求解微分方程組?源程序代碼\chengxu.m
?????目錄???????????0??2018-04-21?18:38??MATLAB使用歐拉Euler法求解微分方程組?源程序代碼\
評論
共有 條評論