Classifying Cubic Curves

(due date December 6)

One of Isaac Newton's many accomplishments was the classification of the cubic curves. In other words, Newton undertook the task of identifying the different types of qualitative behaviour possible by by curves of equations of the following type


where tex2html_wrap_inline59 are fixed parameters and x and y are variables. IN order for the equation to define a true cubic (rather than a quadratic) it will be assumed that at least one a, b,c or d is not zero. Newton found 72 different species of curve, but later investigators found 6 more and it is now known that there are precisely 78 different types of cubic curves. What exactly is meant by this assertion? What is a "species" of curve? It is possible to give precise answers to these questions but this would lead to technicalities whichit would be best to avoid at the moment. To show that the answers to these questions are not at all obvious, it is worth noting that Newton considered all equations of the form


to have the same species; in spite of the fact that you shoud be able to recall from elementary calculus that these equations can have either zero or two extrema and can tend to either positive or negative infinity. This points to the fact that Newton considered two curves to be of the same species if a simple change of coordinates transforms one to the other. For the purposes of this assignment though, two curves with different numbers of extrema will be considred to be of different species. Furthermore, curves wich are the union of different numbers of disjoint curves will be considered to be different. Other characteristics which can be used to distinguish curves are the number of crossing points, existence and number of closed loops and the number of asymptotic branches.

A useful tool in your investigation will be the implicitplot command which draws graphs of curves defined implicitly. It must be loaded into Maple as part of the plots package. As an example of how to use this, the following command draws a representative of one of the 78 types of cubic curve known as the Folium of Descartes.


However, you should only use the implicitplot command when it is absolutely necessary. The Folium of Descartes really does require this command but the curve known as The Witch of Maria Agnesi does not. The following two commands both draw part of the graph of this curve



What difference is there in time of computation and in the accuracy of the graphic representation for the preceding two commands? Notice that the equation for The Witch of Maria Agnesi can easily be transformed so that it defines y as an equation of the variable x. Once this is done it is possible to apply the plot command as in the second of the two examples. Whenever this is possible, the plot command should be used instead of implicitplot because implicitplot is far more likely to produce erroneous results.

Begin your investigation by considering various simple, special cases. For example, the case of the cubic function


should be easy to handle. Observe that this does not require the implicitplot command. In fact, Newton was able to show that by making a suitable change of variables, all cubic equations can be transfored into one of the following forms




Moreover, 71 of the 78 different species which exist in Newton's scheme come from the the last type of equation. This suggests that this is a good place to search for examples by varying the values of the parameters a, b, c, d and e.

Maple's animation capabilites can be used to good effect in this problem. For example the changes which occur as one of the parameters is slowly changed can be displayed in an animation sequence. Can you find a configuration of parameters which allows one to be changed so that a graph with a disconnected closed loop transforms into a graph with a crossing point? What happens if the transformation is allowed to continue?


Mike Zabrocki
Email address:
Department of Mathematics and Statistics
York University
Back to Department's Public Page
Back to my course Page
Back to top of page