- 积分
- 32
- 注册时间
- 2004-9-29
- 仿真币
-
- 最后登录
- 1970-1-1
|
本帖最后由 shamohu 于 2009-5-11 14:02 编辑
1stOpt 3.0新增求解常微分方程的功能,包括初值和边值问题,使用起来非常方便。
ODE方程组:
u' = du/dx = v;
v' = dv/dx = x+(1-x/5)*u*v;
边值条件:x = [1,3], u(1) = 2, u(3) = -1
1stOpt代码:
Variable u=[2,-1], x=[1,3], v;
ODEOptions = [SN=10,A=0,P=30];
Plot u, v, v';
ODEFunction u' = v;
v'=x+(1-x/5)*u*v;
结果:
常微分方程(边值问题):
1: u' = du/dx = v
2: v' = dv/dx = x+(1-x/5)*u*v
目标函数: 1.49144014893348E-30
边值估算:
v(x=1): -2.01607394854374
算法: 龙格-库塔-费尔博格法(Runge-Kutta-Fehlberg Method)
步长值: 0.2
步长数: 10
种群数: 10
结果:
x u(x) v(x) u'(x) v'(x)
1 2 -2.01607394854374 -2.01607394854374 -2.22571831766999
3 -1.00000000008959 0.790910334116649 0.790910334116649 2.683635866325
结果过程:
x u(x) v(x) u'(x) v'(x)
1 2 -2.01607394854374 -2.01607394854374 -2.22571831766999
1.2 1.55517765393294 -2.41301423203579 -2.41301423203579 -1.65202601733601
1.4 1.04594596975571 -2.64376852377929 -2.64376852377929 -0.590972103338049
1.6 0.51379027228582 -2.6352233331823 -2.6352233331823 0.679312562555016
1.8 0.00823984053141154 -2.38320878978019 -2.38320878978019 1.78743215335626
2 -0.427176144084519 -1.94723010285596 -1.94723010285596 2.49908614818999
2.2 -0.764009916140123 -1.41103557104084 -1.41103557104084 2.80370529424892
2.4 -0.989611546513864 -0.844053768977779 -0.844053768977779 2.83434838494266
2.6 -1.10221313182391 -0.284818259688794 -0.284818259688794 2.75068660448587
2.8 -1.10475206617042 0.256870777065988 0.256870777065988 2.67513745045092
3 -1.00000000008959 0.790910334116649 0.790910334116649 2.683635866325 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|