数学建模社区-数学中国
标题:
求高手指教啊
[打印本页]
作者:
青枫林霰
时间:
2012-8-6 09:35
标题:
求高手指教啊
matlab中遇到ode45(,)是什么意思啊,可以举出例子吗?
作者:
shaox
时间:
2012-8-6 09:47
本帖最后由 shaox 于 2012-8-6 09:53 编辑
: R) K3 V% K; j4 n8 t
" z' K9 E. Q' i
ode45表示五分之四阶的龙格库塔芬尔格算法
X9 H, j* l$ R
例2-45 求解描述振荡器的经典的Ver der Pol微分方程
% ]0 g2 u% h/ B# A/ o, k( c
y(0)=1,y’(0)=0
" B5 t0 z% l" R: b/ p1 M
令x1=y,x2=dy/dt,则
& I9 |% P" d$ {- [* x @) d
dx1/dt = x2
; }/ S, n; f/ P* W
dx2/dt = μ(1-(x1)^2)*x2-x1
% U' T+ q- q; C% p( [1 {0 g
编写函数文件verderpol.m:
8 X2 y( E# t& {( ]
function xprime = verderpol(t,x)
6 n3 }. W8 U* X1 p) O. f
global MU
. o2 [$ W! T d+ ~* H
xprime = [x(2);MU*(1-x(1)^2)*x(2)-x(1)];
* r; w5 H/ L9 ]" t" D( k
再在命令窗口中执行:
& L z# [) }# n) K0 L, s
>>global MU
- `/ N7 h6 h/ c, k6 }4 R, k
>>MU = 7;
( ^) D9 \" x `7 U
>>Y0=[1;0]
4 l# ^! K4 w- g, w& X$ K8 B. d+ f
>>[t,x] = ode45(‘verderpol’,0,40,Y0);
; X) o+ v+ m5 ]2 p1 Q8 }
>>x1=x(:,1);x2=x(:,2);
. C# A" U0 [/ k( o) p, g G
>>plot(t,x1,t,x2)
# a( g- r0 e5 [2 V
图形结果为图2-20。
: W1 ^' G3 f1 a0 j1 O7 ]/ S
) L& y8 x* ^2 I. D- }8 p
图2-20 Ver der Pol微分方程图
0 \: I% V# a" q3 t# c' J
作者:
青枫林霰
时间:
2012-8-6 09:55
有参考书吗?推荐一下啊。我看得有2,3,4阶,没有看到5分之4阶啊。
作者:
shaox
时间:
2012-8-6 10:14
青枫林霰 发表于 2012-8-6 09:55
1 W6 Z6 Z7 M3 [/ z
有参考书吗?推荐一下啊。我看得有2,3,4阶,没有看到5分之4阶啊。
6 ?( j. d4 P( X: k, H
就是运用组合的4/5阶龙格库塔芬尔格算法
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5