docs: def step_discrete(self, tau=1.0, error_coupling=1.0):
          """Generate a single step of x for discrete
          (potentially closed) loop movements. 
          Decaying from 1 to 0 according to dx = -ax*x.
          
          tau float: gain on execution time
                     increase tau to make the system execute faster
          error_coupling float: slow down if the error is > 1
          """
          self.x += (-self.ax * self.x * error_coupling) * tau * self.dt
          return self.x