un_qam.m

来自「基于Matlab」· M 代码 · 共 20 行

M
20
字号
function s = un_qam(M,z)

 % a convenient quantity
 N = sqrt(M/4);					% M = 4N^2

 % check if valid M (via checking if N is an integer)
 if N ~= floor(N),
   error('M must be of the form 4*N^2 for integer N'); 
 end

 % generate constellation points 
 C=2*[0:sqrt(M)-1]-sqrt(M)+1;  
 C=ones(sqrt(M),1)*C;
 C=C+i*C';
 C=C(:);
 C=C./sqrt(mean(abs(C).^2));

 [d,I]=min(abs(z-C)); 
 s=C(I(1));

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?