资源简介

资源包含了信道容量的迭代算法,shannon编码,fano编码,huffman编码,其中信道容量的迭代算法是自己编的其他的都是修改网上的代码

资源截图

代码片段和文件信息

p_yx= input(‘信道矩阵P_YX=‘);   %输入信道矩阵
[rs]=size(p_yx);
b=input(‘输入迭代精度:‘);    %输入迭代精度
for i=1:r
   p(i)=1.0/r;      %初始概率为均匀分布
end
C0=-inf;
C=1;
n=0;
while(abs(C-C0)/C>=b)   %迭代计算
    for j=1:s     %计算q(j)
        q(j)=0;
        for i=1:r
            q(j)=q(j)+p(i)*p_yx(ij);
        end
    end
    for i=1:r %计算a(i)
        d(i)=0;
        for j=1:s
            if(p_yx(ij)==0)
                d(i)=d(i)+0;
            else
                d(i)=d(i)+p_yx(ij)*log(p_yx(ij)/q(j));
            end
        end
        a(i)=exp(d(i));
    end
    u=0;
    for i=1:r %计算u
        u=u+p(i)*a(i);
    end
    for i=1:r
        p(i)=p(i)*a(i)/u; %重新赋值p(i)
    end
    C0=C;
    C=log2(u); %计算C
    n=n+1;
end
disp(‘输入分布:‘)
p
disp(‘信道矩阵为:‘);
disp(p_yx);
disp(‘迭

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        930  2010-06-30 23:12  huffman.m

     文件        894  2010-06-12 19:17  c.m

     文件        771  2010-06-30 23:13  shannon.m

     文件        781  2010-06-30 23:12  fano.m

----------- ---------  ---------- -----  ----

                 3376                    4


评论

共有 条评论