python实现傅里叶级数展开的实现


Posted in Python onJuly 21, 2018

傅立叶级数的介绍我就不说了,自己也是应用为主,之前一直觉得很难懂,但最近通过自己编程实现了一些函数的傅立叶级数展开之后对傅立叶 级数展开的概念比较清楚了

python实现傅里叶级数展开的实现

(1)函数如下

python实现傅里叶级数展开的实现

函数图象如下:

python实现傅里叶级数展开的实现 

代码:

from pylab import *
x = mgrid[-10:10:0.02] # 这里类似于MATLAB用冒号产生步长为0.02的序列,但是语法和MATLAB不同
n = arange(1,1000)
def fourier_transform():
 a0 = (1-exp(-pi))/pi+1
 s=a0/2
 for i in range(1,100,1):
 s0 = ( (1-(-1)**i*exp(-pi))/(pi*(1+i**2))*cos(i*x)+1/pi*( (-i*(1-(-1)**i*exp(-pi)))/(1+i**2) + (1-(-1)**i)/i ) * sin(i*x) )
 s=s+s0
 plot(x,s,'orange',linewidth=0.6)
 title('fourier_transform')
 show() 

fourier_transform()

结果如下:

python实现傅里叶级数展开的实现

(2)

python实现傅里叶级数展开的实现

python实现傅里叶级数展开的实现

转换代码:

from pylab import *
def fourier1():
 s=pi/2

 for i in range(1,100,1):
 s0 = 2/pi*(1-(-1)**i)/i**2 * cos(i*x) 
 s=s+s0
 plot(x,s,'orange',linewidth=0.6)
 title('fourier1')
 show()
fourier1()

结果如下:

python实现傅里叶级数展开的实现

关于傅里叶级数展开的还有一些例子在我的另一篇博客https://3water.com/article/144196.htm也有讨论,通过以上的例子可以很好直观感受傅立叶级数的作用,在电气工程上对分析流经变压器的谐波分量、整流装置输出谐波等分析具有重要作用。

还有一点就是python的强大功能,利用for循环语句可以方便地实现级数展开的求和运算,自己感觉编程起来比MATLAB/Octave跟快

相关文章:Python实现快速傅里叶变换(FFT)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现方便使用的级联进度信息实例
May 05 Python
Python程序中用csv模块来操作csv文件的基本使用教程
Mar 03 Python
读写json中文ASCII乱码问题的解决方法
Nov 05 Python
Python建立Map写Excel表实例解析
Jan 17 Python
Tensorflow卷积神经网络实例进阶
May 24 Python
Django框架使用富文本编辑器Uedit的方法分析
Jul 31 Python
pygame实现俄罗斯方块游戏(AI篇2)
Oct 29 Python
Python内存映射文件读写方式
Apr 24 Python
keras之权重初始化方式
May 21 Python
Python使用tkinter实现摇骰子小游戏功能的代码
Jul 02 Python
python实现银行账户系统
Feb 22 Python
pytorch 中autograd.grad()函数的用法说明
May 12 Python
Python实现快速傅里叶变换的方法(FFT)
Jul 21 #Python
Python实现获取本地及远程图片大小的方法示例
Jul 21 #Python
opencv python 傅里叶变换的使用
Jul 21 #Python
Numpy中的mask的使用
Jul 21 #Python
Flask框架使用DBUtils模块连接数据库操作示例
Jul 20 #Python
Flask框架WTForm表单用法示例
Jul 20 #Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 #Python
You might like
php include加载文件两种方式效率比较
2010/08/08 PHP
文本链接逐个出现的js脚本
2007/12/12 Javascript
使用jQuery Ajax功能时需要注意的一个问题(内存溢出)
2012/05/30 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
BootStrap点击下拉菜单项后显示一个新的输入框实现代码
2016/05/16 Javascript
JS判断是否为JSON对象及是否存在某字段的方法(推荐)
2016/11/29 Javascript
微信小程序 request接口的封装实例代码
2017/04/26 Javascript
微信小程序实现日历效果
2018/12/28 Javascript
Vue项目引发的「过滤器」使用教程
2019/03/12 Javascript
vue回到顶部监听滚动事件详解
2019/08/02 Javascript
vue之debounce属性被移除及处理详解
2019/11/13 Javascript
使用Vue 自定义文件选择器组件的实例代码
2020/03/04 Javascript
[06:40]2014DOTA2西雅图国际邀请赛 DK战队巡礼
2014/07/07 DOTA
python将多个文本文件合并为一个文本的代码(便于搜索)
2011/03/13 Python
python3简单实现微信爬虫
2015/04/09 Python
Python3自动签到 定时任务 判断节假日的实例
2018/11/13 Python
在python 不同时区之间的差值与转换方法
2019/01/14 Python
Python表达式的优先级详解
2020/02/18 Python
Python paramiko 模块浅谈与SSH主要功能模拟解析
2020/02/29 Python
Mysql数据库反向生成Django里面的models指令方式
2020/05/18 Python
Python3爬虫中pyspider的安装步骤
2020/07/29 Python
Python unittest如何生成HTMLTestRunner模块
2020/09/08 Python
Python 用__new__方法实现单例的操作
2020/12/11 Python
python中xlutils库用法浅析
2020/12/29 Python
在Ubuntu中安装并配置Pycharm教程的实现方法
2021/01/06 Python
Pytorch 中的optimizer使用说明
2021/03/03 Python
BIBLOO波兰:捷克的一家在线服装店
2018/03/09 全球购物
优秀学生干部个人事迹材料
2014/06/02 职场文书
放飞梦想演讲稿600字
2014/08/26 职场文书
党员演讲稿
2014/09/04 职场文书
家庭贫困证明书(3篇)
2014/09/15 职场文书
范文之农村基层党建工作报告
2019/10/24 职场文书
浅谈Golang 嵌套 interface 的赋值问题
2021/04/29 Golang
Jupyter notebook 更改文件打开的默认路径操作
2021/05/21 Python
使用Nginx+Tomcat实现负载均衡的全过程
2022/05/30 Servers