Scaling factor for normalizing modulation output
normfactor = modnorm(refconst,type,power)
Generate a 16-QAM reference constellation.
refconst = qammod(0:15,16);
Generate random symbols and apply 16-QAM modulation.
x = randi([0 15],1000,1); y = qammod(x,16);
Plot the constellation.
h = scatterplot(y);
Compute the normalization factor so that the output signal has a peak power of 1 W.
nf = modnorm(refconst,'peakpow',1); z = nf*y;
Confirm that no element of the normalized signal has a power greater than 1 W.
ans = 1.0000
Plot the scatter plot of the normalized constellation.
hold on scatterplot(z,1,0,'r+',h) hold off
refconst— Reference constellation
Reference constellation, specified as a vector of complex elements that comprise the reference constellation points.
Complex Number Support: Yes
type— Normalization type
Normalization type, specified as either
the normalization factor is calculated based on average power.
the normalization factor is calculated based on peak power.
normfactor— Normalization factor
Normalization factor, returned as a real scalar. When a modulated signal is multiplied by the normalization factor, its average or peak power matches the target power. The function assumes that the signal you want to normalize has a minimum distance of 2.