SPORCO provides a set of classes supporting the construction of new optimisation algorithms within the ADMM  and FISTA  frameworks, as well as a set of complete algorithms, based on these frameworks, for solving optimisation problems within the following categories:
Standard Sparse Representations¶
Convolutional Sparse Representations¶
The ADMM and FISTA classes are designed to for ease of implementation of new problems and simplicity of extension of existing problems. See
admm.bpdn.BPDN as an example of the methods that need to be defined to implement a complete ADMM algorithm, and
BPDNJoint as an example of the minor additional code required to extend an existing problem.