How do I design odd ordered filters using the FIRRCOS function in Signal Processing Toolbox?

N
Nehemiah · Mar 5, 2021 · 2.3K views
Question
I would like to design an odd ordered FIR raised cosine filter using the following code:     coefs = firrcos(255, 364e3/2, 0.4, 17.6832e6, 'rolloff'); When I do so, however, the results appear to be the same as if I had used the following code:     coefs = firrcos(256, 364e3/2, 0.4, 17.6832e6, 'rolloff'); and then removed a single coefficient.  
Expert Answer
Profile picture of John Michell
John Michell PhD Expert
Answered Aug 24, 2026
This enhancement has been incorporated in Signal Processing Toolbox 6.5 (R2006a).
 
For product releases since R2006a, the FIRRCOS function can only be used to design even-ordered filters.
 
The reason it is not possible to design an odd order raised cosine filter is because theoretically it does not make sense to have such design.
 
The algorithm for the function FIRRCOS is to sample the impulse response of a raise cosine rolloff filter at N (where N is the filter order) sample times starting at -(N/2)/Fs and ending at (N/2)/Fs. The resulting filter is the raised cosine window that includes the 0 point and is symmetric around 0. If you make the order of the filter odd, then the window symmetry is lost. You want to shape the communication symbols with a symmetric window whose largest value is at the middle of the symbol, otherwise the pulse shaping will be incorrect.
100% Run Guarantee 3-Hour Fast-Track Delivery

Need a Custom Version or Complete Simulation for This Problem?

Our 500+ PhD engineers build, debug, and optimize working MATLAB scripts and Simulink (.slx) models tailored to your exact assignment rubrics with zero plagiarism.

Tested on MATLAB R2024b / R2026a
Turnitin 0% Plagiarism Report
Free 7-Day Revisions Guarantee
Have a different question? Ask here

Get a Free Consultation or a Sample Assignment Review!