SymPyで数学の問題を解くーPython

投稿者: | 2018年9月29日

SymPyとは

SymPyとはPyhtonの数学ライブラリ。


from sympy import *
x = symbols('x')
init_printing()
Inegral(sqrt(1/x).x)

①SymPyライブラリをインポートする。

from sympy import *

②symbols関数で数式の変数に使う文字を登録する。

x = symbols('x')

③init_printing関数で数式を美しく表示する。

init_printing()

④数式を実行する。

Inegral(sqrt(1/x).x)

■実行結果

数式を記述して展開する

数式は、シンボルと演算記号、括弧を使って記述する。
例えば、[(x+1)の2乗]であれば次のように書く。

x1 = (x+1)**2

これで(x+1)の2乗の式を変数x1で扱えるようになる。

(x+1)の2乗の式を計算する。

expand((x+1)**2)

または

expand(x1)

実行結果

x2 + 2x + 1

因数分解

因数分解にはfactor関数を使う。

factor(x**2-5*x+6)

実行結果

(x-3)(X-2)

分数式

cancel関数やapart関数を使う。

exp2 = (x**2-y**2) / (x-y)
cancel(exp2)

exp3 = (x-1) / (x*(x**2+1)**2)
apart(exp3)

微分・積分

関数を微分して導関数を求める計算には、
diff関数を使う。
exp4=x**4+2*x**3+3*x+4
diff(exp4)

積分にはintegrate関数を使う。

integrate(sqrt(2*x-3))

積分したい式を積分記号を使って表示する
にはIntegral関数を使う。
Integral(1/sqrt(x**2+1))

積分を実行するにはIntegralオブジェクトの
doit関数を使う。

itg = Integral(1/sqrt(x**2+1))
itg.doit()

SymPyでグラフを描く

plot関数でグラフを描く。

plot(x**3)

■実行結果

 

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA