标题:询问:matlab中输出中间值的命令是什么啊?
只看楼主
Ave000
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-11-17
结帖率:0
已结贴  问题点数:10 回复次数:4 
询问:matlab中输出中间值的命令是什么啊?
matlab中输出中间值的命令是什么啊?
搜索更多相关主题的帖子: 询问 输出 命令 matlab 
2009-11-17 14:53
johnliu1983
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:14
专家分:117
注 册:2009-10-9
得分:10 
想要那个值你就用disp()去显示
2009-11-17 15:23
Ave000
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-11-17
得分:0 
function rk(A,x,h,y0)
i=1;
y(i,:)=y0;
m=length(A);
b=x(length(x));
while x(i)<b
     a=[x(i),y(i,:)];
    for l=1:m
         k1(l)=eval(A{l},a);
    end
     a=[x(i)+h/2,y(i,:)+h/2*k1];
    for l=1:l
         k2(l)=eval(A{l},a);
    end
     a=[x(i)+h/2,y(i,:)+h/2*k2];
    for l=1:m
         k3(l)=eval(A{l},a);
    end
     a=[x(i)+h,y(i,:)+h*k3];
    for l=1:m
         k4(l)=eval(A{l},a);
    end
     y(i+1,:)=y(i,:)+h/6*(k1+2*k2+2*k3+k4);
     i=i+1;
end
y,k1,k2,k3,k4
2009-11-17 15:33
Ave000
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-11-17
得分:0 
我想把中间过程的k1,k2,k3,k4和yi值都显示出来,结果不行如下:
y1='-10*a(2)-9*a(3)+8';
y2='-9*a(2)-8*a(3)+7';
A=[{y1},{y2}];
rk(A,0:0.05:1,0.05,ones(1,2))

y =

    1.0000    1.0000
    0.6417    0.6716
    0.4972    0.5345
    0.4403    0.4758
    0.4193    0.4491
    0.4129    0.4356
    0.4126    0.4275
    0.4148    0.4216
    0.4181    0.4166
    0.4217    0.4120
    0.4255    0.4075
    0.4294    0.4030
    0.4334    0.3986
    0.4373    0.3941
    0.4413    0.3897
    0.4453    0.3852
    0.4493    0.3807
    0.4533    0.3762
    0.4574    0.3717
    0.4614    0.3672
    0.4655    0.3627


k1 =

    0.0809   -0.0904


k2 =

    0.0811   -0.0906


k3 =

    0.0811   -0.0906


k4 =

    0.0812   -0.0907
2009-11-17 15:35
Ave000
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2009-11-17
得分:0 
请大侠指教,谢谢
2009-11-17 15:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-292612-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.399107 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved