资源简介
多用户检测MATLAB程序多用户检测MATLAB程序多用户检测MATLAB程序
代码片段和文件信息
%传统盲多用户检测恒模算法,该程序调用goldseq.mat和b.mat两个数据文件,goldseq.mat由Gold码产生
%函数产生b.mat由Matlab中的Simulink的Bernoulli Binary Generator 模块产生。运算结果以图形输出
%SINR(dB).
function SINR=cma_bmud()
fbconnection1=[0 1 0 0 1];
fbconnection2=[1 0 0 0 1];
%goldseq=gold_seq(fbconnection1fbconnection2);
mseq1=m_sequence(fbconnection1);
mseq2=m_sequence(fbconnection2);
L=2^length(fbconnection1)-1;
for shift_amount=0:L-1
shift_mseq2=[mseq2(shift_amount+1:L) mseq2(1:shift_amount)]; %对第二个m序列进行循环移位
goldseq(shift_amount+1:)=mod(mseq1+shift_mseq22); %m1序列和循环移位后的m2序列模2加后即为gold序列
end
ind1=find(goldseq==0); %将gold序列的0变为-1;
goldseq(ind1)=-1;
b=randsrc(610000);
%gold码归一化
goldseq = 1/sqrt(31)*goldseq;
%期望用户扩频序列
s1=goldseq(1:)‘;
s2=goldseq(2:)‘;
s3=goldseq(3:)‘;
s4=goldseq(4:)‘;
s5=goldseq(5:)‘;
s6=goldseq(6:)‘;
A2=10;
A3=10;
A4=10;
A5=10;
A6=10;
w=s1;
u=10^-4;
r1=goldseq(1:)‘*b(1:);
r2=goldseq(2:)‘*b(2:);
r3=goldseq(3:)‘*b(3:);
r4=goldseq(4:)‘*b(4:);
r5=goldseq(5:)‘*b(5:);
r6=goldseq(6:)‘*b(6:);
r=r1+A2*r2+A3*r3+A4*r4+A5*r5+A6*r6;
SNR=20;
r=awgn(rSNR);
for i=1:1000
x(:i)=r(:i);
y(i)=w‘*x(:i);
w=w-u*(y(i)^2-1)*y(i)*x(:i);
n=(A2*w‘*s2)^2+(A3*w‘*s3)^2+(A4*w‘*s4)^2+(A5*w‘*s5)^2+(A6*w‘*s6)^2+w‘*0.01*w;
SINR(i)=((w‘*s1)^2)/n;
end
i=1:1000;
plot(i10*log10(SINR));
xlabel(‘迭代次数‘);
ylabel(‘信号干扰噪声比SINR(dB)‘);
title(‘CMA多用户检测‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1519 2007-06-05 01:10 多用户检测MATLAB程序\mud\cma_bmud.m
文件 362 2007-06-05 00:40 多用户检测MATLAB程序\mud\gold_seq.m
文件 960 2007-05-21 21:47 多用户检测MATLAB程序\mud\lscma.m
文件 1416 2007-06-05 01:12 多用户检测MATLAB程序\mud\lscma_new.m
文件 3028 2007-06-04 01:43 多用户检测MATLAB程序\mud\mmse.m
文件 435 2007-05-21 21:47 多用户检测MATLAB程序\mud\m_sequence.m
文件 16339 2007-05-22 03:04 多用户检测MATLAB程序\mud\unti
目录 0 2009-05-11 07:52 多用户检测MATLAB程序\mud
文件 1466 2007-06-18 22:04 多用户检测MATLAB程序\new file\cmalscma.m
文件 2075 2007-06-18 22:04 多用户检测MATLAB程序\new file\cmammsedec_mud.m
文件 2876 2007-06-19 11:24 多用户检测MATLAB程序\new file\cmammsedec_mud_2.m
文件 917 2007-06-18 22:04 多用户检测MATLAB程序\new file\cma_bmud.m
文件 361 2007-06-19 11:00 多用户检测MATLAB程序\new file\gold_seq.m
文件 987 2007-06-18 22:04 多用户检测MATLAB程序\new file\lscma.m
文件 1761 2007-06-18 22:04 多用户检测MATLAB程序\new file\lscmacma_mud.m
文件 435 2007-05-21 21:47 多用户检测MATLAB程序\new file\m_sequence.m
目录 0 2009-05-11 07:52 多用户检测MATLAB程序\new file
目录 0 2009-05-11 07:52 多用户检测MATLAB程序
----------- --------- ---------- ----- ----
34937 18
评论
共有 条评论