- awgn(RX,SNR,'measured') adds noise to each sample of RX. If RX is a real vector, only the real component has noise added to it. If RX is a complex vector, noise with complex representation ‘a + ib’ is added to each element of RX. The values of ‘a’ and ‘b’ are generated using a gaussian distribution, where the magnitudes are dependent on the SNR value provided. The 'measured' option takes the current received signal power in consideration to generate the noise samples.
- As mentioned, this is valid only if the input RX samples are real. If it is complex IQ samples, then this may not be a valid assumption.
How awgn add white noise on complex envolope signal
54 views (last 30 days)
An I/Q baseband signal goes through Tx, the wave received by Rx at carrier (fc) with condisering receiver noise should be "rx_noise"
rx = [I(t)*cos(2*pi*fc*t) - Q(t)*sin(2*pi*fc*t)]
then use Matlab snr, we can get the SNR
the complex envolope of the rx is
RX=[I(t) + 1i*Q(t)].*exp(1i*2*pi*fc*t)
My question are:
- how "RX_noise=awgn(RX,SNR,'measured') " add noise to the RX?
- does real(Rx_noise) = rx_noise?
Many thanks in advance!
Kaashyap Pappu on 21 Jan 2020
You can learn more about how the noise samples are generated by typing the following command in the command console:
The documentation for awgn can also provide more information regarding the function.
Hope this helps!