# API Reference¶

Modules

 sporco.util Utility functions. sporco.mpiutil Utility functions that make use of MPI for parallel computing. sporco.array Functions operating on numpy arrays etc. sporco.linalg Linear algebra functions. sporco.fft Variants of the Fast Fourier Transform and associated functions. sporco.signal Signal and image processing functions. sporco.interp Interpolation and regression functions. sporco.prox Norms and their associated proximal maps and projections sporco.metric Image quality metrics and related functions sporco.plot Plotting/visualisation functions sporco.cdict Constrained dictionary class. sporco.cnvrep Classes and functions that support working with convolutional representations. sporco.common Common functions and classes iterative solver classes sporco.admm.admm Base classes for ADMM algorithms sporco.admm.bpdn Classes for ADMM algorithm for the BPDN problem sporco.admm.cmod ADMM algorithm for the CMOD problem sporco.admm.cbpdn Classes for ADMM algorithm for the Convolutional BPDN problem sporco.admm.parcbpdn Parallel ADMM algorithm for Convolutional BPDN sporco.admm.cbpdntv Classes for ADMM algorithms for convolutional sparse coding with Total Variation regularisation terms sporco.admm.cbpdnin Class for ADMM algorithm for convolutional sparse coding with inhibition terms sporco.admm.pdcsc Classes for ADMM algorithms for sparse coding with a product of convolutional and standard dictionaries sporco.admm.ccmod ADMM algorithms for the Convolutional Constrained MOD problem sporco.admm.ccmodmd ADMM algorithms for the Convolutional Constrained MOD problem with Mask Decoupling sporco.admm.tvl1 Classes for ADMM algorithms for Total Variation (TV) optimisation with an $$\ell_1$$ data fidelity term sporco.admm.tvl2 Classes for ADMM algorithms for Total Variation (TV) optimisation with an $$\ell_2$$ data fidelity term sporco.admm.rpca Classes for ADMM algorithms for Robust PCA optimisation sporco.admm.spline Classes for ADMM algorithms for $$\ell_1$$ spline optimisation sporco.admm.ppp Classes for ADMM variant of the Plug and Play Priors (PPP) algorithm. sporco.fista.fista Base classes for FISTA algorithms sporco.fista.bpdn Classes for FISTA algorithm for the BPDN problem sporco.fista.cbpdn Classes for FISTA algorithm for the Convolutional BPDN problem sporco.fista.ccmod FISTA algorithms for the CCMOD problem sporco.fista.ppp Classes for FISTA variant of the Plug and Play Priors (PPP) algorithm. sporco.dictlrn.common Common infrastructure for some of the dictionary learning modules sporco.dictlrn.dictlrn Dictionary learning based on ADMM sparse coding and dictionary updates sporco.dictlrn.bpdndl Dictionary learning based on BPDN sparse coding sporco.dictlrn.cbpdndl Dictionary learning based on CBPDN sparse coding sporco.dictlrn.cbpdndlmd Dictionary learning based on CBPDN sparse coding with a spatial mask in the data fidelity term sporco.dictlrn.prlcnscdl Parallel consensus convolutional dictionary learning sporco.dictlrn.onlinecdl Online dictionary learning based on CBPDN sparse coding

Extension subpackages

 sporco.cuda Interface to the SPORCO-CUDA extension package sporco.cupy GPU accelerated versions of selected SPORCO modules