code: def reset_Ac(self):
          
          if self.ac_reset is False:
              return
  
          mn = self.m + self.n
  
          x = index(aandb(self.zxmin, self.zxmax), 0.)
          y = [i + self.n for i in index(aandb(self.zymin, self.zymax), 0.)]
          xy = list(x) + y
  
          eye = spdiag([1.0] * mn)
          H = spmatrix(1.0, xy, xy, (mn, mn), 'd')
  
          # Modifying ``eye`` is more efficient than ``eye = eye - H``.
          # CVXOPT modifies eye in place because all the accessed elements exist.
  
          for idx in xy:
              eye[idx, idx] = 0
  
          if len(xy) > 0:
              self.Ac = eye * (self.Ac * eye) - H
              self.q[x] = 0
  
          self.ac_reset = False
          self.factorize = True
docs: Reset ``dae.Ac`` sparse matrix for disabled equations
          due to hard_limit and anti_windup limiters.
  
          :return: None