File Exchange

image thumbnail


version 2.0 (49.2 KB) by Hugh Harvey
An updated version of Pplane that works on Matlab R2018b


Updated 21 Nov 2018

View License

An updated version of Pplane that works on Matlab R2018b.
Copyright to John C Polking, Rice University, 2003 for original version.
Updated by Hugh Harvey and George Williams, University of Bristol, 2016.

Cite As

Hugh Harvey (2019). Pplane (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (34)


meload = uimenu(mefile,'label','Load a system ...',...

my 2018b can not run this code

Lisbeth Toy

Is there a version that works with R2019a?

Huy Doan

everyone opens pplane8.m

Excuse me, how can I use it on R2018b?

Gus Breese

Super work, I must reiterate my comment from 4th of May 2017... Are you guys geniuses????

Thank you. Working fine with R2018b

Here's a version that's working in R2018b:
Everything seems to be working. The author can update the submission with this.



It doesn't work for MATLAB R2018a.

This code does not work for MATLAB R2018a, anyone know how to get it to wrok?


Not working with MATLAB 2018a.


Dan Schult

I was able to adapt the plan.m file available on Prof Polking's webpage to work with Matlab 2017b. I haven't done extensive testing, but it seems to do all the features/menu items with the default ODE system.

I did the following global replacements to pplane8.m calling the file pplane2017b.m
pplane8 -> pplane2017b
'numb','off' -> remove all of these Key/Value pairs. Sometimes they are wrapped around a line end. So search for 'numb' and remove the 'numb','off' pair from each occurrence.
'call' -> 'CallBack'
'number' -> 'NumberTile'

if notice -> if ishghandle(notice)
if gstop -> if ishghandle(gstop)
if dud.notice & dud.noticeflag -> if ishghandle(dud.notice) & ishghandle(dud.noticeflag)

Has anyone been able to run pplane and dfield functions on Matlab 2017? If so, what modifications were made?


Adding the tempdir folder to Matlab's path is a dangerous idea: You might shadow built-in functions, when TEMP contains M-files. The resulting errors are very hard to debug.

The code uses strings as callbacks, which is outdated for over 15 years now. The bunch of |eval| commands are not secure and reliable also.

The code contains useful comments and a standard help section. The included integrators are clean and efficient, and the source of the parameters and algorithm is mentioned.

The code fails due to the lazy usage of "call" instead of "Callback", and "user" instead of "UserData". What a pity for such a powerful tool.

I am trying to run this program with MATLAB 2017, and I get the following errors:
Error using uimenu
There is no call property on the Menu class.

Error in pplane8 (line 907)
meload = uimenu(mefile,'label','Load a system ...',...

Error in pplane8 (line 52)

Error in run (line 91)
evalin('caller', strcat(script, ';'));

Opening a saved figure.fig generated with pplane8 returns an error and prevents the figure from closing. Error below. Any suggestions?

Struct contents reference from a non-struct array object.
Error in pplane8 (line 6230)
if sud.remtd
Error in pplane8 (line 6258)
Error while evaluating Figure CloseRequestFcn.

I found out the cause of my problem: I was naming the pplan8.m script as pplane81.m to avoid overwriting the old version. Somehow Matlab 2016b didn't like this and it was giving a misleading error message. Changing the name to pplane8.m solved this issue. As this script defines a function called pplane8, it seems that the m file MUST be equally named.
I modified both pplane8.m and a compatible dfield8.m I found in anoter place to dfield9.m and pplane9.m to avoid this naming conflict with the previous version. I also fixed in this version of pplane two other unspotted errors preventing the linearization window to display and the different related graph windows like 3D, composite, etc.
I uploaded these modified versions of dfield and pplane. I hope that they will be useful to all users of these very important scripts for teachig and doing research on Differential Equations.

Same problem with Matlab R2016b: "Error while evaluating UIControl Callback." is what shows up in the command window after clicking "Proceed" :-(

Does any body know, how to make a 3D Phase space with pplane`?

Do you know how to get out of data about phase portrait?Thank you

Does not work on R2017a... "Error while evaluating UIControl Callback." is what shows up in the command window after clicking "Proceed". I am very new to matlab and if I had any idea where to start looking I would. Would anyone be willing to help?

Perfect, runs nicely!

Gus Breese

Incredible!!!!!!! Works so well!!! Are you guys geniuses????

ben shen



Plan updated to work with R2018b

Updated Image

Updated Description

Updated Title

MATLAB Release Compatibility
Created with R2018b
Compatible with R2018b
Platform Compatibility
Windows macOS Linux