📄 svd_rx.m
字号:
function X_Esti=SVD_Rx(Y_FFT,N_FFT,Tx,H,GAUSS_NOISE,SNR,CODE_UNQUANT)
%对接收信号进行处理,乘U’,并MMSE检测
[antenna_Rx,column]=size(Y_FFT);
[U,S,V]=IdealChannelEsti(H,Tx,antenna_Rx,N_FFT);
%column即为发射信号长度(无前缀)
for j=1:column/N_FFT
for i=1:N_FFT
Y_SVD(:,(j-1)*N_FFT+i)=U(:,:,i)'*Y_FFT(:,(j-1)*N_FFT+i);
end
end
%线性MMSE检测
%发射功率设为1
if CODE_UNQUANT==0
for k=1:Tx
for j=1:column/N_FFT
for i=1:N_FFT
if GAUSS_NOISE==1
X_Esti(k,(j-1)*N_FFT+i)=conj(S(k,k,i))/(conj(S(k,k,i))*S(k,k,i)+(1/10^(SNR/10)))*Y_SVD(k,(j-1)*N_FFT+i);
else %无噪声
X_Esti(k,(j-1)*N_FFT+i)=conj(S(k,k,i))/(conj(S(k,k,i))*S(k,k,i))*Y_SVD(k,(j-1)*N_FFT+i);
end
end
end
end
else
X_Esti=Y_SVD;
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -