How do you calculate this transfer function?

Dear friends I'm trying to make a filter for sound processing in matlab The transfer function is
H(e^(jω))=αjω.*exp(-βjω);
I have written this in matlab but seems not to work properly
w=0:pi/(2*Fs):pi; H=sqrt(-1)*w*a.*exp(-sqrt(-1)*w*b);
Do you think it's right?

Answers (3)

You can use 1i for sqrt(-1) but mainly you need to set your w correctly, right now your step size is pi/(2*Fs). It could work but I don't know if that's what you want. Normally people decides the number of samples between 0 and pi as N and then the step size is pi/N, or pi/(N-1).
mohammad
mohammad on 12 Sep 2014
Edited: mohammad on 12 Sep 2014
first use approximation function instead of exponential: e^x = (1+(x/N))^N second instead of 'jω' use 's' and use 'tf' command. so you have (for N=1): H=αjω.*exp(-βjω)=αjω/(1+(βjω)) now you have: H=(α*s)/(1+β*s)
num=[α,0];
den=[β,1];
H=tf(num,den);
for plotting bode diagram use 'bodeplot'.

1 Comment

Yes, but I think simplification of N=1 is too erroneous. Why did you choose N? Thank you for help

Sign in to comment.

Asked:

on 12 Sep 2014

Edited:

on 16 Sep 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!