title: Why sympy gives complex roots when solving cubic equations
body: <p>I am using the following code to solve a cubic equation. </p>
  
  <pre><code>from sympy.solvers import solve
  from sympy import Symbol
  x = Symbol('x')
  print(solve(-0.0643820896731566*x**3 + 0.334816369385245*x**2 + 1.08104426781115*x - 2.05750838005246,x))
  </code></pre>
  
  <p>As it is a cubic equation with real coefficients, there cannot be three distinct complex roots. But it gives the following results. </p>
  
  <pre><code>[-3.19296319480108 - 0.e-22*I, 1.43925417946882 + 0.e-20*I, 6.95416726521169 - 0.e-20*I]
  </code></pre>
  
  <p>Could someone please tell me if something goes wrong. Is there other way to solve the equation and gives real roots?</p>