top of page

Phase Portrait Plotter

To view the final report cum documentation of the software, click here. If you would like to download the software to use it on MATLAB, click here.

Aim - 

To develop a software to plot the phase portrait for a two dimensional dynamical system as part of my course project for the Classical Physics (PH3500) course taught by Prof. Kasiviswanathan in my 5th semester (July-Nov 2020)

Summary -

Systems evolving with time are undoubtedly ubiquitous in nature. From the evolution of the universe to the periodic flashing of a firefly, these topics have long been of academic interest. Remarkably, it is a recent realization (around the 1900s) that all such systems evolving with time have certain underlying commonalities. In technical terms, these systems are called dynamical systems. In essence, the study of dynamical systems is closely related to understanding the differential equations that govern the particular situation.

 

A fundamental idea to understand these dynamical systems is the use of geometrical concepts and qualitative reasoning based on theoretical knowledge. A central concept of this analysis is the phase portrait that is generated from the knowledge of the differential equations of the system. The phase portrait gives a qualitative description of all possible behavior that can be observed in the system. For a system that involves only two variables evolving with time, the phase portrait is simply a two dimensional image. Several real-life phenomena can be understood as the evolution of two variables. The corresponding phase portrait of these phenomena forms a powerful tool to fully understand them.

 

The current project aims to create a phase portrait for any two dimensional system given the governing differential equations. I developed a computer software named the ‘Phase Portrait Plotter’ on MATLAB to carry out the task and provide further information about the system. The software has an interactive graphical user interface (GUI) and has been developed with an intention to allow any interested user with a bare minimum knowledge of dynamical systems to generate phase portraits with ease. The software has a great scope of being used for pedagogical applications and self-study purposes.

​

While the course and the project concluded successfully in November 2020, that has not marked the end of the software's lifespan. Since then, application has become quite popular in the MATLAB community through MATLAB File Exchange. As of 4th August 2021, the application has been downloaded over 1000 times. At its peak, it was downloaded 150+ times per month and was the 5th most popular file in the apps category on MATLAB File Exchange. This software was also used by Dr. Julien Lagarde (University of Montpellier, France) in an introductory course to dynamical systems.

Fig 1a: The final results generated from the software

What I learnt -
  • Considerable experience in MATLAB 

  • Working knowledge of MATLAB AppDesigner

  • Converting knowledge of concepts into a convenient and easily sharable code

Fig 1b: One of the many features of the software: A user can plot trajectories to better understand the behaviour of the system. In this case, the limit cycle of the Van der Pol oscillator is the clear attractor in the phase plane

Highlights -
  • Initial framework developed on MATLAB with a text based interface

  • Converted into a GUI using MATLAB AppDesigner

  • Extensive documentation prepared

Rough Timeline -
  • Project started - September 2020

  • Project completed - November 2020

bottom of page