Home » Category » Matlab

Matlab: z-transform of sine wave, Bode plot

200| Sun, 18 May 2008 20:33:00 GMT| bmalp| Comments (0)
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

Keywords & Tags: z-transform, sine, wave, bode, plot, matlab

URL: http://programming.itags.org/matlab/66166/
 
«« Prev - Next »» 0 helpful answers below.

Matlab Hot Answers

Matlab New questions

Matlab Related Categories