使用Python

您所在的位置:网站首页 矩阵多项式方程求解 使用Python

使用Python

2024-06-20 16:39| 来源: 网络整理| 查看: 265

使用Python-sympy计算高等数学(多项式求值、求极限、解方程、求积分、微分方程、级数展开、矩阵运算等)

sympy是一个Python的科学计算库,用一套强大的符号计算体系完成诸如多项式求值、求极限、解方程、求积分、微分方程、级数展开、矩阵运算等等计算问题。虽然Matlab的类似科学计算能力也很强大,但是Python以其语法简单、易上手、异常丰富的三方库生态,个人认为可以更优雅地解决日常遇到的各种计算问题。

首先使用pip下载sympy

from sympy import *   ##为了避免要导入各种函数 直接把整个sympy导入

from sympy import  integrate ,cos,sin from sympy.abc import  a,x,y

##使用符号变量的时候,需要先导入符号,在sympy.abc下。以下为一个小的例子(sin(x)/x在负无穷到正无穷下的定积分,结果为pai,这是一个瑕积分,计算起来比较麻烦,但是Python可以再不到1秒之内计算出来)

integrate(sin(x)/x,(x,-float("inf"),float("inf")))#积分 integrate(function, variable, point)

limit(sin(x)/x, x, 0)#极限 limit(function, variable, point) 

cos(x).series(x, 0, 10)  #级数 级数 series(var, point, order)

integrate(2*x + sinh(x), x) # 初等函数

diff(sin(2*x), x, 1) #微分 高阶微分 diff(func, var, n)

integrate(exp(-x**2)*erf(x), x) #特殊函数

integrate(log(x), (x, 0, 1))

integrate(exp(-x), (x, 0, oo)) #某些广义积分

x = Symbol("x", real=True) exp(I*x).expand(complex=True) #复数

sin(x+y).expand(trig=True) #三角函数

apart((x+1)/(x-1), x) #代数 局部的代数式展开,使用apart(expr, x)

together(apart(1/( (x+2)*(x+1) ), x), x) #代数 合并,使用together(expr, x)

f=Function('f') f(x).diff(x, x) + f(x)  #注意在使用输入该命令之前,一定要声明f=Function('f')

dsolve(f(x).diff(x, x) + f(x), f(x)) #微分方程

solve([x + 5*y - 2, -3*x + 6*y - 15], [x, y]) #代数方程

Matrix([[1,0], [0,1]]) #矩阵

 

x = Symbol('x')##带有求和式的方程 i = Symbol('i',integer = True) f = summation(x,(i,1,5)) + 10 * x - 15 solve(f,x)

##integrate(x*sin(x), (x, 0, 2*pi))

##limit(sin(2*x)/x, x, 0)#极限 limit(function, variable, point)

# #E**(I*pi)+1 = 0 //欧拉公式

##from sympy import * ## ##integrate((2*x+1)/(cos(x**2)),x)

##limit((5*sin(x)+x*x*sin(1/x))/((x**2+x-2*cos(x)*ln(1+x))), x, 0)#极限 limit(function, variable, point)

给出sympy的官方文档https://docs.sympy.org/0.7.1/tutorial.html#tutorial



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3