python 通信_深入浅出通信原理(Python代码版)
深入浅出通信原理Python代码版
深入浅出通信原理是陈爱军的心血之作,于通信人家园连载,此处仅作python代码笔记训练所用
陈老师的连载从多项式乘法讲起,一步一步引出卷积、傅立叶级数展开、旋转向量、三维频谱、IQ调制、数字调制等一系列通信原理知识
连载1:从多项式乘法说起
\[
(x+1)(x^2+2x+5)=x^3+3x^2+7x+5
\]
import sympy
x = sympy.Symbol('x')
sympy.expand((x+1)*(x*x+2*x+5))
这种计算方法总结起来就是:
反褶:一般多项式都是按x的降幂排列,这里将其中一个多项式的各项按x的升幂排列。
平移:将按x的升幂排列的多项式每次向右平移一个项。
相乘:垂直对齐的项分别相乘。
求和:相乘的各结果相加。
反褶、平移、相乘、求和-这就是通信原理中最常用的一个概念“卷积”的计算过程。
连载2:卷积的表达式
将多项式转换成矩阵形式
\[
x+1 -> [1,1]\x^2+2x+5 -> [1,2,5]\x^3+3x^2+7x+5=[1,1]*[1,2,5]=[1,3,7,5]
\]
其中卷积(*)的运算如下:
\(c(n)=a(n)*b(n)=\sum_{k=0}^n{a(k)b(n-k)},n=0~(n1+n2)\)
其中n1是a(n)的系数总个数,n2是b(n)的系数总个数
Python计算卷积
import numpy as np
np.convolve([1,1],[1,2,5]) #上例,result:[1, 3, 7, 5]
# 杨辉三角,输入行数,输出对应行的值
def pascal_triangle(n):
if n == 0:
return 1
elif n == 1:
return [1,1]
else:
return np.convolve([1,1],pascal_triangle(n-1))
# test code
for i in range(0,7):
print(pascal_triangle(i))
# 杨辉三角,迭代器形式
def triangles():
nlist=[1]
while True:
yield nlist
nlist.append(0)
nlist = [nlist[i] + nlist[i-1] for i in range(len(nlist))]
# test code
tr = triangles()
for i in range(0,7):
print(next(tr))
python 通信_深入浅出通信原理(Python代码版)相关推荐
- 深入浅出 GAN·原理篇文字版(完整)
深入浅出 GAN·原理篇文字版(完整)|干货 机翼技术 百家号 05-29 02:02 导语 这次的内容主要是想梳理 GAN 从 NIPS 2014 被提出,到 2017年5月,都有哪些重要的从原理和 ...
- python 通信系统仿真_深入浅出通信原理连载22-40(Python代码版)
深入浅出通信原理Python代码版 深入浅出通信原理是陈爱军的心血之作,于通信人家园连载,此处仅作python代码笔记训练所用 陈老师的连载从多项式乘法讲起,一步一步引出卷积.傅立叶级数展开.旋转向量 ...
- python频域三维图_深入浅出通信原理连载1-21(Python代码版)
深入浅出通信原理Python代码版 深入浅出通信原理是陈爱军的心血之作,于通信人家园连载,此处仅作python代码笔记训练所用 陈老师的连载从多项式乘法讲起,一步一步引出卷积.傅立叶级数展开.旋转向量 ...
- python和arduino串口通信_利用串行通信实现python与arduino的同步
我有一个需要:使用arduino将伺服电机移动到某个位置并在该位置停止 让一个由python控制的相机在那个位置获取图像 当图像被采集到时,伺服机构应该移动到一个对称的位置 这个序列重复N次 所以我尝 ...
- python 优先队列_示例讲解:python队列原理及实现方法与操作思路
今天为大家带来的内容是:示例讲解:python队列原理及实现方法与操作思路 本文内容主要介绍了python队列原理及实现方法,结合实例形式详细分析了Python队列的概念.原理.定义及基本操作技巧,需 ...
- anaconda3对应的python版本_利用SWIG实现Python调用C/C++!速度快就算了,代码量还特少!...
SWIG简介 SWIG是Simplified Wrapper and Interface Generator的简称,它是一个能将C和C++的程序与其他各种高级语言诸如Perl,Python,Ruby和 ...
- 计算机导论python知识点_如何系统地自学 Python?
我是自学的Python.从对Python一无所知,到在博客上写Python相关的系列文章(Python快速教程),前后有将近三年的时间.期间有不少门槛,但也充满乐趣.乐趣是自学的最大动力.Python ...
- 使用python数据分析_我如何使用Python分析《权力游戏》
使用python数据分析 By Rocky Kev 洛基·凯夫(Rocky Kev) I wanted to learn Python for a long time, but I could nev ...
- 3 x 10的python表达式_这道数学题用PYTHON编程语言怎么写? 编程语言python是用
我觉着,这个应该这样解决比较符合计算机解题思路. 下面的回答的,思考的东西太多. # -*- coding: utf-8 -*- __author__ = 'lpe234' __date__ = '2 ...
- 零基础学python 视频_全网最全Python视频教程真正零基础学习Python视频教程 490集...
Python Web开发-进阶提升 490集超强Python视频教程 真正零基础学习Python视频教程 [课程简介] 这是一门Python Web开发进阶课程,手把手教你用Python开发完整的商业 ...
最新文章
- WF4 Beta,RC版文章总结
- JavaScript 技术篇-textContent获取dom节点text文本内容带空格,js获取带空格的dom节点内容
- 如何计算近似纳什均衡_明明合作可以“共赢”,为什么他会损人不利己?博弈论之纳什均衡...
- java utf-8格式,JAVA编写文件格式转换UTF-8
- [Windows Server 2012] Discuz X3安全设置
- CentOS通过yum安装高版本gcc
- A+B and C (64bit)
- Git不断询问我ssh密钥密码
- numpy.reshape
- samba服务端配置和客户端使用【含windows共享文件到linux】
- 云计算未来的5个发展趋势分析
- 成果展示 | 大数据应用开发平台DWF
- 5部靠身材和脸蛋撑起了整部电影,女主光环太刺眼,部部是经典!
- 推荐几个适合上班摸鱼的神操作!
- 微信小程序九宫格预览+单张图片预览
- JAVA简单手写数字识别
- MySQL数据库引擎、数据事务与隔离级别
- 机器学习(Machine learning: a probabilistic perspective) 第三章阅读笔记
- LAMP编程之Linux-1
- ApolloScape自动驾驶数据集