# Modules ccmod and ccmodmd¶

Modules admm.ccmod and fista.ccmod include classes for solving the problem

$\mathrm{argmin}_\mathbf{d} \; \frac{1}{2} \sum_k \left \| \sum_m \mathbf{d}_m * \mathbf{x}_{k,m} - \mathbf{s}_k \right \|_2^2 \quad \text{ such that } \quad \mathbf{d}_m \in C \;\; \forall m \;,$

where $$C$$ is the feasible set consisting of filters with unit norm and constrained support. Classes ConvCnstrMOD_IterSM, ConvCnstrMOD_CG, and ConvCnstrMOD_Consensus provide different methods of solving this problem, and admm.ccmod.ConvCnstrMOD provides a mechanism for choosing one of these classes via the method parameter specifying the solution method.

A usage example is available.

Modules admm.ccmodmd and fista.ccmod include classes for solving the problem

$\mathrm{argmin}_\mathbf{d} \; \frac{1}{2} \sum_k \left \| W \left(\sum_m \mathbf{d}_m * \mathbf{x}_{k,m} - \mathbf{s}_k \right) \right \|_2^2 \quad \text{ such that } \quad \mathbf{d}_m \in C \;\; \forall m \;,$

where $$C$$ is the feasible set as above, and $$W$$ is a mask array. Classes ConvCnstrMODMaskDcpl_IterSM, ConvCnstrMODMaskDcpl_CG, and ConvCnstrMODMaskDcpl_Consensus provide different methods of solving this problem, and ConvCnstrMODMaskDcpl provides a mechanism for choosing one of these classes via the method parameter specifying the solution method.