Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2009-04-23
年龄: 38
帖子: 4
声望力: 0 ![]() |
![]()
程序语句如下
function y=temper clear alt=xlsread('f:\0811252045alt');... sig=xlsread('f:0811252045sig'); syms pz pz0 z z0 nz0 jf tz0 tz h=0;g=9.75;m=1;r=1;z0=47400; for i=1:1024; h=h+1; z=alt(h);pz=sig(h); nz=((pz*(z^2))/(pz0*(z0^2)))*nz0; jf=g*nz; int(jf,z,z0); tz=(tz0*nz0+m/r*jf)/nz end 这么运行的话没有问题,但是增加了几个已知量之后,程序如下 function y=temper clear alt=xlsread('f:\0811252045alt');... sig=xlsread('f:0811252045sig'); syms pz pz0 z z0 nz0 jf tz0 tz h=0;g=9.75;m=1;r=1;z0=47400;nz0=1.43e-3;... tz0=270.65;nz=1.37e-3;pz0=347; for i=1:1024; h=h+1; z=alt(h);pz=sig(h); nz=((pz*(z^2))/(pz0*(z0^2)))*nz0; jf=g*nz; int(jf,z,z0); tz=(tz0*nz0+m/r*jf)/nz end 运行显示 ??? Function 'int' is not defined for values of class 'double'. Error in ==> temper at 12 int(jf,z,z); 貌似是数据类型的问题吧?但是用double也不行,想请教一下这种情况应该怎么定义数据类型才能使积分正常运行?请高手指教! |
![]() |
![]() |