vblast.m

来自「MIMO-OFDM系统的VBLAST使用MATLAB编程」· M 代码 · 共 19 行

M
19
字号

function [decide_bits] = VBLAST(F,H,in_match,in, P,Ns,NPW);

decide_bits=zeros(P,Ns);
dec_table=(1:1:P).';  % a index table helps make decision in tx_order
for k=1:P
   G=inv(F*F' + NPW*F)*F;
   [ordered_norm,index]=sort(diag(G'*G));
   soft_symbol=G(:,index(1))'*in_match;
   decide = 1/sqrt(2)*(sign(real(soft_symbol)) + j*sign(imag(soft_symbol)));
   decide_bits(dec_table(index(1)),:) = decide;
   in=in-H(:,index(1))*decide_bits(dec_table(index(1)),:);
   dec_table(index(1))=[];
   H(:,index(1))=[];
   in_match=H'*in;
   F=H'*H;
end

⌨️ 快捷键说明

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