24小时热门版块排行榜    

查看: 1151  |  回复: 3

monitor2885

至尊木虫 (知名作家)


[交流] 【求助】ode45方程中的参数

function testfunction
global u1 u2
u1=[1;2;3;4;5];
u2=[6;7;8;9;10];
for i=1:5
[t,y]=ode45(@fun,[0 20],[1 2]);
z1(i)=y(:,1);
z2(i)=y(:,2);
end

function dy=fun(t,y)
global u1 u2
dy=zeros(2,1);
dy(1)=u1(i)*y(2);
dy(2)=u2(i)*(1-y(1)^2)*y(2)-y(1);


u1和u2是微分方程的参数,是5*1的数组。我要利用ode45函数运行5次,即for=1:5,第一次运行,参数u1和u2分别是1和6,即u1(1)和u2(1);第二次运行,参数u1和u2分别是2和7,即u1(2)和u2(2)……以此类推。每次运行的结果y1和y2都储存到z1和z2里面。请问,上面的程序需要哪些改动?谢谢!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
monitor2885(金币+5): 运行对了,怎么把每次运行的结果y1和y2都储存到z1和z2里面? 2011-02-08 03:32:41
引用回帖:
Originally posted by monitor2885 at 2011-02-07 15:00:54:
function testfunction
global u1 u2
u1=[1;2;3;4;5];
u2=[6;7;8;9;10];
for i=1:5
[t,y]=ode45(@fun,[0 20],[1 2]);
z1(i)=y(:,1);
z2(i)=y(:,2);
end

function dy=fun(t,y)
global u1 u2
dy=zeros ...

用参数来实现吧。
CODE:
function testfunction

u1 = [ 1; 2; 3; 4; 5 ];
u2 = [ 6; 7; 8; 9; 10 ];
for i = 1 : 5
    [ t, y ] = ode45(@( t, y )fun( t, y, u1( i ), u2( i ) ), [ 0 20 ], [ 1 2 ] );
%     z1( i ) = y( :, 1 );
%     z2( i ) = y( :, 2 );
    plot( t, y );
    hold on
end

function dy = fun( t, y, u1, u2 )

dy = zeros( 2, 1 );
dy( 1 ) = u1 * y( 2 );
dy( 2 ) = u2 * ( 1 - y( 1 ) ^ 2 ) * y( 2 ) - y( 1 );

2楼2011-02-07 18:39:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

monitor2885

至尊木虫 (知名作家)


引用回帖:
Originally posted by xiegangmai at 2011-02-07 18:39:46:


用参数来实现吧。

[code]
function testfunction

u1 = [ 1; 2; 3; 4; 5 ];
u2 = [ 6; 7; 8; 9; 10 ];
for i = 1 : 5
    [ t, y ] = ode45(@( t, y )fun( t, y, u1( i ), u2( i ) ), [ 0 20 ], [ 1 ...

运行对了,怎么把每次运行的结果y1和y2都储存到z1和z2里面?
3楼2011-02-09 02:38:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
monitor2885(金币+5): cell是个做什么的函数呢 2011-02-10 02:30:53
引用回帖:
Originally posted by monitor2885 at 2011-02-09 02:38:00:

运行对了,怎么把每次运行的结果y1和y2都储存到z1和z2里面?

因为每次计算出的结果中数组维度大小不一样,可以用cell或struct实现。
例如用cell数据:
CODE:
function testfunction

u1 = [ 1; 2; 3; 4; 5 ];
u2 = [ 6; 7; 8; 9; 10 ];
z1 = cell( 5, 1 );
z2 = cell( 5, 1 );
for i = 1 : 5
    [ t, y ] = ode45(@( t, y )fun( t, y, u1( i ), u2( i ) ), [ 0 20 ], [ 1 2 ] );
    z1{ i, 1 } = y( :, 1 );
    z2{ i, 1 } = y( :, 2 );
    plot( t, y );
    hold on
end

function dy = fun( t, y, u1, u2 )

dy = zeros( 2, 1 );
dy( 1 ) = u1 * y( 2 );
dy( 2 ) = u2 * ( 1 - y( 1 ) ^ 2 ) * y( 2 ) - y( 1 );

4楼2011-02-09 09:21:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 monitor2885 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 上海工程技术大学激光智能制造课题组|2027级博士研究生招生公告 +5 水士口 2026-09-16 6/300 2026-09-16 12:32 by ljc050512
[考博] 上海工程技术大学激光智能制造课题组招收博士研究生 +8 两三岁ss 2026-09-14 8/400 2026-09-16 09:46 by 水士口
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 vZfe6xYu34yj 2026-09-14 3/150 2026-09-16 08:51 by SjQobnC04j06
[考博] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 Aj1rhIDL5ixY 2026-09-14 4/200 2026-09-16 07:48 by i0IGWqQuchto
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 6F5UbRU2I5hL 2026-09-14 5/250 2026-09-16 04:51 by LH5NkK5Ud4bh
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 s3fFTmArrBt6 2026-09-13 5/250 2026-09-16 03:59 by DgNGHc3h5tPl
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 s3fFTmArrBt6 2026-09-13 7/350 2026-09-16 03:26 by DgNGHc3h5tPl
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 3n8v2C8RimXI 2026-09-13 5/250 2026-09-16 03:02 by DgNGHc3h5tPl
[考研] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +6 QUjhNVAcOSff 2026-09-13 6/300 2026-09-16 02:02 by DgNGHc3h5tPl
[博后之家] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 Aj1rhIDL5ixY 2026-09-14 3/150 2026-09-15 20:59 by zNcEhTcH7ihq
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 Aj1rhIDL5ixY 2026-09-14 3/150 2026-09-15 20:14 by zNcEhTcH7ihq
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 6F5UbRU2I5hL 2026-09-14 3/150 2026-09-15 17:15 by CgyNCDVNhGVg
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +7 s3fFTmArrBt6 2026-09-14 7/350 2026-09-15 16:23 by CgyNCDVNhGVg
[找工作] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +6 3n8v2C8RimXI 2026-09-13 6/300 2026-09-15 15:02 by CgyNCDVNhGVg
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 s3fFTmArrBt6 2026-09-13 4/200 2026-09-15 06:50 by 5BDX0d0WFp7t
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +6 3n8v2C8RimXI 2026-09-13 6/300 2026-09-15 05:50 by 5BDX0d0WFp7t
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 QUjhNVAcOSff 2026-09-13 4/200 2026-09-14 21:37 by vZfe6xYu34yj
[基金申请] 求教各位大神:2026教育部人文社科青年基金项目何时公示呀? +5 云宴山人 2026-09-10 7/350 2026-09-14 12:11 by ecnu2013
[找工作] 浙江师范大学是怎么坑我的 +6 recruit123 2026-09-09 6/300 2026-09-14 12:00 by 萨仁其其格
[考博] 西北工业大学材料学院电化学传感与催化课题组招收2027年推免研究生、博士生、博士后 +3 马方园 2026-09-10 4/200 2026-09-14 09:29 by Chem张zz
信息提示
请填处理意见