《信道容量迭代计算实验报告(共3页).doc》由会员分享,可在线阅读,更多相关《信道容量迭代计算实验报告(共3页).doc(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上信道容量迭代计算实验报告王升信科1002信道容量迭代计算实验报告一、 实验目的:了解信道容量的定义和计算方法,能编写出正确的程序进行迭代计算得出信道容量。二、 实验要求:1)输入:输入信源个数、信宿个数和信道容量的精度,程序能任意生成随机的信道转移概率矩阵。 2)输出:输出最佳信源分布和信道容量。三、实验环境: Matlab四、实验原理:五、源程序代码:clear;r=input(输入信源个数:); s=input(输入信宿个数:); deta=input(输入信道容量的精度: ); Q=rand(r,s); %创建m*n随机分布矩阵A=sum(Q,2); B=rep
2、mat(A,1,s);disp(信源转移概率矩阵:),p=Q./B %信源转移概率矩阵i=1:1:r; q(i)=1/r;disp(原始信源分布:),q c=-10e-8;C=repmat(q,1,s); for k=1:1: m=p.*C; %后验概率的分子部分 a=sum(m); %后验概率的分母部分 su1=repmat(a,r,1); t=m./su1; %后验概率矩阵 D=exp(sum(p.*log(t),2); %信源分布的分子部分 su2=sum(D); %信源分布的分母部分 q=D/su2; %信源分布 C=repmat(q,1,s); c(k+1)=log(sum(exp(sum(p.*log(t),2)/log(2); kk=abs(c(k+1)-c(k)/c(k+1); if(kk=0.) break; end end disp(最大信道容量时的信源分布:q=),disp(q) disp(最大信道容量:c=),disp(c(k+1)六、实验结果:专心-专注-专业