Thanks to the keen observation by Mr. Phan Minh Hoang, I was notified that the Matlab/Octave scripts provided along with the topic raised cosine filtering was not behaving properly.
Reason: I was not taking care of the division by zero when creating the raised cosine filter taps. 🙁
The equation for raised cosine filter is
is the excess bandwidth parameter and takes values from 0 to 1.
I was not taking care of the division by zero in the above equation. I updated the code to explictly handle the division by zero case where:
(a) for and
(Thanks to the article in RFDesign.com, The care and feeding of digital, pulse-shaping filter, Ken Gentile)
The updated posts are:
Thanks again Mr. Phan Minh Hoang. 🙂All, In case you find errors and inconsistencies in the article and/or simulation models, kindly let me know. Regards,