Quartic Equation Solver

JJ Ben-Joseph headshot JJ Ben-Joseph

Quartic equation overview

A quartic equation is a fourth-degree polynomial set equal to zero:

ax4 +bx3 +cx2 +dx +e =0

When a ≠ 0, the polynomial is truly quartic and (counting multiplicity) it has exactly four roots in the complex numbers. Those roots may be all real, partly real, or entirely complex. If the coefficients are real, any non-real roots occur in complex-conjugate pairs.

How to use this solver

  1. Enter the coefficients a, b, c, d, e for your equation.
  2. Make sure a is not 0. If a = 0, the equation is cubic or lower degree and a quartic solver is not the right tool.
  3. Click Solve to compute all roots. Results may include real values and/or complex values of the form p + qi.

Tip (scaling): Multiplying all coefficients by the same nonzero constant does not change the roots. If your coefficients are extremely large or tiny, rescaling them (for example, dividing all coefficients by the largest absolute coefficient) can improve numerical stability.

What the calculator is doing (formulas)

There are two broad families of methods for quartics:

  • Closed-form algebraic solutions (Ferrari’s method) that reduce the quartic to quadratics via a substitution and a resolvent cubic. These are exact in theory but lengthy in practice.
  • Numerical root-finding methods that approximate the roots to high precision, typically faster and more robust for everyday computation.

Many numerical solvers iterate on complex values. One popular approach is the Durand–Kerner (Weierstrass) method, which simultaneously refines a set of root estimates. If f(x) is the polynomial and zk are current root guesses, an update step is often written as:

z_k ← z_k - f(z_k) / ∏_{j ≠ k} (z_k - z_j)

The key idea is that a degree-4 polynomial can be represented as a product of four linear factors over the complex numbers; simultaneous iteration tries to “pull apart” those factors until each zk lands on a true root.

Interpreting the results

  • Real root: a solution shown with an (approximately) zero imaginary part. Example: x ≈ 2.
  • Complex root: shown as p + qi where q ≠ 0. If inputs are real, you should see complex roots in pairs: p + qi and p − qi.
  • Multiplicity (repeated roots): if a root repeats (e.g., (x-1)²), numerical methods may return two very close values rather than identical values, especially when the polynomial is ill-conditioned.

A quick validation step is to plug a reported root r back into the polynomial and check that f(r) is close to zero (within rounding error).

Limitations and assumptions (numerical results)

  • Numeric approximation: Roots are computed numerically and displayed with finite precision. Expect rounding error.
  • Conditioning matters: Quartics with nearly repeated roots or with coefficients spanning huge magnitudes can be sensitive; small input changes can cause noticeable root changes.
  • Repeated roots: A repeated root may appear as multiple nearby roots instead of exactly identical values.
  • Convergence behavior: Iterative methods can converge more slowly or behave poorly on difficult cases; rescaling and re-checking inputs can help.
  • Not a proof system: The solver provides numerical answers, not symbolic factorization or exact radicals.

Worked example

Consider:

x⁴ − 5x² + 4 = 0

Here the coefficients are a=1, b=0, c=-5, d=0, e=4. This polynomial factors nicely:

x⁴ − 5x² + 4 = (x²-1)(x²-4)

So the roots are:

  • From x² - 1 = 0: x = ±1
  • From x² - 4 = 0: x = ±2

You should see four real roots near -2, -1, 1, and 2.

Root patterns at a glance

Coefficient situation Typical outcome What you’ll see in results
All coefficients real Complex roots come in conjugate pairs … + qi and … − qi appear together
Quartic factors into quadratics Often 0–4 real roots May be all real or partly complex
Near-repeated roots Sensitive / ill-conditioned Two roots extremely close; small numerical error
Very large/small coefficient magnitudes Scaling improves stability Better convergence after rescaling

Notes

If your equation is not quartic (a = 0), reduce it to the correct degree and use the appropriate solver. If you get unexpected results, try scaling coefficients and verify by substituting a reported root back into the polynomial.

a must be nonzero for a true quartic. Scale all coefficients if needed.

Enter coefficients to compute roots.