数字通信功能包

digcommp的Python项目详细描述


#数字通信 Python3数字通信模拟软件包。

它包括信道编码和不同的信道模型。可以运行模拟 计算不同配置的位/块错误率。

#安装 可以使用pip和命令pip install安装包 数字通信

或者,您可以克隆gitlab存储库并安装本地副本 使用以下命令:

git clone https://gitlab.com/klb2/digcommpy.git
cd digcommpy pip install .

#用法 在examples文件夹中有多个示例文件。

##基本编码/解码示例 使用极轴编码的简单编码示例:

from digcommpy import messages, encoders
n, k = 16, 4
encoder = encoders.PolarEncoder(n, k, “BAWGN”, 0.)
mess = messages.generate_data(k, number=1000, binary=True) codewords = encoder.encode_messages(mess)

完整的传动链可以模拟如下:

from digcommpy import messages, encoders, decoders, channels, modulators, metrics
# Parameters n, k = 16, 4 snr = 5. # dB # Blocks encoder = encoders.PolarEncoder(n, k, “BAWGN”, snr) modulator = modulator.BpskModulator() channel = channels.BawgnChannel(snr, rate=k/n) decoder = decoders.PolarDecoder(n, k, “BAWGN”, snr) # Simulation mess = messages.generate_data(k, number=1000, binary=True) codewords = encoder.encode_messages(mess) channel_input = modulator.modulate_symbols(codewords) channel_output = channel.transmit_data(channel_input) est_mess = decoder.decode_messages(channel_output) ber = metrics.ber(mess, est_mess) print(“The BER is {}”.format(ber))

这可以通过使用 包(正在进行)。

#使用的软件 这个库的某些部分基于不同的开源实现。 极性码编解码是基于matlab实现的 来自Harish Vangala等人。(http://polarcodes.com/)。 一些功能的实现,例如qam调制基于 倍频程通信包(https://octave.sourceforge.io/)。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在输出文件中跟踪基于文本的刽子手游戏   java阻止打印超时异常消息   线程“main”java中的json异常。java上的lang.NullPointerException。伊奥。StringReader<初始化>(未知源)   java在Android上创建交互式等高线图   java如何安装Xugler?   java Microsoft Access with JDBC:如何获取给定字段的“caption”属性?   java如何在使用rich:fileUpload时有多个文件大小限制   java重构代码时切换案例过多   安卓在GAE服务器上用Java导入Weka   java为什么我的while循环不会打断任何可以帮助我的人?   设置深度:java。util。树图   java退出JSF流   m2e的生命周期配置未涵盖java插件mavenantrunplugin执行   有人能推荐Java8模式来代替switch语句吗?   在pc硬盘中使用java GUI保存swing文件   java Gradle无法启动您的生成。我不知道发生了什么,但是安卓 studio显示了这个错误。昨天它不在那里,但今天我不知道发生了什么   Selenium with Java使用密钥发送密钥。桌棋类游戏