LDPC-matlab

所属分类:matlab编程
开发工具:matlab
文件大小:16KB
下载次数:56
上传日期:2011-04-14 15:57:50
上 传 者1341176
说明:  用于LDPC仿真的matlab代码,仿真LDPC编码的性能
(Matlab simulation for LDPC code simulation of the performance of LDPC codes)

文件列表:
LDPC matlab\Compute_Thre.cpp (1436, 2011-03-15)
LDPC matlab\de.h (558, 2011-03-15)
LDPC matlab\DE_main.cpp (9517, 2011-03-15)
LDPC matlab\Diff_Evolution.cpp (5144, 2011-03-15)
LDPC matlab\Discrete_DE.cpp (13158, 2011-03-15)
LDPC matlab\fftw3.h (16504, 2011-03-15)
LDPC matlab\random.h (4180, 2011-03-15)
LDPC matlab (0, 2011-04-14)

注意事项: 1、fftw库的使用; 2、由于需用到的atanh函数在C99标准里才支持,因而选用code::blocks进行编程,内置GCC; 3、需正确理解非规则码迭代公式; 4、需正确理解离散信号时域上卷积与频域上乘积的关系,需做一定变换,见Discrete_DE.cpp中的conv中最后所作的倒序和调用clip_pdf函数; 5、为加速寻找门限值(sigma),采用折半查找法而非遍历的方式,需Discrete_DE支持返回当前值与期望值相比是大还是小; 6、为加速程序运行速度,牺牲精度,门限值保持小数点后三位精度即可,此方法可以较大程度上缩减时间,原因是越***近期望门限值,所需迭代次数越多; 7、程序运行速度的提升可以由debug模式改为release模式; 8、为了保持门限值始终保持小数点后三位精度,采用*1000后/1000的方式,由于机器存储浮点型数据存在一定误差,因而double转int时会产生误差, 如800在机器中实际存储的可能为799.999999...,强制转化为int,则得到的结果为799,与预期不一致,因而采用+0.1的方式,以校对浮点型存储误差。 9、内存泄漏问题,应在return之前释放; 10、差分进化时,传递给”门限计算“的最高度数若小于0则置为0,但差分进化的最高度数向量不应该变,否则会带来进化误差; 11、best向量不更新,需注意传参和传指针的区别; 12、修改了fftw变量的初始化方式; 13、添加erasure信道信息;

近期下载者

相关文件


收藏者