%%%WRITTEN BY YANGCHUNXIA,2010,1,13%%%%%%%%%%%%%%distribute
clear all
clc
N=2;
%%三个用户采用对偶性迭代来实现IA的数据速率
SNR=[0:5:50];
for kk=1:100
%%
H11 = wgn(N,N,0,'complex'); H12 = wgn(N,N,0,'complex'); H13 = wgn(N,N,0,'complex');
H21 = wgn(N,N,0,'complex'); H22 = wgn(N,N,0,'complex'); H23 = wgn(N,N,0,'complex');
H31 = wgn(N,N,0,'complex'); H32 = wgn(N,N,0,'complex'); H33 = wgn(N,N,0,'complex');
%%
v1=randn(N,N/2)+sqrt(-1)*randn(N,N/2);%[p1(:,1) p1(:,4)] ;
v2=randn(N,N/2)+sqrt(-1)*randn(N,N/2); %randn(4,2)+sqrt(-1)*randn(4,2);
v3=randn(N,N/2)+sqrt(-1)*randn(N,N/2) ;
%% 正向方法1
for snr=1:length(SNR)
for iteration=1:200 %%一般在二十次左右收敛
xigma=10^(SNR(snr)/10);
q1=H12*v2*v2'*H12'+H13*v3*v3'*H13'+1/xigma*eye(N);%+10^(-SNR(snr)/10)*eye(2);
q2=H21*v1*v1'*H21'+H23*v3*v3'*H23'+1/xigma*eye(N);%+10^(-SNR(snr)/10)*eye(2);
q3=H31*v1*v1'*H31'+H32*v2*v2'*H32'+1/xigma*eye(N);%+10^(-SNR(snr)/10)*eye(2);
u1=ker(q1);%%%%%%%%%%%%%%%%%%%%%%%%%%;
u2=ker(q2);
u3=ker(q3);
%% 反向方法1
rq1=H21'*u2*u2'*H21+H31'*u3*u3'*H31+1/xigma*eye(N);%+10^(-SNR(snr)/10)*eye(2);
rq2=H12'*u1*u1'*H12+H32'*u3*u3'*H32+1/xigma*eye(N);%+10^(-SNR(snr)/10)*eye(2);
rq3=H13'*u1*u1'*H13+H23'*u2*u2'*H23+1/xigma*eye(N);%+10^(-SNR(snr)/10)*eye(2);
v1=ker(rq1);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%;
v2=ker(rq2);
v3=ker(rq3);
%% 反向方法2
iteration;
end
%%%%%方法1
i1=u1'*H12*v2*v2'*H12'*u1+u1'*H13*v3*v3'*H13'*u1;
i2=u2'*H21*v1*v1'*H21'*u2+u2'*H23*v3*v3'*H23*u2;
i3=u3'*H31*v1*v1'*H31'*u3+u3'*H32*v2*v2'*H32'*u3;
s1=u1'*H11*v1*v1'*H11'*u1;
s2=u2'*H22*v2*v2'*H22'*u2;
s3=u3'*H33*v3*v3'*H33'*u3;
%sr=mean(snr);
%%
yy(snr,kk)=log2(det(eye(length(H11)/2)+s1*inv(1/xigma.*u1'*u1+i1)))...
+log2(det(eye(length(H11)/2)+s2*inv(1/xigma.*u2'*u2+i2)))...
+log2(det(eye(length(H11)/2)+s3*inv(1/xigma.*u3'*u3+i3)));
% berr(snr,kk)=fber(H11,H22,H33,H12,H13,H21,H31,H23,H32,v1,v2,v3,u1',u2',u3',SNR(snr))
%xx(snr)=log2(1+10^(SNR(snr)/10)*sin1)+log2(1+10^(SNR(snr)/10)*sin2)+log2(1+10^(SNR(snr)/10)*sin3)
%zz(snr)=log2(1+10^(SNR(snr)/10)*sr1/((SNR(snr)/10)+sr1+1));
end
kk
end
y=mean(yy,2);
%berr=mean(berr,2);
set(gcf,'Position',[100 100 380 300]);
set(gca,'Position',[.13 .17 .80 .74]);
figure_FontSize=9;
set(findobj('FontSize',10),'FontSize',figure_FontSize);
b=[0.1:0.1:1,2:1:10];
hand=plot(SNR,y,'b-<');
set(hand,'LineWidth',1.5);
set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','middle');
set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Horizontal','right');
legend('分布式')
hold on
%plot(SNR,zz,'b*-')
%plot(zz,'r')
%hold off
grid on
Desktop.rar_分布式迭代_干扰对齐_干扰对齐算法
版权申诉
55 浏览量
2022-07-14
04:38:32
上传
评论 1
收藏 1KB RAR 举报
Kinonoyomeo
- 粉丝: 75
- 资源: 1万+
最新资源
- 基于matlab开发的全面详解LTE:MATLAB建模、仿真与实现-simulink.rar
- 自动驾驶定位系列教程二:系统架构.pdf
- 整站程序8优技巧网-8ujq.rar
- 世界各个国家或地区国际域名缩写
- 基于matlab开发的根据rvm回归模型自己编的matlab程序.rar
- 基于matlab开发的该程序为国内一所大学编写的LTE链路层仿真程序,根据LTE标准协议编写的,很容易看懂.rar
- 高效C++学生成绩管理系统:教育技术+C++17编程+数据管理+教务自动化
- 搜索链接要广告分类系统 v2.0-yad20.rar
- 基于matlab开发的Tipping的相关向量机RVM的回归MATLAB程序,有英文注释,可以运行.rar
- 一个点击正反转程序实例,可实现案件电机正反转
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论0