2
3

More than 3 years have passed since last update.

【Python】sympyで方程式を解く

Posted at

はじめに

三次方程式を楽に解きたい…
三次方程式の解の公式は、ものすごく長いものとなってしまいます。興味がある方はこちら
これをプログラムで解けないかと検索したらPythonにsympyというモジュールがありました。本当にすごい。

環境

どちらも動きました

  • windows 10

    • Python 3.7
  • Ananconda

    • Python 3.7
    • Jupyter notebook

使い方

インストール

Anacondaの環境には既にインストールされていますがそうではない場合pipでインストールしましょう

pip install sympy

方程式を解く

とりあえず方程式を解きたいんだ!という方はこちら
Symbolで文字を定義して、solve()で方程式を解くことができます。
以下の3次方程式を解きます。

3x^3 + 2x^2 + x + 10 = 0

べき乗は、Pythonの標準のべき乗の書き方で書くことができます。

x**3 # xの3乗

以下がプログラムになります。

from sympy import *

x = Symbol('x')

sol = solve(3*x**3 + 2*x**2 + x + 10)

print(sol)

出力結果。listで3つの解が渡されます。

[-5/3, 1/2 - sqrt(7)*I/2, 1/2 + sqrt(7)*I/2]

これは以下と同じですね。

[\frac{-5}{3}, \frac{1}{2} - \frac{{\sqrt{7}}i}{2}, \frac{1}{2} + \frac{{\sqrt{7}}i}{2}]

その他色々な機能

~調査中~
追記します

2
3
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3