24小时热门版块排行榜    

查看: 291  |  回复: 5
当前主题已经存档。

xwz118

金虫 (正式写手)

[交流] 【求助】请大家帮我分析一下下面这个程序哪里出错了

请高手给我看看这个程序出错在哪里?如果改正,谢谢!


v=0.45:0.0001:3;
G=230000;
g=207000;
k=[66655 83318 111091];
f=0.08;
for x=1:1:length(k)
fkp(x)=(0.999*k(x)*g+0.1094*f*k(x)*g)./(0.1094*k(x)+g*v)-G*f;
end
delta_p=[8000000 15000000 0 0];
Cs=0.8e-9;
Csm=2.0e-9;
u=0.051;
n=2200;
Cv=0.2e+6;
Cvm=0.6e+6;
Cf=0.01;
Cfm=0.015;
Tc=5;
Vmax=45e-6;
nc=0.9;
rd=0.3223;
for i=1:1:length(delta_p)
for j=1:1:length(v)
    npv(i,j)=1-(1.07882*Cs)*(60*delta_p(i))/((u*n)*v(j));
    npt(i,j)=1/(1+(Cv*(u*n)/(60*delta_p(i)+Cf+(2*3.141592*Tc)/(delta_p(i)*Vmax))*(1.07882/v(j))));
    np(i,j)=npv(i,j)*npt(i,j);
    nmv(i,j)=1/(1+(Csm*delta_p(i))/(u*(v(j)/(0.377*rd*0.91))));
    nmt(i,j)=1-Cfm-(Cvm*(u*(v(j)/(0.377*rd*0.95))/delta_p(i)));
    nm(i,j)=nmv(i,j)*nmt(i,j);
    n1(i,j)=np(i,j)*nm(i,j)*nc*0.8;
end
end
[Av,H1,H2] = plotyy(v,fkp,v,n1,'plot');
set(H1,'LineStyle','--')
set(H2,'LineStyle',':')
title('潜孔钻机牵引力特性曲线')
xlabel('潜孔钻机行走速度(km/h)')
set(get(Av(1),'Ylabel'),'String','牵引力(N)')
set(get(Av(2),'Ylabel'),'String','行走系统总效率')
legend('8MPa,15MPa')
grid on
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

woshilsh

荣誉版主 (职业作家)

优秀版主


xwz118(金币+1,VIP+0):谢谢 4-12 15:47
fkp(x)=(0.999*k(x)*g+0.1094*f*k(x)*g)./(0.1094*k(x)+g*v)-G*f;
你的程序这一段有问题,左边只是一个值赋给fkp(1or2or3)
右边呢由于v的缘故,就成了个向量!呵呵
修改下吧!
[center][url=http://www.91cool.net/][img]http://id.91cool.net/sign/?name=小木虫印&say=各位版主辛苦了![/img][/url][/center]
2楼2009-04-12 14:37:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

woshilsh

荣誉版主 (职业作家)

优秀版主

★ ★ ★ ★
kuhailangyu(金币+2,VIP+0):替楼主感谢! 4-12 15:15
xwz118(金币+2,VIP+0):我想把这些曲线都在同个图里一起显示 4-12 15:48
正好我在弄类似的东东,帮你改了改
v=0.45:0.0001:3;
G=230000;
g=207000;
k=[66655 83318 111091];
f=0.08;
j=length(v)
for x=1:1:length(k)
    for y=1:j
        fkp(x,y)=(0.999*k(x)*g+0.1094*f*k(x)*g)./(0.1094*k(x)+g*v(j))-G*f;
    end
end
delta_p=[8000000 15000000 0 0];
Cs=0.8e-9;
Csm=2.0e-9;
u=0.051;
n=2200;
Cv=0.2e+6;
Cvm=0.6e+6;
Cf=0.01;
Cfm=0.015;
Tc=5;
Vmax=45e-6;
nc=0.9;
rd=0.3223;
for i=1:1:length(delta_p)
for j=1:1:length(v)
    npv(i,j)=1-(1.07882*Cs)*(60*delta_p(i))/((u*n)*v(j));
    npt(i,j)=1/(1+(Cv*(u*n)/(60*delta_p(i)+Cf+(2*3.141592*Tc)/(delta_p(i)*Vmax))*(1.07882/v(j))));
    np(i,j)=npv(i,j)*npt(i,j);
    nmv(i,j)=1/(1+(Csm*delta_p(i))/(u*(v(j)/(0.377*rd*0.91))));
    nmt(i,j)=1-Cfm-(Cvm*(u*(v(j)/(0.377*rd*0.95))/delta_p(i)));
    nm(i,j)=nmv(i,j)*nmt(i,j);
    n1(i,j)=np(i,j)*nm(i,j)*nc*0.8;
end
end
[Av,H1,H2] = plotyy(v,fkp(1,,v,n1,'plot');
set(H1,'LineStyle','--')
set(H2,'LineStyle',':')
title('潜孔钻机牵引力特性曲线')
xlabel('潜孔钻机行走速度(km/h)')
set(get(Av(1),'Ylabel'),'String','牵引力(N)')
set(get(Av(2),'Ylabel'),'String','行走系统总效率')
legend('8MPa,15MPa')
grid on

注意这里啊[Av,H1,H2] = plotyy(v,fkp(1,,v,n1,'plot');
fkp现在是3行x列的数组了
所以打印的时候,要分开打印,由于不知道你干什么,只好简单这样写了,你看看,有啥问题,大家再探讨!
[center][url=http://www.91cool.net/][img]http://id.91cool.net/sign/?name=小木虫印&say=各位版主辛苦了![/img][/url][/center]
3楼2009-04-12 14:41:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

woshilsh

荣誉版主 (职业作家)

优秀版主

kuhailangyu(金币+0,VIP+0):楼主等待您的解答! 4-12 16:18
那就直接plotyy(v,fkp,v,n1,'plot');看看是不是你的结果
[center][url=http://www.91cool.net/][img]http://id.91cool.net/sign/?name=小木虫印&say=各位版主辛苦了![/img][/url][/center]
4楼2009-04-12 15:53:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xwz118

金虫 (正式写手)

我试过,行不通
我需要这个图里有3个不同的fkp曲线
5楼2009-04-12 16:02:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

woshilsh

荣誉版主 (职业作家)

优秀版主

★ ★
xwz118(金币+2,VIP+0):谢谢 4-13 11:45
引用回帖:
Originally posted by xwz118 at 2009-4-12 16:02:
我试过,行不通
我需要这个图里有3个不同的fkp曲线

plotyy(v,fkp,v,n1,'plot')
根据你的程序,
fkp是3行25501列的矩阵
v是4行25501列矩阵
这样的话,你画的时候按照plotyy(x,y1,x,y2,'plot')的语法,y1和y2按理应该是同一类型的值,你这里一个3行,一个4行,啥意思呢?
同时不太明白你想画什么?
感觉隔行如隔山啊!呵呵,愚钝,连你这东西都理解不了,希望有弟兄来帮忙下
[center][url=http://www.91cool.net/][img]http://id.91cool.net/sign/?name=小木虫印&say=各位版主辛苦了![/img][/url][/center]
6楼2009-04-12 20:16:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 xwz118 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见