In [24]:
from numpy import roots
from math import atan, fabs
In [34]:
def cubic (Qx, Qy, Ux, Uy):
a = Uy
b = (Ux + 2*Qy)
c = (2*Qx - Uy)
d = -Ux
det = -4*b**3*d + b**2*c**2 -4*a*c**3 + 18*a*b*c*d - 27*a**2*d**2
print det
if (det < 0):
answer = 'c'
print answer
if (det > 0):
a = roots([a, b, c, d])
a = a.real
print a
a = atan(a[0])/(fabs(atan(a[0]))) + atan(a[1])/(fabs(atan(a[1]))) + atan(a[2])/(fabs(atan(a[2])))
if (a == 3.0):
answer = 'b'
if (a == 1.0):
answer = 'b'
if (a == -1.0):
answer = 'a'
print answer
#return answer
In [ ]: