P4 and P5 are computer programs that study specific Polynomial Planar Vector Fields (or Differential Systems) of any degree. Both plot the phase portrait of a vector field in the Poincaré disk. Part of the calculations are done through an interface with the computer program Maple (giving the option of treating a vector field using symbolic manipulations), and part of them by the program itself. A piecewise vector field is a finite number of vector fields defined on a domain that is bounded by a finite number of algebraic curves (bifurcation lines).  Such vector fields are often found in control theory.  The piecewise polynomial vector fields can be discontinuous along the bifurcation lines. P5 is an extension of P4 and is introduced to be able to treat such piecewise vector fields.  Much of the functionality of P5 is inherited by P4.


Chapters 9 and 10 of the book Qualitative Theory of Planar Differential Systems (F. Dumortier, J. Llibre, J. C. Artés. Springer-Verlag, Berlin, 2006 ISBN 9783540328933) contain a complete description of how P4 works and what you can do with it.


  • Joan C. Artés. Universitat Autònoma de Barcelona.
  • Peter de Maesschalck. Hasselt University.
  • Freddy Dumortier. Hasselt University.
  • Chris Herssens. Hassel University.
  • Jaume Llibre, Universitat Autònoma de Barcelona.
  • Oscar Saleta. Universitat Autònoma de Barcelona.
  • Joan Torregrosa. Universitat Autònoma de Barcelona.


P4&P5 were initially built to run on Microsoft Windows. The programs are however built in the multi-platform interface QT, allowing an easy port to Mac/OSX or Linux. On any platform, P4&P5 need an interface with Maple. Although we did not test the program with every version of Maple, it should work from Maple version 10 or higher. The last version works better with Maple 2015 or higher.

To install the programs P4&P5, please be sure to have Maple installed. Download and follow the installation instructions. Maybe you also need to install the QT software development kit beforehand. You need the open-source edition of Qt that you can download from the QT website (together with QtCreator).


  • The programs draw the phase portrait on a compact part of the plane, on the Poincaré sphere, or on one of the charts at infinity.  The ability to draw on the Poincaré sphere and hence to present a view of the phase portrait on the global compactified phase space is one of the novelties of this program.
  • The program Determines all singular points (finite and infinite ones) of the vector field.  P5 is able to present a detailed study of each singularity.  It distinguishes between the different types of singularities (saddle, node, focus, center, semi-hyperbolic saddle-node, and degenerate).  Singularities with purely imaginary eigenvalues are studied by means of Lyapunov coefficients to distinguish (in some cases) between center behavior and weak focus behavior.
  • Degenerate singularities are studied by means of quasi-homogeneous blow-ups.  It is shown that a finite number of such blow-ups unfolds the singularity in a number of hyperbolic or semi-hyperbolic singularities, each of which is studied in detail by the program.
  • For each singularity, invariant separatrices are calculated (formally, up to a degree that can be specified).  The formal expansion is tested for its numeric accuracy.
  • A detailed report can be prepared containing a list of singularities, their separatrices, and their sectors (parabolic, hyperbolic, or elliptic).  The program can plot all or individual separatrices.  To speed up the integration of the separatrices of degenerate singularities (where the flow is generally very slow), it uses the rescaled (blown up) versions of the vector field in a neighborhood of the singular point.
  • All the above calculations can be done either in numeric mode (with given precision), or in symbolic mode (using Maple as a symbolic math manipulator).
  • The program does not deal with bifurcations.  The program does offer the possibility of introducing a vector field with user-defined parameters.  Each time you want to study the vector field (examine singularities/draw phase portraits), you just have to enter the value of the parameters.
  • The program is able to find periodic orbits up to a certain degree of precision (in particular limit cycles, i.e. isolated periodic orbits), cutting a transverse section that is specified by the user.
  • Images can be exported to XFIG, Encapsulated Postscript, or JPEG.
  • P5 calculates the domains bounded by algebraic curves (up to some precision).  These bifurcation lines are drawn on the phase portrait.
  • P5 studies singularities of the several vector fields that are used to define a piecewise polynomial vector field.  Singularities that lie on a bifurcation line deserve special attention: singularities of mixed type are possible, and only those separatrices that start in the relevant domain are to be drawn on the phase portrait.
  • An integration parameter allows to control the integration of orbits near bifurcation lines.  Phenomena such as sliding vector fields and sewing can be observed when using the program.