《2022年注水算法 .pdf》由会员分享,可在线阅读,更多相关《2022年注水算法 .pdf(7页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、1.1 功率注水算法注水算法是根据某种准则,并根据信道状况对发送功率进行自适应分配,通常是信道状况好的时刻,多分配功率,信道差的时候,少分配功率,从而最大化传输速率。实现功率的“注水”分配,发送端必须知道CSI。当接收端完全知道信道而发送端不知道信号时,发送天线阵列中的功率平均分配是合理的。当发送端知道信道,可以增加信道容量。考虑一个1r维的零均值循环对称复高斯信号向量s,r 为发送信道的秩。向量在传送之前被乘以矩阵V(HVUH)。在接收端,接受到的信号向量y 被乘以HU。这个系统的有效输入输出关系式由下式给出:nsMEnUsVVUUMEnUsHVUMEyTsHHHTsHHTsVHsysynH
2、U发送端信道接收端其中y是1r维的变换的接受信号向量,n是协方差矩阵为rHINnn0的零均值循环对称复高斯1r变换噪声向量。向量s必须满足THMss已限制总的发送能量。可以看出iiiTsinsMEy,i=1,2,rMIMO 信道的容量是单个平行SISO 信道容量之和,由下式给出riiTisNMEC102)1(log其中2iis(i=1,2,r)反映了第i 个子信道的发送能量,且满足TriiM1。可以在子信道中分配可变的能量来最大化互信息。现在互信息最大化问题就变成了:名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 7 页 -riiTisMNMECriTi1)2)1(logmax1
3、最大化目标在变量),.,1(rii中是凹的,用拉格朗日法最大化。最佳能量分配政策0),max(0isToptiENMriToptiM1注水算法:Step1:迭代计数p=1,计算111110prisTENprMStep2:用计算isTiENM0,i=1,2,r-p+1 Step3:若分配到最小增益的信道能量为负值,即设01pr,p=p+1,转至 Step1.若任意i非负,即得到最佳注水功率分配策略。1.2 发送端知道信道时的信道容量%in this programe a highly scattered enviroment is considered.The%Capacity of a MIM
4、O channel with nt transmit antenna and nr recieve%antenna is analyzed.The power in parallel channel(after%decomposition)is distributed as water-filling algorithm clear all close all clc nt_V=1 2 3 2 4;nr_V=1 2 2 3 4;N0=1e-4;B=1;Iteration=1e2;%must be grater than 1e2 SNR_V_db=-10:3:20;SNR_V=10.(SNR_V
5、_db/10);color=b;r;g;k;m;notation=-o;-;-;-;-s;for(k=1:5)nt=nt_V(k);nr=nr_V(k);for(i=1:length(SNR_V)名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 7 页 -Pt=N0*SNR_V(i);for(j=1:Iteration)H=random(rayleigh,1,nr,nt);S V D=svd(H);landas(:,j)=diag(V);Capacity(i,j)PowerAllo=WaterFilling_alg(Pt,landas(:,j),B,N0);end end f1=f
6、igure(1);hold on plot(SNR_V_db,mean(Capacity),notation(k,:),color,color(k,:)clear landas end f1=figure(1)legend_str=;for(i=1:length(nt_V)legend_str=legend_str;.nt=,num2str(nt_V(i),nr=,num2str(nr_V(i);end legend(legend_str)grid on set(f1,color,1 1 1)xlabel(SNR in dB)ylabel(Capacity bits/s/Hz)注水算法子函数f
7、unction Capacity PowerAllo=WaterFilling_alg(PtotA,ChA,B,N0);%WaterFilling in Optimising the Capacity%=%Initialization%=ChA=ChA+eps;NA=length(ChA);%the number of subchannels allocated to H=ChA.2/(B*N0);%the parameter relate to SNR in subchannels%assign the power to subchannel PowerAllo=(PtotA+sum(1./
8、H)/NA-1./H;while(length(find(PowerAllo 0)IndexN=find(PowerAllo 0);MP=length(IndexP);PowerAllo(IndexN)=0;ChAT=ChA(IndexP);名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 7 页 -HT=ChAT.2/(B*N0);PowerAlloT=(PtotA+sum(1./HT)/MP-1./HT;PowerAllo(IndexP)=PowerAlloT;end PowerAllo=PowerAllo.;Capacity=sum(log2(1+PowerAllo.*H);
9、注意:是HHH的奇异值,所以对H 奇异值分解后要平方ChA.2 1.3 发送端不知道信道时的信道容量功率均等发送,信道容量的表达式为HTnHHnPIWCR22logclear all clc nt_V=1 2 3 2 4;nr_V=1 2 2 3 4;N0=1e-4;B=1;Iteration=1e2;%must be grater than 1e2 SNR_V_db=-10:3:20;SNR_V=10.(SNR_V_db/10);color=b;r;g;k;m;notation=:o;:;:;:;:s;for(k=1:length(nt_V)nt=nt_V(k);nr=nr_V(k);for
10、(i=1:length(SNR_V)Pt=N0*SNR_V(i);for(j=1:Iteration)H=random(rayleigh,1,nr,nt);S V D=svd(H);landas(:,j)=diag(V);Capacity_uninf(i,j)=log2(det(eye(nr)+Pt/(nt*B*N0)*H*H);Capacity(i,j)PowerAllo=WaterFilling_alg(Pt,landas(:,j),B,N0);end end f1=figure(1);hold on plot(SNR_V_db,mean(Capacity),notation(k,:),c
11、olor,color(k,:)hold on plot(SNR_V_db,mean(Capacity_uninf),notation_uninf(k,:),color,color(k,:)clear landas end grid on set(f1,color,1 1 1)xlabel(SNR in dB)ylabel(Capacity bits/s/Hz)f1=figure(1)legend_str=;for(i=1:length(nt_V)legend_str=legend_str;.nt=,num2str(nt_V(i),nr=,num2str(nr_V(i);end legend(legend_str)grid on 名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 7 页 -set(f1,color,1 1 1)xlabel(SNR in dB)ylabel(Capacity bits/s/Hz)由图形中可以看出:1.在小信噪比时,相同信噪比下利用CSI 的功率注水算法获得容量优于未知CSI 的平均功率分配算法;相同容量下已知CSI 信噪比比未知CSI 时的信噪比小3dB.2.当信噪比增大到一定程度时,功率注水算法所获得的信道容量将收敛到平均功率分配的信道容量。名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 7 页 -
限制150内