QPSK theoretical performance under Rayleigh fading approximate with this formula:

Pbtheory4 = 0.5*(1-(sqrt((Es/N0)./(1+(Es/N0)))));

simulation steps:

1.Generate random bits (randn)(define a function to generate "0" and "1" bits.

2. Map bits to symbols define constellation points and modulation scheme

3. characterize channel fading( in this case Rayleigh)

4.add WGN noise

5. set decision regions

6.compare thresholds and sampling

7.inspect received bits for any error

8.plot

Result: