Matlab z-transform Bode plot

  1. Hi,

    I try to visualize a sine wave, z-transformed in a Bode plot. The frequency shows up correctly, but the amplitude is way off - why?

    Thanks for your comments.
    Bmalp



    function zdemo

    format compact
    syms w Ts n z phi t

    Ts = 1
    w = 0.1
    phi = 0

    vz = simplify(ztrans(sin(w*n*Ts+phi))) % correct

    if 0 % method 1
    [num,den] = numden(simplify(vz));
    num = collect(num,'z')
    den = collect(den,'z')
    num1 = sym2poly(num)
    den1 = sym2poly(den)
    [h,w] = freqz(num1,den1,512,'whole');
    else % method 2
    fs = 1;
    f = linspace(0,fs,256);
    w = 2*pi*f;
    ss = sqrt(-1)*w;
    Z = exp(ss/fs);
    h = double(subs(vz,z,Z));
    end
    plot(w,abs(h)) % amplitude way too big
     
  2. jcsd
  3. Why don't you try this site http://www.kluid.com/. It's pretty much dedicated to matlab :)
     
Know someone interested in this topic? Share this thead via email, Google+, Twitter, or Facebook

Have something to add?