利用Sympy做数学

  SymPy是一个符号计算的Python库。它的目标是成为一个全功能的计算机代数系统,同时保持代码简洁、易于理解和扩展。它完全由Python写成,不依赖于外部库。它的详细教程的网址为:http://docs.sympy.org/latest/tutorial/index.html.
  本文将介绍Sympy的在数学计算和公式上的几个精彩应用,这绝对是数学爱好者和Python爱好者的福音!

  • 因式分解
  • 1k+2k+...+nk(k=1,2,...,8)
  • 多项式的最大公因式
  • 三次多项式的判别式

  接下来将结合程序具体展示:  
1. 因式分解

  利用Sympy做数学
  在IPython中运行init_printing()是为了用Latex输出数学公式。接下来因式分解x3+y3+z33xyz,它在数学上应用广泛。
  利用Sympy做数学
  
2. 1k+2k+...+nk(k=1,2,...,8)的公式计算

  利用summation(expr,(arg,range1,range2))函数可以计算连加,expr为表达式,(arg,range1,range2)为变量范围。
  
  利用Sympy做数学
  利用Sympy做数学

3.多项式的最大公因式

  计算两个多项式的最大公因式,可以用辗转相除法,但是在这里我们先计算出它们的公共根,然后再展开即可。我们以计算f(x)=x4+x3+2x2+x+1g(x)=x3+x2+x+1的最大公因式为例:
  利用Sympy做数学
  
  运行结果如下:
  利用Sympy做数学
  
4.三次多项式的判别式

  设三次多项式为ax3+b2+cx+d的三个根为x1,x2,x3,则它的判别式为a4(x1x2)2(x1x3)2(x2x3)2.
  利用Sympy做数学
  
  但是我们用同样的方法在计算四次方程的判别式时,就遇到了困难,因为你可能花几个小时也算不出,需要借助数学理论的帮助。这会在下一篇分享中会讲到~~



  期待下一篇分享^o^