Why am I unable to obtain a phase response plot using the FREQZ function?
I unable to obtain a phase response plot using the FREQZ function, but am able to get a phase plot when using the FREQZPLOT function with the same parameters. I would expect the plots to be the same using both functions. I use the following code to obtain the frequency response vector, but the phase response plot has nothing in it:
freqz(num,den,4096,Fs);
When I try to the following command:
[h,f,s]=freqz(num,den,4096,Fs);freqzplot(h,f,s);
I get a phase response plot. Note that my frequency response vector contains elements that have very small magnitudes.
ANSWER
Matlabsolutions.com provide latest MatLab Homework Help,MatLab Assignment Help for students, engineers and researchers in Multiple Branches like ECE, EEE, CSE, Mechanical, Civil with 100% output.Matlab Code for B.E, B.Tech,M.E,M.Tech, Ph.D. Scholars with 100% privacy guaranteed. Get MATLAB projects with source code for your learning and research.
This bug has been fixed for Release 14 SP1 (R14SP1). For previous releases, please read below for any possible workarounds:
The reason you see this behavior is due to the frequency response vector “h” containing elements with extremely small magnitudes. The FREQZ function considers the magnitude to be extremely small if
abs(h) <= eps^(2/3)
The elements with extremely small magnitudes are then set as having undefined phase. That is why you do not see a phase plot when you use the FREQZ function without any outputs using the following command:
SEE COMPLETE ANSWER CLICK THE LINK