In TFOCS I’m minimizing the L1 norm of the derivative of x. So the argument looks like ||Dx|| where D is the derivative matrix and the norm is L1. So I decided to make a new nonsmooth function prox_l1_d.m based upon the prox_l1.m script already in TFOCS.
So take a look at prox_l1.m: I change the input argument q (and all it’s subsequent occurrences) to D (not strictly necessary…but it keeps my head clear), comment out the nargin stuff, and change line 41 from,
v = norm( qq(:).*x(:), 1 );
v = norm( qq*x(:), 1 );
But I have no idea what to do about lines 44-48 as I don’t understand the idea of a proximal function. So I have two questions:
Is this a good way to implement L1 minimization of the derivative of x in TFOCS?
How do I change lines 44-48 to make it work?