欢迎来到天天文库
浏览记录
ID:23939131
大小:1.64 MB
页数:3页
时间:2018-11-11
《基于Python求解偏微分方程的有限差分法.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
·14·ComputerEraNo.112016DOI:10.16644/j.cnki.cn33-1094/tp.2016.11.005基于Python求解偏微分方程的有限差分法*王登岳,张宏伟(西安石油大学电子工程学院光电油气测井与检测教育部重点实验室,陕西西安710065)摘要:偏微分方程的求解是很多科学技术问题的关键难点。随着计算机性能的不断提高,数值解法能够解复杂的偏微分方程并将计算结果图形化。相对于昂贵的科学计算软件,Python是一种免费的面向对象、动态的程序设计语言。有限差分法以其概念清晰,方法简单、直观等特点在偏微分方程的求解中得到了广泛的应用。文章对矩形区域的拉普拉斯方程进行数值求解,采用Numpy对有限差分法进行计算,运用Matplotlib绘制等值线,输出迭代次数以及误差。关键词:偏微分方程;Python;数值解法;有限差分法中图分类号:TP3文献标志码:A文章编号:1006-8228(2016)11-14-03PythonprogrammedfinitedifferencemethodforsolvingpartialdifferentialequationsWangDengyue,ZhangHongwei(Xi'anShiyouUniversity,ElectricEngineeringCollege,KeyLaboratoryofPhotoElectricityGasandOilDetectingofMinistryofEducation,Xi'an,Shaanxi710065,China)Abstract:Tosolvethepartialdifferentialequations(PDE)isakeydifficultpointinmanyscientificandtechnicalproblems.Withthedevelopmentofcomputerperformance,numericsolutioncansolvemanysophisticatedPDEandvisualizethenumericresults.Ratherthantheexpensivesciencecomputingsoftware,Pythonisafreeobject-orientedlanguage,dynamicprogramminglanguage.Finitedifferencemethod(FDM)iswidelyusedforitsclear,simpleandintuitive.Laplaceprobleminarectangularareaissolvednumericallyinthearticle,computedthroughFDMwiththeNumpylibrary,visualizedthroughplottingthecontourbytheMatplotliblibrary,andthenumberofiterationandtheerroraregiven.Keywords:partialdifferenceequation;Python;numericsolution;finitedifferencemethod0引言序库的开发,Python同样适合于做科学计算以及绘制在数学中,偏微分方程是包含多变量和它们的偏高质量的2D和3D图像。与科学计算领域的商业软件导数在内的微分方程。偏微分方程通常被用来求解Matlab相比,Python是一门通用的程序设计语言,比声、热、静态电场、动态电场、流体、弹性力学或者量子Matlab所采用的脚本语言的应用更广泛,有更多的程[1]序库的支持。力学方面的问题。这些现象能够被模式化的偏微分方程描述,正如一维动态系统通常会用常微分方程描Numpy是使用Python进行科学计算的基础包:①述。为了更深入地理解上述各种现象,求解偏微分方它的基本类型是N-维阵列对象;②提供了功能强大的程成为理解以及解释上述现象的关键。函数;③可以提供C/C++与Fortran代码的接口;④强[2]大的线性代数计算,傅里叶变换以及随机数计算。1Python及相关模块简介SciPy由一系列的数值计算和特定领域的工作箱构成,Python是一种面向对象、动态的程序设计语言。常用的工具箱包括信号处理,优化算法以及统计等。具有非常简洁而清晰的语法,适合完成各种高层任Matplotlib能够产生不同格式高质量的图片,该软务。它既可用来快速开发程序脚本,也可用来开发大件可以在不同的平台上使用,例如采用Python脚本,规模的软件。随着Numpy,SciPy,Matplotlib等众多程提供python或者Ipython的命令行接口(类似于Matlab收稿日期:2016-8-23*基金项目:国家自然基金项目(51504194);陕西省科技攻关项目(2016GY-167)作者简介:王登岳(1989-),男,陕西省渭南市人,硕士在读,主要研究方向:电磁探测技术。万方数据 计算机时代2016年第11期·15·[3]或Mathematica)等等。Matplotlib能够绘制直方图、为二维平行平面场问题。选定直角坐标系如图1所功率谱图、残差图以及散点图等等。本次我们采用示,槽内电位函数满足拉普拉斯方程,构成如下的第Matplotlib中的简单的绘图对象Pyplot,Pyplot提供了一类边值问题:一个类Matlab的接口,可以通过Pyplot完全控制线型、∂2j∂2j+=0(x,y)ŒD字体特征和坐标轴特征等。∂x2∂y22PDE解法简介j(x=0,0£y£100)=j(y=0,0£x£100)=j(x=100,0£y£100)=0求解偏微分方程可以通过解析方法求解,解析法j=100(0
此文档下载收益归作者所有
举报原因
联系方式
详细说明
内容无法转码请点击此处