高feng亮jie吧 关注:28贴子:1,466
  • 9回复贴,共1
编程中step()函数是在0s时产生阶跃 simulink中模块step默认是在1s是产生阶跃 所以结果不一样


1楼2011-07-09 10:01回复
    num=[1 2];den=[1 10 1];feedback(num,den,1,-1)与
    num=[1 2];den=[1 10 1];g=tf(num,den);feedback(g,1)结果不一样
    原因:feedback(num1,den1,num2,den2,sign)
    feedback(num,den,1,-1)相当于反馈函数为-1 即feedback(g,-1)或feedback(g,-1,-1)
    而feedback(g,1)相当于feedback(g,1,-1)
    


    2楼2011-07-09 11:54
    回复
      是ltiview 不是 lti view


      3楼2011-07-11 19:38
      回复
        tou=[0 0.2 0.4];t=linspace(0,8,80);num=4;den=[1 2 4];for j=1:3 sys=tf(conv(num,[tou(j),1]),den);y(:,j)=step(sys,t);end;plot(t,y(:,1:3));grid on;
        没问题
        同类的
        wn=1;sigma=[0 0.2 0.4 0.6 0.9 1.2 1.5];num=wn*wn;t=linspace(0,20,200);for j=1:7 den=conv([1 0],[1 2*wn*sigma(j)]);s1=tf(num,den);sys=feedback(s1,1);y(:,j)=step(sys,t);end;plot(t,y(:,1:7));grid on
        出现错误 Subscripted assignment dimension mismatch
        经百度 ‘该错误可能跟你调用该函数时候所用的数组大小有关系,该错不一定必然出现,应当具体检查分析数组赋值时候数组的维数是否匹配。 ’ 把时间序列t=linspace(0,20,200)改短 t=linspace(0,6,80)没问题 很多不同的t形式都会出错
        原因不明!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


        4楼2011-07-11 20:58
        回复
          获得状态函数稳定值是dcgain(状态函数) 不是gcgain()
          eg:
          g2=tf([20],[1 4 20]);dcgain(g2)
          ans =
          1


          5楼2011-07-12 11:15
          回复
            纠结了 同样语句有时好使有时不好使


            6楼2011-07-12 12:41
            回复
              可以去死了 能不能分清冒号和分号啊啊啊啊啊 我说怎么TM的回事 老出错 y(:,1:6)::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


              7楼2011-07-12 15:02
              回复

                南京航空航天大学
                王正盛
                26
                pa =
                1.0e+004 *
                0.0016 0.0016 0.0016 0.0016
                0.0016 0.0015 -0.0140 -0.0563
                0.0016 -0.0140 -0.2549 -1.2089
                0.0016 -0.0563 -1.2089 -4.3779
                pm =
                1.0e-011 *
                -0.0077 0.0053 -0.0096 0.0430
                -0.0068 0.0481 -0.0110 0.1222
                0.0075 0.1400 -0.0095 0.2608
                0.0430 0.2920 -0.0007 0.4737
                说明
                :
                pm
                中的元素都很小
                它是运算误差造成的
                理论上它应该是零
                这就
                是著名的
                Caylay-Hamilton
                定理
                任何一个矩阵满足它自己的特征多项式
                例3用6阶多项式对区间[02.5]上的误差函数dte)x(yx
                t∫

                =
                0
                2
                2
                π
                进行最小二乘拟合解x=0:0.1:2.5;y=erf(x); %计算误差函数在[0,2.5]内的数据点
                p=polyfit(x,y,6)
                px=poly2str(p,'x')
                p =
                0.0084 -0.0983 0.4217 -0.7435 0.1471 1.1064
                0.0004
                px =
                0.0084194 x^6 - 0.0983 x^5 + 0.42174 x^4 - 0.74346 x^3
                + 0.1471 x^2
                + 1.1064 x + 0.00044117


                8楼2013-03-10 21:28
                回复
                  9楼2013-03-10 21:34
                  收起回复