docs: def rollout(self, timesteps=None, **kwargs):
          """Generate a system trial, no feedback is incorporated."""
  
          self.reset_state()
  
          if timesteps is None:
              if kwargs.has_key('tau'):
                  timesteps = int(self.timesteps / kwargs['tau'])
              else: 
                  timesteps = self.timesteps
  
          # set up tracking vectors
          y_track = np.zeros((timesteps, self.dmps)) 
          dy_track = np.zeros((timesteps, self.dmps))
          ddy_track = np.zeros((timesteps, self.dmps))
      
          for t in range(timesteps):
          
              y, dy, ddy = self.step(**kwargs)
  
              # record timestep
              y_track[t] = y
              dy_track[t] = dy
              ddy_track[t] = ddy
  
          return y_track, dy_track, ddy_track