【通信-SCMA】基于串行干扰消除的多用户检测算法附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信       无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机 

⛄ 内容介绍

​稀疏码多址接入(SCMA)作为一个前景广阔的5 G无线空口技术,能够满足海量连接的需求.针对现有SCMA 通信系统都是基于并行策略的消息传递算法(MPA)进行多用户检测,存在信息收敛速度不理想的问题,该文提出一种串行策略的多用户检测算法.

⛄ 部分代码

function [Le]=MPA(Signal,cons,nv,H,u)%输入参数%Signal:接收信号%cons:SCMA星座图%nv:噪声功率%H:信道系数%u:待解码用户%输出参数%Le:每比特对数似然比N_iter=2;F=zeros(6,4);p=zeros(6,4);Lext=zeros(1,12);F112=ones(1,4);F122=ones(1,4);F132=ones(1,4);F212=ones(1,4);F222=ones(1,4);F232=ones(1,4);F312=ones(1,4);F322=ones(1,4);F332=ones(1,4);F412=ones(1,4);F422=ones(1,4);F432=ones(1,4);P=sinfoalt(Lext);for k=1:6    for j=1:4        p(k,j)=P(floor((j-1)/2)+1,k*2-1)*P(rem((j-1),2)+1,k*2);    endendfor k=1:N_iter    F111=zeros(1,4);    F121=zeros(1,4);    F131=zeros(1,4);    F211=zeros(1,4);    F221=zeros(1,4);    F231=zeros(1,4);    F311=zeros(1,4);    F321=zeros(1,4);    F331=zeros(1,4);    F411=zeros(1,4);    F421=zeros(1,4);    F431=zeros(1,4);    for j=1:4        for m=1:4            for n=1:4                F111(j)=F111(j)+F122(m)*F132(n)*p(2,m)*p(3,n)*p(1,j)*exp(-abs(Signal(u,1)-H(u)*cons(j,1,1)-H(u)*cons(m,1,2)-H(u)*cons(n,1,3))^2/nv);                F121(j)=F121(j)+F112(m)*F132(n)*p(1,m)*p(3,n)*p(2,j)*exp(-abs(Signal(u,1)-H(u)*cons(m,1,1)-H(u)*cons(j,1,2)-H(u)*cons(n,1,3))^2/nv);                F131(j)=F131(j)+F122(m)*F112(n)*p(2,m)*p(1,n)*p(3,j)*exp(-abs(Signal(u,1)-H(u)*cons(n,1,1)-H(u)*cons(m,1,2)-H(u)*cons(j,1,3))^2/nv);                F211(j)=F211(j)+F222(m)*F232(n)*p(4,m)*p(5,n)*p(1,j)*exp(-abs(Signal(u,2)-H(u)*cons(j,2,1)-H(u)*cons(m,1,2)-H(u)*cons(n,1,3))^2/nv);                F221(j)=F221(j)+F212(m)*F232(n)*p(1,m)*p(5,n)*p(4,j)*exp(-abs(Signal(u,2)-H(u)*cons(m,2,1)-H(u)*cons(j,1,2)-H(u)*cons(n,1,3))^2/nv);                F231(j)=F231(j)+F222(m)*F212(n)*p(4,m)*p(1,n)*p(5,j)*exp(-abs(Signal(u,2)-H(u)*cons(n,2,1)-H(u)*cons(m,1,2)-H(u)*cons(j,1,3))^2/nv);                F311(j)=F311(j)+F322(m)*F332(n)*p(4,m)*p(6,n)*p(2,j)*exp(-abs(Signal(u,3)-H(u)*cons(j,2,1)-H(u)*cons(m,2,2)-H(u)*cons(n,1,3))^2/nv);                F321(j)=F321(j)+F312(m)*F332(n)*p(2,m)*p(6,n)*p(4,j)*exp(-abs(Signal(u,3)-H(u)*cons(m,2,1)-H(u)*cons(j,2,2)-H(u)*cons(n,1,3))^2/nv);                F331(j)=F331(j)+F322(m)*F312(n)*p(4,m)*p(2,n)*p(6,j)*exp(-abs(Signal(u,3)-H(u)*cons(n,2,1)-H(u)*cons(m,2,2)-H(u)*cons(j,1,3))^2/nv);                F411(j)=F411(j)+F422(m)*F432(n)*p(5,m)*p(6,n)*p(3,j)*exp(-abs(Signal(u,4)-H(u)*cons(j,2,1)-H(u)*cons(m,2,2)-H(u)*cons(n,2,3))^2/nv);                F421(j)=F421(j)+F412(m)*F432(n)*p(3,m)*p(6,n)*p(5,j)*exp(-abs(Signal(u,4)-H(u)*cons(m,2,1)-H(u)*cons(j,2,2)-H(u)*cons(n,2,3))^2/nv);                F431(j)=F431(j)+F422(m)*F412(n)*p(5,m)*p(3,n)*p(6,j)*exp(-abs(Signal(u,4)-H(u)*cons(n,2,1)-H(u)*cons(m,2,2)-H(u)*cons(j,2,3))^2/nv);            end        end    end    F111=F111/sum(F111);    F121=F121/sum(F121);    F131=F131/sum(F131);    F211=F211/sum(F211);    F221=F221/sum(F221);    F231=F231/sum(F231);    F311=F311/sum(F311);    F321=F321/sum(F321);    F331=F331/sum(F331);    F411=F411/sum(F411);    F421=F421/sum(F421);    F431=F431/sum(F431);        F112=F211;    F212=F111;    F122=F311;    F312=F121;    F132=F411;    F412=F131;    F222=F321;    F322=F221;    F232=F421;    F422=F231;    F332=F431;    F432=F331;endF(1,:)=F111.*F112;F(2,:)=F121.*F122;F(3,:)=F131.*F132;F(4,:)=F221.*F222;F(5,:)=F231.*F232;F(6,:)=F331.*F332;F(1,:)=F(1,:)/sum(F(1,:));F(2,:)=F(2,:)/sum(F(2,:));F(3,:)=F(3,:)/sum(F(3,:));F(4,:)=F(4,:)/sum(F(4,:));F(5,:)=F(5,:)/sum(F(5,:));F(6,:)=F(6,:)/sum(F(6,:));j=u;Le(2*1-1)=log((F(j,1)+F(j,2))/(F(j,3)+F(j,4)));Le(2*1)=log((F(j,1)+F(j,3))/(F(j,2)+F(j,4)));    end

⛄ 运行结果

⛄ 参考文献

[1] 杜洋, 董彬虹, 王显俊,等. 基于串行策略的SCMA多用户检测算法[J]. 电子与信息学报, 2016, 38(8):6.

[2] 王显俊, 杜洋, 成聪,等. 基于EXIT图的SCMA通信系统多用户检测算法收敛性分析简[J]. 信号处理, 2016(12).

[3] 耿志明丁云霞蔡凯马瑞芳. CDMA移动通信中基于自适应干扰消除的多用户检测[J]. 重庆工学院学报, 2007, 021(003):P.106-108,116.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Matlab科研辅导帮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值