こんにちは、くれあです。
この記事ではPythonで方程式の解を求めるプログラムを紹介します。
是非参考にしてみて下さい!
プログラミングを勉強してみたい!という方は、是非こちらも参考にしてください(^^)
SymPyをインストールしておく
事前に、開発環境でSymPyをインストールしておきます。
pip install sympy
ターミナルやコマンドプロンプトでコマンドを入れてインストールを実行しましょう。
Pythonの環境構築がない場合、
それを作っておく必要もありますがそこまで面倒ではないのでトライしてみてください!
Python公式でも環境構築についてガイドしてくれています。
微分
まずは \(y=x^2-2x+2 \) を微分してみます。
サンプルプログラム
import sympy
# 微分計算
x = sympy.Symbol('x')
y = x**2 - 2*x + 2
Dy = sympy.Derivative(y, x).doit()
print(Dy)
Derivative()関数で微分の計算ができます。
第2引数の\(x\)はなくても同じ結果になりますが、
多変数関数の時などはどの変数で微分するか分からなくなるので、
一応第2引数に\(x\)を入れています。
実行結果
2*x + 2
次に、\(y=x^2-2x+2 \) の\(x=2 \)での微分係数を計算してみます。
サンプルプログラム
import sympy
# 微分計算
x = sympy.Symbol('x')
y = x**2 - 2*x + 2
Dfy = sympy.diff(y, x).subs(x,2)
print(Dfy)
diff()関数でも微分の計算ができます。
後ろにsubs()関数をつけることで、\(x=2 \)と指定して微分係数を求めることができます。
実行結果
2
積分
サンプルプログラム
import sympy
# 積分計算
x = sympy.Symbol('x')
y = 6*x**2 + 2*x - 3
Iy = sympy.integrate(y,x)
print(Iy)
integrate()関数で不定積分を求めることができます。
積分定数は省いて出力されるようです。
\(y=2x^3-x^2+3x \)の積分を求めてみます。
実行結果
2*x**3 + x**2 - 3*x
定積分を求めることもできます。
integrate()関数の第2引数に(x, -2, 1)とすることで、
-2から1までの定積分を計算させることができます。
サンプルプログラム
import sympy
# 定積分計算
x = sympy.Symbol('x')
y = 6*x**2 + 2*x - 3
Diy = sympy.integrate(y, (x, -2, 1))
print(Diy)
実行結果
6
まとめ
今回もSymPyライブラリをインストールすることで
簡単に微分、積分の計算を実行するプログラムができました。
ぜひ微積分を計算したい関数を色々カスタマイズしてみて試してみてくださいね!
(途中式はないですが、宿題の答えも簡単に分かってしまいますね…^^;;)
参考にした書籍はこちら
にほんブログ村
コメント