def METHOD_NAME(self):
    self.tmp_dir += self.u
    self.tmp_dir -= self.z
    self.operator.adjoint(self.tmp_dir, out = self.tmp_adj)
    self.x.sapyb(1, self.tmp_adj, -(self.tau/self.sigma), out=self.x)
    # apply proximal of f
    tmp = self.f.proximal(self.x, self.tau)
    self.operator.direct(tmp, out=self.tmp_dir)
    # store the result in x
    self.x.fill(tmp)
    del tmp
    self.u += self.tmp_dir
    # apply proximal of g   
    self.g.proximal(self.u, self.sigma, out = self.z)
    # update 
    self.u -= self.z