您现在的位置是:群英 > 开发技术 > Python语言
Python还能做高等数学问题?一文带你了解
Admin发表于 2021-12-31 17:56:001489 次浏览

    Python还能做高等数学问题?对于很多学生来说,高数的学习会比较困难。这里给大家分享一些使用Python来解决高等问题的方法,Python呢个解决的高等数学问题有很多,例如极限、导数、偏导数、定积分、不定积分、双重积分等问题,下面我们来了解一下。

    Sympy是一个Python的科学计算库,它旨在成为功能齐全的计算机代数系统。 SymPy 包括从基本符号算术到微积分,代数,离散数学和量子物理学的功能。 它可以在 LaTeX 中显示结果。

    看到这图,是不是感觉快喘不过气了呢。Python来帮你解决。

from sympy import *import sympy

    输入“x= symbols(“x”)”命令定义一个符号

x = Symbol("x")y = Symbol("y")

    1. 实用技巧

    1.1 符号函数

    sympy提供了很多数学符号,总结如下

  • 虚数单位
sympy.I
  • 自然对数
sympy.E
  • 无穷大
sympy.oo
  • 圆周率
 sympy.pi
  • 求n次方根
 sympy.root(8,3)
  • 取对数
sympy.log(1024,2)
  • 求阶乘
sympy.factorial(4)
  • 三角函数
sympy.sin(sympy.pi)sympy.tan(sympy.pi/4)sympy.cos(sympy.pi/2)

1.2 展开表达式expand

f = (1+x)**3expand(f)

x 3 + 3 x 2 + 3 x + 1 \displaystyle x^{3} + 3 x^{2} + 3 x + 1 x3+3x2+3x+1

1.3 泰勒展开公式series

ln(1+x).series(x,0,4)

x − x 2 2 + x 3 3 + O ( x 4 ) \displaystyle x - \frac{x^{2}}{2} + \frac{x^{3}}{3} + O\left(x^{4}\right) x2x2+3x3+O(x4)

sin(x).series(x,0,8)

x − x 3 6 + x 5 120 − x 7 5040 + O ( x 8 ) \displaystyle x - \frac{x^{3}}{6} + \frac{x^{5}}{120} - \frac{x^{7}}{5040} + O\left(x^{8}\right) x6x3+120x55040x7+O(x8)

cos(x).series(x,0,9)

1 − x 2 2 + x 4 24 − x 6 720 + x 8 40320 + O ( x 9 ) \displaystyle 1 - \frac{x^{2}}{2} + \frac{x^{4}}{24} - \frac{x^{6}}{720} + \frac{x^{8}}{40320} + O\left(x^{9}\right) 12x2+24x4720x6+40320x8+O(x9)

(1/(1+x)).series(x,0,5)

1 − x + x 2 − x 3 + x 4 + O ( x 5 ) \displaystyle 1 - x + x^{2} - x^{3} + x^{4} + O\left(x^{5}\right) 1x+x2x3+x4+O(x5)

tan(x).series(x,0,4)

x + x 3 3 + O ( x 4 ) \displaystyle x + \frac{x^{3}}{3} + O\left(x^{4}\right) x+3x3+O(x4)

(1/(1-x)).series(x,0,4)

1 + x + x 2 + x 3 + O ( x 4 ) \displaystyle 1 + x + x^{2} + x^{3} + O\left(x^{4}\right) 1+x+x2+x3+O(x4)

(1/(1+x)).series(x,0,4)

1 − x + x 2 − x 3 + O ( x 4 ) \displaystyle 1 - x + x^{2} - x^{3} + O\left(x^{4}\right) 1x+x2x3+O(x4)

1.4 符号展开

a = Symbol("a")b = Symbol("b")#simplify( )普通的化简simplify((x**3 + x**2 - x - 1)/(x**2 + 2*x + 1))
#trigsimp( )三角化简trigsimp(sin(x)/cos(x))#powsimp( )指数化简powsimp(x**a*x**b)

x a + b \displaystyle x^{a + b} xa+b

2. 求极限limit

limit(sin(x)/x,x,0)

1 \displaystyle 1 1

f2=(1+x)**(1/x)
f2

( x + 1 ) 1 x \displaystyle \left(x + 1\right)^{\frac{1}{x}} (x+1)x1

重要极限

f1=sin(x)/x
f2=(1+x)**(1/x)f3=(1+1/x)**x
lim1=limit(f1,x,0)lim2=limit(f2,x,0)lim3=limit(f3,x,oo)print(lim1,lim2,lim3)
1 E E

dir可以表示极限的趋近方向

f4 = (1+exp(1/x))f4

e 1 x + 1 \displaystyle e^{\frac{1}{x}} + 1 ex1+1

lim4 = limit(f4,x,0,dir="-")lim4

1 \displaystyle 1 1

lim5 = limit(f4,x,0,dir="+")lim5

∞ \displaystyle \infty

3. 求导diff

diff(函数,自变量,求导次数)

3.1 一元函数

求导问题

diff(sin(2*x),x)

2 cos ⁡ ( 2 x ) \displaystyle 2 \cos{\left(2 x \right)} 2cos(2x)

diff(ln(x),x)

1 x \displaystyle \frac{1}{x} x1

3.2 多元函数

求偏导问题

diff(sin(x*y),x,y)

− x y sin ⁡ ( x y ) + cos ⁡ ( x y ) \displaystyle - x y \sin{\left(x y \right)} + \cos{\left(x y \right)} xysin(xy)+cos(xy)

4. 积分integrate

4.1 定积分

  • 函数的定积分: integrate(函数,(变量,下限,上限))
  • 函数的不定积分: integrate(函数,变量)
f = x**2 + 1integrate(f,(x,-1.1))

− 1.54366666666667 \displaystyle -1.54366666666667 1.54366666666667

integrate(exp(x),(x,-oo,0))

1 \displaystyle 1 1

4.2 不定积分

f = 1/(1+x*x)integrate(f,x)

atan ⁡ ( x ) \displaystyle \operatorname{atan}{\left(x \right)} atan(x)

4.3 双重积分

f = (4/3)*x + 2*y
integrate(f,(x,0,1),(y,-3,4))

11.6666666666667 \displaystyle 11.6666666666667 11.6666666666667

5. 求解方程组solve

#解方程组#定义变量f1=x+y-3f2=x-y+5solve([f1,f2],[x,y])

{x: -1, y: 4}

    6. 计算求和式summation

计算求和式可以使用sympy.summation函数,其函数原型为sympy.summation(f, *symbols, **kwargs)


**

sympy.summation(2 * n,(n,1,100))

10100

    关于用Python来解决高等问题的介绍就到这,上述示例具有一定的借鉴价值,有需要的朋友可以参考学习,希望对大家学习Python有帮助,想要了解更多可以继续浏览群英网络其他相关的文章。

文本转载自PHP中文网

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

标签: python高等数学
相关信息推荐
2022-05-14 15:23:13 
摘要:本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于核心类库中多线程和线程同步的相关问题,下面就一起来看一下,希望对大家有帮助。
2022-09-15 17:48:29 
摘要:本篇文章给大家带来了关于Java的相关知识,其中主要整理了栈和队列的相关问题,包括了栈和队列的定义、应用、实现和操作等等内容,下面一起来看一下,希望对大家有帮助。
2022-05-18 10:25:16 
摘要:Canvas的使用方法:首先使用文档对象模型(DOM)进行目标定位;然后使用id属性识别匹配的目标位置;最后在Canvas上绘制图形即可。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部