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
where
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
(b) for
(Thanks to the article in RFDesign.com, The care and feeding of digital, pulse-shaping filter, Ken Gentile)
The updated posts are:
1. Raised cosine filter for transmit pulse shaping
2. Eye diagram with raised cosine filtering
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,Krishna
hi, i need matlab code for ofdm transmission using pulse shaping filter like raised cosine filter
thanks
@ABHIJEET: I do not have that code, but you can refer to posts related to OFDM under
https://dsplog.com/category/ofdm/
But, why do wish to do raised cosine filtering with ofdm?
in matlab using the inbuilt functions i generated random signal and modulated using QPSK and then transmitted adding awgn. After receiving and demodulating i m geeting zero bit error rate. Is it because of i have to use some other equations for QPSK and how can we change the frequency values and BW for the modulation. Please help me!!
@rasi: Try increasing the noise power and see whether you are getting non-zero BER. If not there might be some typos in the code. You may also refer to the post
https://dsplog.com/2007/08/05/bit-error-probability-for-bpsk-modulation/
cum sa scriu cosinus la patrat de un oarecare X, in softul MATLAB
@dima: Can you please translate to english your query
can you guide me to a site or some sources from where i can get help for the code written in c++ for digital communication?
@Jhony:
Ofcourse, we can do the simulations in C++ (or any most other programming languages). The advantage with Matlab is that it is easier to code and debug compared to C.
In Matlab, Y = A*B where A and B are matrices is a one-liner.
Imagine how many lines of code we need to write for the same operation in C?
hi
i hope u r doing fine… why dont we do the simulations in c++??? i mean is it possible to simulate QPSK in c++?