前言:
此刻你们对“python如何解偏微分方程”都比较注重,兄弟们都需要学习一些“python如何解偏微分方程”的相关资讯。那么小编也在网摘上收集了一些有关“python如何解偏微分方程””的相关文章,希望我们能喜欢,各位老铁们快快来学习一下吧!本文将学习Python的Sympy库,通过该库来求极限,微分,定积分与不定积分,常微分方程、偏微分方程。
求解方程组
先通过求解一组方程组来理解Sympy的用法,假设有以下一组方程组:
求解这个方程组的代码如下:
输出结果如下:
在函数fangchengzu()中,symbols声明了两个变量x和y,相当于应用题中假设某某为x,y一样,告诉程序已经定义了两个变量。solve()函数有两个元组实参,第一个元组存放方程组,每个方程的值均为0;第二个参数存放待求解的值x,y。
如果每个元组的个数为单个,则以单个元素的元组形式传递,代码如以及实现效果如下图:
自此可以看到sympy解决问题的一般思路为,先声明需要用到的变量,构造需要求的方程式,接着使用对应的函数方法来求解。
求极限
例如需要求以下的极限:
实现代码如下:
代码中limit函数用于求极限,第一个参数放表达式,第二个为自变量,第三个为表达式在某处的极限。输出结果如下:
微分
求微分用到diff()函数,例如需要求以下微分:
实现代码如下:
diff()函数第一个参数存放表达式,第二个参数存放对哪个变量求微分,如需要计算高阶导数,可在后面加数字,没写默认求一阶导数。输出结果如下:
diff()函数也可以用来求偏导,例如求以下的偏导:
实现代码如下:
输出结果为:
不定积分与定积分
在数学上不定积分的表达式如下:
抛开数学上求解不定积分的方法,我们无需关心怎么算,只需关系怎么让计算机帮我们算。例如需要计算以下的不定积分:
求不定积分需要用到integrate()函数,实现代码如下:
效果如下:
接下来看定积分,定积分比不定积分多了个范围限制,比如求下面的定积分:
与不定积分一样,求积分使用的是interate()函数,但求定积分需要增加范围限制。这个例子需要先求微分再求积分,代码如下:
输出结果如下:
常微分方程与偏微分方程
常微分方程是指微分方程中只有一个变量的方程,解常微分方程需要用到dsolve()函数。例如需要求以下的常微分方程:
实现代码如下:
使用dsolve求结果,输出结果如下:
偏微分方程是指微分方程中含有多个变量的方程,解偏微分方程用到pdsolve()函数。例如需要求以下偏微分方程:
实现代码为:
输出结果为:
结束
以上为使用Python解决高数中求微分,积分以及微分方程等问题的过程,可以看到重点已经由怎么用数学方法解决转变为如何将表达式正确的传给计算机,让计算机求解。对于其他问题例如矩阵化简,级数展开等也可以解决,具体可以参考Sympy的文档说明。
标签: #python如何解偏微分方程