r2007b和r2012b中的不同答案

时间:2014-01-22 00:06:11

标签: matlab

num = 10 ; 
den = [1 2 10] ; 
stepsize = 0.00001 ; 

g = tf(num,den) ; 
t = 0:stepsize:5 ;
y = step(g,t) ;

figure(1) ;

plot(t,y) ; 
iter = size(t,2) ; 

for i = 1:iter-1
    if( y(i+1) < y(i) )
        peak = y(i) ; 
        peaktime = i*stepsize ; 
        break ;
    end
end

fprintf('%20s : %.4f\n','Peak',peak );
fprintf('%20s : %.4f\n','Peaktime',peaktime);

我在我的大学部门实验室运行了这个代码,其中安装了MATLAB r2007我得到Peak的值为1.3489但是在我自己的系统上有r2012b,我运行了相同的代码和得到Peak的值为1.3509

有人可以向我介绍为什么会出现这种差异吗?

PS:这个程序只找到给定传递函数的阶跃响应的峰值和峰值时间,在这种情况下是

                                     10
                               --------------
                               s^2 + 2*s + 10 

0 个答案:

没有答案