✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
基于matlab模拟鲁棒孤子分布
⛄ 完整代码
% Raptor codes中对RSD进行仿真
clc
clear all;
close all;
% 设置输入符号数k
k = 132;
% 设置允许的译码失败概率
dlt = 0.2;
% 设置常数c
% 给出c的取值范围
c_min = sqrt(k)/log(k/dlt)/(k-1);
c_max = sqrt(k)/log(k/dlt)/2;
c = c_min;
% ripple大小的期望值
R = c * log(k/dlt) * sqrt(k);
for i = 1:k
if i < k/R - 1
Tau(i) = R/(i*k);
elseif i == k/R
Tau(i) = R*log(R/dlt)/k;
else
Tau(i) = 0;
end
end
for j = 1:k
if j == 1
rho(j) = 1/k;
else
rho(j) = 1/(j*(j-1));
end
end
Beta = sum(Tau + rho);
Mu = (Tau + rho) / Beta;
P = sum(Mu);
% 划分区间
area_buff = round(Mu * k);
area = [];
for i = 1:length(area_buff)
area = [area i*ones(1,area_buff(i))];
end
% 在1到length(area)中等概选择一个数
for i=1:length(area)*2
index_area(i) = randint(1,1,[1,length(area)]);
end
[m,n] = find(area(index_area) == 1);
bar(Mu);
hold on
plot(Mu,'r');
dasda=0
⛄ 运行结果
⛄ 参考文献
% 参考文献:《喷泉码的编译码算法研究与仿真实现》
⛳️ 代码获取关注我
❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料