code: def evaluate(self):
          
  
          X = mp_Z_Y
          Xf = mp_Zf
          Df = mp_Df
          Sf = mp_Sf
          Ef = sl.inner(Df[np.newaxis, ...], Xf,
                         axis=self.xstep.cri.axisM+1) - Sf
          Ef = np.swapaxes(Ef, 0, self.xstep.cri.axisK+1)[0]
          dfd = sl.rfl2norm2(Ef, self.xstep.S.shape,
                              axis=self.xstep.cri.axisN)/2.0
          rl1 = np.sum(np.abs(X))
          obj = dfd + self.xstep.lmbda*rl1
          return (obj, dfd, rl1)
docs: Evaluate functional value of previous iteration.