clc;clear;
K = 5000;
m = K;
u = 0;
degree = 100; %迭代次數
sigema =sqrt(0.5); % %(0.5/r)*10^(-0.1*(Eb_N0));% Eb_N0 = 1 ; %单位:dB % n = 10;% r = m/n;%
sum_1= [0.007969,0.501539,0.667759,0.740405,0.822963,0.879021,0.91625,0.97184,0.996863,1];
P_du = [1 2 3 4 5 8 9 19 65 66];
expense = [7000,2100,2200,2300,2400,2500,2600];
tol_stats = zeros(7,300);
tol_stats1 = zeros(7,300);
run_freq_1 = 300;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%***************初始化结束*************
for count_iii = 1:1 % 1:5
n = expense(count_iii) %译码开销[7000,7500,8000,8500,9000]
rand('state',23413+123);
randn('state',12347+321);
for count_ii = 1:run_freq_1
% %**********生成矩陣G開始*************
if mod(count_ii,30)==0
countt = count_ii
end
Pgenerate = rand(1,n);
label = zeros(1,n);
for j_jj = 1:n
for i_ii = 1:10
if Pgenerate(j_jj)<=sum_1(i_ii)
label(j_jj)= P_du(i_ii);
break;
end
end
end
label;
for j = 1:n
a = zeros(1,m);
vector = randperm(m,label(j));
for i = 1:label(j)
a(vector(i)) = 1;
end
G(1:m,j) = a;
end
G;
%**************生成矩陣G結束***************
%x=sigma*randn(1,n)+u ,N(u,sigma)
%**********信源碼字通過高斯信道開始*********