(Page Last updated May 26, 2023)

- Zip File: PIETOOLS_2022.zip
- User Manual: PIETOOLS 2022 User Manual
- Release Notes: Release Notes for PIETOOLS 2022

- Downloads and Installs: PIETOOLS 2022; sedumi; SOSTOOLS v4.00

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

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

PIETOOLS 2021b (December 30, 2021): PIETOOLS_2021b.zip Release Notes User Manual

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.

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.

- Use the GUI (Requires Matlab 2021) to construct and export a PDE data structure.
- Convert a DDE or a Neutral Type System (NDS) to a DDF.
- Find a minimal/low-dimensional realization of a DDF.
- Find optimal bounds for integral inequalities.

- Manipulation of 3-PI and 4-PI operators.
- Constructing and Solving Linear PI Inequalities (LPIs).
- Converting PDEs/DDEs/DDFs to PIEs.
- Solving LPIs for Analysis and Control of PIEs.
- Numerically simulate a PIE or PDE.

- Composition/Multiplication (T1*T2).
- Addition/Substraction (T1+T2 or T1-T2).
- Concatentation/Matrices of operators ([T1 T2] or [T1;T2]).
- Scalar Multiplication (a*T).
- Inversion of 3/4-PI operators.

- Declare a 3/4-PI variable (T1=lpivar).
- Declare a positive semidefinite 3/4-PI variable (T2=poslpivar).
- Declare and equality constraints (T1=T2 -> opeq(T1-T2)).
- Declare an inequality constraints (T1>T2 -> opineq(T1-T2)).

- A Graphical User Interface (Requires Matlab 2021) for defining PDEs and converting them to PIES.
- Convert a PDE (in 1 spatial variable) to a PIE (convert_PIETOOLS_PDE2PIE_batch).
- Convert a DDE to a minimal DDF representation (minimize_PIETOOLS_DDE2DDF).
- Convert a Neutral Delay System (NDS) to a DDF representation (convert_PIETOOLS_NDS2DDF).
- Construct a minimal DDF representation of a DDF (minimize_PIETOOLS_DDF).
- Convert a DDF to a PIE (convert_PIETOOLS_DDF2PIE).

- Analyze stability of a PIE (PIETOOLS_stability).
- Compute the H_inf system norm of a PIE (PIETOOLS_Hinf_gain).
- Design an optimal observer/state-estimator for a PIE (PIETOOLS_Hinf_estimator).
- Design an optimal state-feedback controller for a PIE (PIETOOLS_Hinf_control).

To install and run PIETOOLS, you need:

- MATLAB version 6.0 or later.
- The current version of the MATLAB Symbolic Math Toolbox. This is installed in most default versions of Matlab.
- An SDP solver. Sedumi is included in the installation script and can be obtained from: SeDuMi

The software has been written and is maintained by:

- Amritam Das
- Declan Jagt
- Matthew M. Peet
- Yulia Peet
- Sachin Shivakumar

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]

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]

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]

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]

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