1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Problem of solving the cubic function

  1. Apr 14, 2014 #1
    Guys, I may need your help. There is a question saying that how to solve the cubic function in general form, which means that y=ax^3+bx^2+cx+d. How do you guys solve for x? To be honest, I have no idea of this question. Probably, it uses the same way as the quartic function. Thanks!
  2. jcsd
  3. Apr 14, 2014 #2
  4. Apr 14, 2014 #3
    There are numerous ways of solving cubic functions, but the most efficient way would be to plot it using some type of software--most easily maple, MATLAB, or Mathematica. Once you do that, locate one of the roots. Use the root as a factor, and divide the cubic by that factor to obtain a quadratic. Quadratics are easy to solve, thus you can easily find the remaining two roots.
  5. Apr 15, 2014 #4
    Well, if you're going to be content with numerical answers, then there are many good techniques to approximate the roots to a very high degree: http://en.wikipedia.org/wiki/Newton's_method
  6. Apr 16, 2014 #5


    User Avatar
    Science Advisor

    For the cubic equation [itex]ax^3+bx^2+cx+d=0[/itex] (in your case the constant term is [itex]d-y[/itex], not [itex]d[/itex]), try substituting [itex]x = z +\frac{\gamma}{z}[/itex], and solve for [itex]z[/itex] by choosing the constant [itex]\gamma[/itex] correctly. If fairly certain that for a good choice of [itex]\gamma[/itex] (it will become apparant what [itex]\gamma[/itex] must be) you will end up with a quadratic function in [itex]z^2[/itex].

    This way you may arrive at the formula yourself, it's a neat exercise. You probably need to be careful verifying your solution afterwards, as [itex]z +\frac{\gamma}{z}[/itex] is not defined everywhere, and does not attain all values. To make calculations easier, you can assume [itex]a = 1[/itex] first, and make the necessary modification afterwards.
    Last edited: Apr 16, 2014
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook