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

📄 kal_mud.m

📁 这是盲信号的代码 都已经通过编译了 做这方面的同仁可以参考一下 我觉得蛮惯用的
💻 M
字号:
function SINR=kal_mud()
%
%2005.12.11
%加载数据
load goldseq;
load bs;
%gold码归一化
goldseq = (1/sqrt(31))*goldseq;
%期望用户扩频序列
s1=goldseq(1,:)';
s2=goldseq(2,:)';
s3=goldseq(3,:)';
s4=goldseq(4,:)';
s5=goldseq(5,:)';
s6=goldseq(6,:)';

W=gram_schmidt(s1);
C=W(:,2:31);

A2=10;
A3=10;
A4=10;
A5=10;
A6=10;

N=length(s1);
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;
%r=r1+r2+r3+r4+r5+r6;
SNR=20;
r=awgn(r,SNR);
K=eye(N-1);
w1=zeros(N-1,1);
for i=1:10000
    y=s1'*r(:,i);
    d=(r(:,i)'*C)';
    %min=(w'*r(:,i))^2;
    min=100;
    g=K*d*((d'*K*d+min)^-1);
    K=K-g*d'*K;
    w1=w1+g*(y-d'*w1);
    w=s1-C*w1;
    
    
    %n=w'*s2+w'*s3+w'*s4+w'*s5+w'*s6+0.1*norm(w);
    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;
    %n=(w'*s2)^2+(w'*s3)^2+(w'*s4)^2+(w'*s5)^2+(w'*s6)^2+0.1*norm(w);
    SINR(i)=((w'*s1)^2)/n;
%SINR(i)=((w'*s1)^2)/(var(w'*X));
end
i=1:10000;
plot(i,10*log10(SINR));
xlabel('迭代次数');
ylabel('信号干扰噪声比SINR(dB)');
grid on;
%title('CMA多用户检测');

⌨️ 快捷键说明

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