Third party libraries

PSOPT requires the following third party software libraries. The specific versions employed are given in the PSOPT documentation. Please consult the PSOPT documentation and post release notes before installing any of the required third party libraries.


These are standard and widely used linear algebra packages which can be downloaded in source and binary form from Some current Linux distrubutions, such as Ubuntu, make it very easy to install both BLAS and LAPACK libraries using a package manager.


This is an open source sparse matrix computation library written in C by T. Davis, which can be downloaded from


This is an open source sparse LU factorisation library written by M.A. Saunders and co-workers, which can be downloaded from


IPOPT is an open source C++ package for large-scale nonlinear optimization, which uses an interior point method. IPOPT is the default nonlinear programming algorithm used by PSOPT. It can be downloaded from


ADOL-C is a library for the automatic differentiation of C++ code. It allows to compute automatically the gradients and sparse Jacobians required by PSOPT . At the heart of the ADOL-C library is the “adouble” data type, which can be mostly treated as a C++ “double”.  Some current Linux distrubutions, such as Ubuntu, make it very easy to install the ADOL-C library and headers using a package manager. It can also be downloaded from:


COLPACK is a software package for sparse derivative computation and colouring, which is required by ADOL-C. It can be downloaded from:


Gnuplot is a portable command-line driven interactive data and function plotting utility which runs on many computer platforms. The software is freely distributed. The source code can be downloaded from the following page: