(Page Last updated Dec. 31, 2021)



Latest Release: PIETOOLS 2021b (Dec. 31, 2021): Download from Github

We recommend using the installation script: pietools_install.m

Previous Versions:

PIETOOLS 2020a (July 2, 2020): PIETOOLS_2020a.zip

PIETOOLS 2021a (June 1, 2021): PIETOOLS_2021a.zip 2021a Release Notes


PIETOOLS is a free MATLAB toolbox for formulating and solving Linear PI Inequalities (LPIs) programs. PIETOOLS can be used to define 3-PI or 4-PI operators, declare 3-PI or 4-PI operators variables (postive semidefinite or indefinite), add operator inequality constraints, and solve LPI optimization problems. The interface is inspired by YALMIP and the program structure is based on that used by SOSTOOLS. By default the LPIs are solved using SeDuMi.

Watch our short (14min): Introduction to PIETOOLS Youtube Video

Read the Guide: How to Get Started with PIETOOLS

What is a PIE?

PIE stands for Partial Integral Equation and is an alternative representation for many commonly encountered classes of systems, including Ordinary Differential Equations (ODEs), Partial-Differential Equations (PDEs), Delay Differential Equations (DDEs), and Differential-Difference Equations (DDFs).

The cool thing about PIEs is that, unlike PDEs and DDEs (which have lame boundary conditions, unbounded operators, and continuity constraints), PIEs are defined by the very slick linear algebra of 3/4 PI operators. This feature makes PIEs the representation of choice if you want to do anything computational with your beam equation, network model, reaction-diffusion equations, et c.

Now, you may be wondering if you are going to lose anything by switching your PDE/DDE/DDF to a PIE. No! That would be awful. You may have been hurt in the past by people wrecking your lovely PDE/DDE/DDF using such barbaric tools as approximation via discretization, projection, mollification, regularization or Pade. However, let us assure you that using PIEs is completely safe. The PIE representation of a PDE/DDE/DDF is exact. The solutions are one-to-one, only the tools used for representation have improved.

What if I don't like PIE?

Everyone likes PIE! But really, that's cool. If you are into the retro vibe, there are still lots of fun things you can do with PIETOOLS, like declaring PDEs, DDEs, and DDFs; converting between representations, finding minimal representations, and playing with integral inequalities. PIETOOLS is open-source, so feel free to use it as an interface to your own software. Just send us a link if you do, so we can recognize you on the website. Here's a list of PIETOOLS functionality which doesn't involve PIE at all:
  1. Use the GUI (Requires Matlab 2021) to construct and export a PDE data structure.
  2. Convert a DDE or a Neutral Type System (NDS) to a DDF.
  3. Find a minimal/low-dimensional realization of a DDF.
  4. Find optimal bounds for integral inequalities.

What can I do with PIETOOLS?

The use of PIETOOLS is organized into 4 categories. These are:
  1. Manipulation of 3-PI and 4-PI operators.
  2. Constructing and Solving Linear PI Inequalities (LPIs).
  3. Converting PDEs/DDEs/DDFs to PIEs.
  4. Solving LPIs for Analysis and Control of PIEs.
  5. Numerically simulate a PIE or PDE.

1. Manipulation of 3/4-PI operators

The opvar class allows you to define and examine 3-PI and 4-PI operators. Most Matlab operations which are valid for matrices are also valid for 3/4-PI operators.

2. Construct and Solve LPIs

Inspired by the YALMIP syntax for constructing and solving LMIs, PIETOOLS allows the user to declare and then manipulate 3/4-PI decision variables as they would any other 3/4-PI object. The user may also add equality and inequality constraints on these 3/4-PI objects, where positivity is defined with respect to the L2 inner product. Construction of almost any LPI can be accomplished using a combination of the following four commands:

3. Converting PDEs/DDEs/DDFs to PIEs

PIETOOLS currently includes several user-friendly functions for converting a very broad class of PDEs/DDEs/DDFs to PIEs. The header to each script describes the input format for each application, using as nearly universal a formulation as possible. The 3 scripts are:

4. Scripts for Analysis and Control of PIEs

The list of LPIs for analysis and control of PIEs is constantly expanding. However, PIETOOLS comes with several pre-defined functions for analysis and control of PIEs using LPIs. Examples of these functions include:

For a Complete List of Files Included with PIETOOLS, see our: Readme.m File

System requirements

To install and run PIETOOLS, you need:


The software has been written and is maintained by:


A guide to PIETOOLS 2020a can be found at:

S. Shivakumar and A. Das and M. Peet
PIETOOLS: A Matlab Toolbox for Manipulation and Optimization of Partial Integral Operators
American Control Conference, 2020.
[arXiv:1910.01338] [.pdf] [slides] [CodeOcean]

Introduction to the fundamentals of PIEs, equivalence to PDEs, and an LPI for stability analysis can be found at:

M. M. Peet
A Partial Integral Equation Representation of Coupled Linear PDEs and Scalable Stability Analysis using LMIs
Automatica. Vol. 125. March, 2021. Regular Paper.
[arXiv:1812.06794] [.pdf] [.ps] [related talk] [CodeOcean]

Equivalence of PIEs, DDEs and DDFs can be found at:

M. Peet
Representation of Networks and Systems with Delay: DDEs, DDFs, ODE-PDEs and PIEs
Automatica. Vol. 127. May, 2021.
[arXiv:1910.03881] [.pdf] [slides] [CodeOcean]

M. Peet
Minimal Differential Difference Realizations of Delay Differential, Differential Difference, and Neutral Delay Systems
IEEE Control Systems Letters. Vol. 5. No. 4.
[arXiv] [.pdf] [slides] [CodeOcean]

A duality theory for PIEs and an LPI for optimal state-feedback controller synthesis for a certain class of PIEs can be found at:

S. Shivakumar and A. Das and S. Weiland and M. Peet
Duality and H_\infty-Optimal Control Of Coupled ODE-PDE Systems
IEEE Conference on Decision and Control, 2020.
[arXiv] [.pdf] [slides] [CodeOcean]

An LPI for optimal observer/state-estimator synthesis for certain classes of PIEs (derived from DDEs and PDEs) can be found at:

A. Das and S. Shivakumar and S. Weiland and M. Peet
H-\infty Optimal Estimation for Linear Coupled PDE Systems
IEEE Conference on Decision and Control, 2019.
[arXiv:1809.10308] [.pdf] [slides] [CodeOcean]

Technical Support

For those of you having trouble installing PIETOOLS, converting PDEs to PIEs, or solving LPIs, we have prepared a very incomplete Troublehooting Guide. This Guide addresses most of the problems which have been ecountered by our very helpful group of beta testers.

Our goal is to make use of PIETOOLS as simple as humanly possible. However, our background is not in coding and sometimes we come up short. If you are having a serious technical issue and neither the help commands nor the manual are helping, and believe there is a bug in the program, please report it to: mpeet@asu.edu. If there is a bug, we will add it to the known bug list and do our best to fix it.

Alternatively, if you would like to volunteer for the PIETOOLS development team, we would be happy to include you (no compensation - Sorry). Send an email to mpeet@asu.edu