Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # 例えば、このような形で与えられる多項式、
- # 実際のそれぞれの項の係数は、
- # プログラムを実行してみるまでわからない
- import sympy as sp
- x = sp.Symbol('x')
- quad_poly = (x-10)**2 + 10
- a = sp.Symbol('a')
- finding_a_eq = quad_poly - a*x
- # こんな関数はないでしょうか。。?
- sp.find_double_root(finding_a_eq, x)
- from sympy import *
- x = Symbol('x')
- quad = (x-10)**2 + 10
- def find_double_root(quad_poly_ish, var, solve_for):
- p = Poly(quad_poly_ish, var)
- a = p.coeff_monomial(var**2)
- b = p.coeff_monomial(var**1)
- c = p.coeff_monomial(var**0)
- determinant = b**2 - 4*a*c
- eq = Eq(determinant, 0)
- return solve(eq, solve_for)
- a = Symbol('a')
- arr = find_double_root(quad - a*x, x, a)
- print arr[0].evalf()
- print arr[1].evalf()
- # => 0.976176963403031
- # => -40.9761769634030
Add Comment
Please, Sign In to add comment