function [P_X,C,N]=contmax(P_YX,e)
% 计算任意信道的信道容量C及最佳输入分布P_X
% P_X -------输入概率分布
% C----------信道容量
% N----------迭代次数
% P_YX-----DMC信道的转移矩阵
% e-----------精度
if length(find(P_YX<0)~=0)
error('Not a probable vector.Negtive component');
end
if abs(sum(P_YX')-1)>10e-10
error('Not a probable vector,Component do not add up to "1" ');
end
% 变量初始化
C1=1;C=0;N=0; r=size(P_YX);P_X=ones(1,r(1))/r(1);
%powered by Wu Botao, A304212
% 调整P_YX的零元素值
Pyx=(P_YX==0).*eps;P_YX=P_YX+Pyx;
% 迭代求解
while (abs(C1-C))>e
P_Y=P_X*P_YX;
I1=sum((P_YX.*log2(P_YX))');
I2=log2(P_Y)*(P_YX'); BETA=exp(I1-I2);
B=P_X*(BETA');
C1=log(B);C=log(max(BETA));
P_X=P_X.*BETA/B;
N=N+1;
end
文件二:执行文件 wubotao_xdrl.m
p=0.3;P_YX=[1,0,0;0,1-p,p;0,p,1-p]; %信道的转移矩阵
[P_X,C,n]=contmax(P_YX,0.001)
C0=log2(1+2*(p^p)*((1-p)^(1-p)))
xindao.rar_MATLAB迭代求解_信道 迭代算法_信道容量_信道容量 迭代_容量 matlab
版权申诉
5星 · 超过95%的资源 89 浏览量
2022-09-22
19:12:08
上传
评论
收藏 723B RAR 举报
JonSco
- 粉丝: 72
- 资源: 1万+
最新资源
- Pytorch-pytorch深度学习教程之逻辑回归.zip
- Pytorch-pytorch深度学习教程之双向循环网络.zip
- Pytorch-pytorch深度学习教程之卷积神经网络.zip
- Pytorch-pytorch深度学习教程之前馈神经网络.zip
- Pytorch-pytorch深度学习教程之线性回归.zip
- Pytorch-pytorch深度学习教程之基本操作.zip
- 基于QT的地图可视化桌面系统后台数据库为MySQL5.7源码.zip
- 基于simulink的PLL锁相环系统仿真【包括模型,文档,参考文献,操作步骤】
- 基于EM-GMM模型的目标跟踪和异常行为检测matlab仿真【包括程序,注释,参考文献,操作步骤,说明文档】
- 2109010044_胡晨燕_选课管理数据库设计与实现.prj
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
评论1