def ystep(self): r"""Minimise Augmented Lagrangian with respect to :math:`\mathbf{y}`. """ self.Y = np.asarray(sp.proj_l1(self.AX + self.U, self.gamma, axis=0), dtype=self.dtype) super(BPDNProjL1, self).ystep()
def eval_objfn(self): """Compute components of regularisation function as well as total contribution to objective function. """ dfd = self.obfn_dfd() prj = sp.proj_l1(self.obfn_gvar(), self.gamma, axis=0) cns = np.linalg.norm(prj - self.obfn_gvar()) return (dfd, cns)