找回密码
 注册
关于网站域名变更的通知
查看: 631|回复: 1
打印 上一主题 下一主题

MATLAB使用自定义的欧拉法求解常微分方程组

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-3-10 10:36 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 House 于 2020-3-10 17:43 编辑 . M" J# T6 _  G+ f. p1 [

' A: _$ N6 a& E- d- z  E; |; ]MATLAB使用自定义的欧拉法求解常微分方程组
9 [4 O, N! M( D& m3 D& f
3 s3 v  L/ m5 S2 W* @  }
6 z( `' ]- j: X- T8 C4 `6 G& X' [2 t' w; G6 h2 V
function F=f(t,Y)+ }. e# ^# [  [* `; F
% 定义待求的微分方程组
& D6 P. d5 u8 fx=Y(1);
2 m8 O$ {2 ]! y# _0 W5 oy=Y(2);
5 n, N. e. @; {4 u7 Uf1=3*y;, I7 Z- x+ b; s( M& S# @
f2=(1-x^2)*y-x;: \& W) y* A8 b5 h
F=[f1;f2];
( ~* h$ R& {9 S7 P: M" Eend9 @( P3 i5 I3 [
6 ~* D+ H! |+ C; E4 D$ s: p# l" \

4 E: o1 x" F+ Q$ g. {%% 定义计算的步长, 设置变量的初始值/ H! [" p7 e0 b% }6 p
clear;clc;close all. ~+ K# s; v2 N3 j' q; M1 c# K
Delta=0.001;      % 定义步长  X& S- r- v$ W) e
t=0: Delta :20;     % 定义自变量 t) X2 c* _! c& v2 I7 F
n=length(t);
6 ~6 d, K$ n4 O, c& CY(:,1)=[2;0];     % 定义 x y 的初始值  x6 z' s) y( b
8 J& h/ z- z1 }/ d- j2 f& E
%% 自定义欧拉法, 求解微分方程组9 a* r2 ?. d" M3 N
for k=1:n-1% i0 V6 A/ f: c* K4 y4 X' h
    Y(:,k+1)=Y(:,k)+Delta*f(t(k),Y(:,k));
) k# }2 @" T. zend
* m+ Y7 M3 I0 Wx=Y(1,: );
: q5 y3 {; P* K5 [y=Y(2,: );' l8 I* f# m2 K* {8 b* \  ]
9 g" `7 g! H6 {. A' h6 O7 u) G/ O% d6 G
%% 绘制 x y 的求解结果
8 d1 H# |2 w6 O% E# I5 ~figure
1 T, D4 l" S$ X0 _: J6 b# Uset(gcf,'units','normalized','position',[0.15 0.2 0.7 0.6]);  % 设置 figure 窗口的位置和尺寸! l4 l, G5 \! y. [) Y
subplot(1,2,1)  d4 [* U$ q8 w# |7 K& B
plot(t,x,'b')6 I; L2 i3 u% M4 M, {
xlabel('t')" O' o* _3 s% ^  T/ \. L
ylabel('x')& P+ b. A. H' W0 {+ g
0 k) p9 W* G1 o  {! y
subplot(1,2,2)
& l% p% }1 v) b. aplot(t,y,'r')  o, P& G3 ^/ E& C$ Z! t
xlabel('t')
. _$ }* ]1 z: Q. v1 h5 k. U. Zylabel('y')
% {& L; m4 F* I* M3 Q9 N
( a+ }4 F0 u7 m9 L+ p$ y
- m. A  V+ ~3 E+ `2 R% c
* M4 o& j# s2 i: A, p

该用户从未签到

2#
发表于 2020-3-10 17:43 | 只看该作者
谢谢楼主分享的代码。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-5 02:41 , Processed in 0.109375 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表