• 大小: 3KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: Matlab
  • 标签: 预编码  

资源简介

预编码算法的各种汇总,SLNR,BDSVD,MET,

资源截图

代码片段和文件信息

function [W_UE1W_UE2h11h12h21h22]=PreCoding_Matrix_gen(H11H12H21H22TypeNrNtN)

 Sigma2_UE1=750;%sigma_compute(H11SNR);
 Sigma2_UE2=750;%sigma_compute(H22SNR);
 
if strcmpi(Type‘Non-CoMP‘)
    [USV]=svd(H11);
    W_UE1 = V(:1);
    [USV]=svd(H22);
    W_UE2 = V(:1);  
    h11=H11;h12=H12;h21=H21;h22=H22;
elseif strcmpi(Type‘JP-SLNR‘)
        SLNRMatrix = inv(Nr*Sigma2_UE1*diag(ones(1Nt*N))+ [H21H22]‘ * [H21H22])...
                            * [H11H12]‘ * [H11H12];
        [USV]=svd(SLNRMatrix);
        W_UE1 = U(:1)/sqrt(1);
        SLNRMatrix = inv(Nr*Sigma2_UE2*diag(ones(1Nt*N))+ [H11H12]‘ * [H11H12])...
                            * [H21H22]‘ * [H21H22];            
        [USV]=svd(SLNRMatrix);
         W_UE2 = U(:1)/sqrt(1);
         h11=H11;h12=H12;h21=H21;h22=H22;
elseif strcmpi(Type‘JP-BDSVD‘)   
        [U0S0V0]=svd([H21H22]);
        [USV]=svd([H11H12]*V0(:Nr+1:Nt*N));
        W_UE1 = V0(:Nr+1:Nt*N)*V(:1)/sqrt(1);
        [U0S0V0]=svd([H11H12]);
        [USV]=svd([H21H22]*V0(:Nr+1:Nt*N));
        W_UE2 = V0(:Nr+1:Nt*N)*V(:1)/sqrt(1);
        h11=H11;h12=H12;h21=H21;h22=H22;
elseif strcmpi(Type‘JP-MET‘)
        [U1S1V1]=svd([H21H22]);
        H2=U1(:1)‘*[H21H22];
        [U1S1V1]=svd([H11H12]);
        H1=U1(:1)‘*[H11H12];
        [U0S0V0]=svd(H2);
        [USV]=svd(H1*V0(:1+1:Nt*N));
%             W_UE1 = W_UE1 ./ sqr

评论

共有 条评论