基于Python-SymPy库的高等数学及线性代数问题的解决方案

应用Python(SymPy库)解决高等数学及线性代数


  • SymPy库简介
  • 基础用法
  • 高等数学上的应用
  • 线性代数上的应用(待完成)

SymPy库简介


基础用法

  • Symbols-符号
>>> from sympy import *
>>> # 两种方法创建符号
>>> x, y, z = symbols('x y z')  # 创建符号x、y、z
>>> t = Symbol('t')             # 创建符号t
  • Derivatives-导数
>>> diff(cos(x), x)    # cos(x)对x求导
-sin(x)
>>> diff(exp(x**2), x) # e的x方对x求导
2*x*exp(x**2)
>>> diff(x**4, x, x, x)# x的4次方分别对x求三次导
24⋅x
>>> diff(x**4, x, 3)   # x的4次方对x求三次导
24⋅x
  • Integrals-积分
# definite integrals 定积分
>>> integrate(exp(-x), (x, 0, oo))  # e的-x方 下限:0 上限:无穷(两个字母o表示)对x求定积分
1
>>> integrate(exp(-x**2 - y**2), (x, -oo, oo), (y, -oo, oo)) # 求二重积分
π

# indefinite integrals 不定积分
>>> integrate(cos(x), x) # cos(x)对x求不定积分
>sin(x)
  • Limits-极限
>>> limit(sin(x)/x, x, 0) # sin(x)/x 在x趋向于0时的极限
1
>>> limit(1/x, x, 0, '+') # 1/x 在x趋向于0+时的极限

高等数学上的应用

例题

from sympy import *
x = Symbol('x'); t = Symbol('t')    # 定义两个变量
lmt = limit(
    (integrate(t*cos(t),(t,0,x))-1+cos(x)) / (sqrt(x*tan(x)+1)-sqrt(x*sin(x)+1)), 
    x,
    0)
print(lmt)  # -1/3

线性代数上的应用(待完成)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值