• 大小: 14.62 KB
    文件类型: .rar
    金币: 1
    下载: 1 次
    发布日期: 2024-11-02
  • 语言: Matlab
  • 标签:

资源简介

多用户检测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\untitled.mdl

     目录          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


评论

共有 条评论