p_yx= input('信道矩阵P_YX='); %输入信道矩阵
[r,s]=size(p_yx);
b=0.01; %迭代精度
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)=0;
for i=1:r
q(j)=q(j)+p(i)*p_yx(i,j);
end
end
for i=1:r
d(i)=0;
for j=1:s
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:r
u=u+p(i)*a(i);
end
for i=1:r
p(i)=p(i)*a(i)/u;
end
C0=C;
C=log2(u);
n=n+1;
end
disp('信道容量');
C
disp('输入分布:')
p

wangkai900027
- 粉丝: 1
- 资源: 1
会员权益专享
最新资源
- 梯度下降法-Python实现示例
- flybird-windows-arm64.exe window平台arm64架构免费数据库MySQL管理软件
- TZ-I9-DETAIL
- flybird-windows-amd64.exe window平台amd64架构免费数据库MySQL管理软件
- 决策树莺尾花-Python scikit-learn库
- flybird-darwin-arm64是MacOS平台 arm64架构的免费mysql数据库管理工具
- flybird-darwin-amd64是MacOS平台 amd64架构的免费mysql数据库管理工具
- vue实现刷新页面(两种方式)
- js实现a标签跳转打开新页面
- 健康监测卡.xlsx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈


