美文网首页
差分方程的Matlab计算

差分方程的Matlab计算

作者: 大飞哥 | 来源:发表于2016-05-13 21:50 被阅读668次

    函数:
    filter impz stepz

    已知一个因果LTI系统定义如下:
    y[n] + 0.7y[n-1] - 0.45y[n-2] - 0.6y[n-3] = 0.8x[n] -0.44x[n-1] + 0.36x[n-2] + 0.02x[n-3]

    则冲激响应和阶跃响应的前41个样本,可由Matlab代码实现如下:

    冲激响应:

    p = [0.8 -0.44 0.36 0.02];
    d = [1 0.7 -0.45 -0.6];
    [h,m]=impz(p,d,41);
    stem(m,h);
    

    阶跃响应:

    p = [0.8 -0.44 0.36 0.02];
    d = [1 0.7 -0.45 -0.6];
    [s,m]=stepz(p,d,41);
    stem(m,s);
    

    另可由filter函数实现:

    p = [0.8 -0.44 0.36 0.02];
    d = [1 0.7 -0.45 -0.6];
    x1 = [1 zeros(1,40)]; %冲激响应输入
    x2 = [ones(1,41)]; %阶跃响应输入
    h = filter(p,d,x1);
    s = filter(p,d,x2);
    stem(h);
    stem(s);
    

    相关文章

      网友评论

          本文标题:差分方程的Matlab计算

          本文链接:https://www.haomeiwen.com/subject/eyjmrttx.html