- 368
- 0
- 约2.76千字
- 约 8页
- 2021-06-28 发布于广东
- 举报
PAGE
《信息与编码》课内实验报告
学生姓名:
及 学 号:
学 院:
理学院
班 级:
课程名称:
信息与编码
实验题目:
离散信道容量
指导教师
姓名及职称:
常志文 副教授
朱振菊 讲师
刘力 实验师
201
目 录
TOC \o 1-1 \h \z \u 一、实验目的 1
二、实验内容 1
三、实验要点及说明 1
四、实现方法 1
五、实验结果 2
六、源程序清单 4
七、思考及总结 6
- PAGE 6 -
一、实验目的
1.掌握离散信道的信道容量的计算方法;
2.理解不同类型信道的不同特点与不同的计算方法;
二、实验内容
1.进一步熟悉一般离散信道的信道容量计算方法;
2.进一步复习巩信道性质与实际应用;
3.学习如何将复杂的公式转化为程序。
三、实验要点及说明
准确理解信道容量计算公式意义及如何计算,并能通过matlab编程计算相应信道容量;
要编写一个通用的程序,计算不同类型的信道的容量,进一步分析影响信道容量的因素。
四、实现方法
以matlab软件为基础,以通过编程,
1)计算对称信道的信道容量。
2)计算非对称信道的信道容量。
3)分析影响信道容量的因素。
五、实验结果
1、计算非对称信道的信道容量。
2、计算对称信道的信道容量。
3、影响信道容量的因素。
此处,我们的程序只实现了方阵信道信道容量的计算,但是实际上非方阵的也能容易计算。容易发现,影响信道容量因素有:信源和信宿的个数,以及各个信道的概率,虽然说,这个过程中会有信息量的损失,但是这个我们在计算信道容量的时候也是计算在内的,所以不算是一个影响因素。
六、源程序清单
%信道容量C计算的Matlab程序
clc;clear all;
N = input(输入信源符号X的个数N=);
M = input(输出信源符号Y的个数M=);
p_yx=zeros(N,M); %程序设计需要信道矩阵初始化为零
fprintf(输入信道矩阵概率\n)
for i=1:N
for j=1:M
p_yx(i,j)=input(p_yx=);%输入信道矩阵概率
if p_yx(i)0
error(不符合概率分布)
end
end
end
for i=1:N %各行概率累加求和
s(i)=0;
for j=1:M
s(i)=s(i)+p_yx(i,j);
end
end
for i=1:N %判断是否符合概率分布
if (s(i)=0.999999||s(i)=1.000001)
error(不符合概率分布)
end
end
b=input(输入迭代精度:);%输入迭代精度
for i=1:N
p(i)=1.0/N; %取初始概率为均匀分布
end
for j=1:M %计算q(j)
q(j)=0;
for i=1:N
q(j)=q(j)+p(i)*p_yx(i,j);
end
end
for i=1:N %计算a(i)
d(i)=0;
for j=1:M
if(p_yx(i,j)==0)
d(i)=d(i)+0;
else
d(i)=d(i)+p_yx(i,j)*log(p_yx(i,j)/q(j));
end
end
a(i)=exp(d(i));
end
u=0;
for i=1:N %计算u
u=u+p(i)*a(i);
end
IL=log2(u); %计算IL
IU=log2(max(a));%计算IU
n=1;
while((IU-IL)=b) %迭代计算
for i=1:N
p(i)=p(i)*a(i)/u; %重新赋值p(i)
end
for j=1:M %计算q(j)
q(j)=0;
for i=1:N
q(j)=q(j)+p(i)*p_yx(i,j);
end
end
for i=1:N %计算a(i)
d(i)=0;
for j=1:M
if(p_yx(i,j)==0)
d(i)=d(i)+0;
else
d(i)=d
您可能关注的文档
最近下载
- MGA2000系列产品手册通用版.doc VIP
- (高清版)DB4401∕T 157-2022 《埋地燃气管道运行风险控制技术规范》.pdf VIP
- 好莱坞类型电影—托马斯·沙茨.pdf VIP
- 17CJ10-1:LEAC丙烯酸聚合物水泥防水涂料应用构造 .docx VIP
- 药品(含中药饮片)专业知识培训试卷测试题及答案.docx
- 2026-2031制动器行业市场环境分析.docx
- 食材配送服务质量保证方案.docx VIP
- 标准图集-10J301-地下建筑防水构造.pdf VIP
- 矩阵理论:矩阵的Jordan标准型PPT教学课件.pptx VIP
- 《车库建筑设计规范》(100-2015) 【可编辑】.pptx VIP
原创力文档

文档评论(0)