⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mud_plot.m

📁 误码率-信噪比曲线函数MUD_plot.m:
💻 M
字号:
%在DS-spread spectrum系统中,噪声为加性高斯白噪声,传统单用户检测,线性解相关多用户检测和最小均方误差多用户检测的性能比较clear allclose allclc;%prompt={'Enter the numbers of user:','Enter the length of user code:','Enter the power of the user code','Enter the power of Noise'};%name=['CDMA MUD TEST'];%line=1;%defaultanswer={'10','5000','1 2 3 4 5 6 7 8 9 10', '10'};%glabel=inputdlg(prompt,name,line,defaultanswer);%num1=str2num(char(glabel(1,1)));%num2=str2num(char(glabel(2,1)));%num3=str2num(char(glabel(3,1)));%num4=str2num(char(glabel(4,1)));UserNumber=10;%用户数inflength=5000;%用户信息序列长度a=[1 2 3 4 5 6 7 8 9 10];  %用户信息功率Pn=10; %噪声功率sigma=1;%噪声标准差N=31;R=(ones(UserNumber)+(N-1)*eye(UserNumber))/N; %相关系数矩阵b=2*randint(UserNumber,inflength)-1;   %用户信息矩阵(随机+1,-1矩阵)%******Generate M sequence******************coefficients=[1 0 1 0 0]; %5级左移m序列码发生器的反馈系数mseq=mseries(coefficients); %生成31×31的m序列码矩阵mseq=mseq(1:UserNumber,1:N);%*******************************************%**********Generate noise*******************n1=Pn*normrnd(0,1,1,inflength*N);n=zeros(UserNumber,inflength);for j=1:inflength   ntemp=n1(1,((j-1)*N+1):j*N);   n(:,j)=(mseq*ntemp')/N;end%*******************************************for k=1:1000    a1=a+a*0.1*k;    A=diag(a1);    y=R*A*b+n;  %传统单用户检测    ydec=inv(R)*y;   %线性解相关多用户检测    ymmse=inv(R+sigma^2*inv(A))*y;  %最小均方误差多用户检测    ylen=length(find(sign(real(y(1,:)))-b(1,:)));      ydeclen=length(find(sign(real(ydec(1,:)))-b(1,:)));    ymmselen=length(find(sign(real(ymmse(1,:)))-b(1,:)));    BER_y(1,k)=ylen/inflength;    BER_ydec(1,k)=ydeclen/inflength;    BER_ymmse(1,k)=ymmselen/inflength;    snr(1,k)=20*log10(a1(1)/Pn);    disp('误码个数为');    disp(ylen);    disp(ydeclen);    disp(ymmselen);    disp('误码率为');    disp( BER_y(1,k));    disp(BER_ydec(1,k));    disp(BER_ymmse(1,k));    end%***画出两种检测方法的BER-SNR对比图********plot(snr,BER_y,'r-',snr,BER_ydec,'g:',snr,BER_ymmse,'y-.');legend('\it匹配滤波器','\it解相关检测','\it最小均方误差检测');xlabel('信噪比(dB)'),ylabel('误码率');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -