docs: def gen_centers(self):
          """Set the centre of the Gaussian basis 
          functions be spaced evenly throughout run time"""
  
          '''x_track = self.cs.discrete_rollout()
          t = np.arange(len(x_track))*self.dt
          # choose the points in time we'd like centers to be at
          c_des = np.linspace(0, self.cs.run_time, self.bfs)
          self.c = np.zeros(len(c_des))
          for ii, point in enumerate(c_des): 
              diff = abs(t - point)
              self.c[ii] = x_track[np.where(diff == min(diff))[0][0]]'''
  
          # desired spacings along x
          # need to be spaced evenly between 1 and exp(-ax)
          # lowest number should be only as far as x gets 
          if self.bfs == 2:
              first = 0.5 # MODIFIED to handle a small number of basis (e.g. 3)
              last = 0.8
          elif self.bfs == 3:
              first = 0.4
              last = 0.8
          else:
              first = 0.2
              last = 0.8
          #first = np.exp(-self.cs.ax*self.cs.run_time) 
          #last = 1.05 - first
          des_c = np.linspace(first,last,self.bfs) 
  
          self.c = np.ones(len(des_c)) 
          for n in range(len(des_c)): 
              # x = exp(-c), solving for c
              self.c[n] = -np.log(des_c[n])