docs: def fit_glx(self, reject_outliers=3.0, fit_lb=3.6, fit_ub=3.9,
                  fit_func=None):
          """
          Fit a Gaussian function to the Glu/Gln (GLX) peak at 3.75ppm, +/-
          0.15ppm [Hurd2004]_.  Compare this model to a model
          that treats the Glx signal as two gaussian peaks.  Glx signal
          at. Select between them based on cross-validation
  
          Parameters
          ----------
          reject_outliers : float or bool
             If set to a float, this is the z score threshold for rejection (on
             any of the parameters). If set to False, no outlier rejection
  
          fit_lb, fit_ub : float
             What part of the spectrum (in ppm) contains the GLX peak.
             Default (3.5, 4.5)
  
          scalefit : boolean
             If this is set to true, attempt is made to tighten the fit to the
             peak with a second round of fitting where the fitted curve
             is fit with a scale factor. (default false)
  
          References
          ----------
          .. [Hurd2004] 2004, Measurement of brain glutamate using TE-averaged
          PRESS at 3T
  
          """
          # Use everything:
          fit_spectra = self.diff_spectra.copy()
  
          if fit_func is None:
              # Cross-validate!
              fitter, self.glx_func, self.glx_model_err, self.glx_signal_err=\
                  self._xval_choose_funcs(fit_spectra,
                                          reject_outliers,
                                          fit_lb, fit_ub)
          # Otherwise, you had better supply a couple of callables that can be
          # used to fit these spectra!
          else:
              fitter = fit_func[0]
              self.glx_func = fit_func[1]
              self.glx_model_err, self.glx_signal_err = \
                  self._xval_model_error(fit_spectra, reject_outliers,
                                         fit_lb, fit_ub, fitter, self.glx_func)
  
          # Do it!
          choose_transients, model, signal, params, this_idx = self._fit_helper(
                                           fit_spectra, reject_outliers,
                                           fit_lb, fit_ub, fitter)
  
          self._glx_transients = choose_transients
          self.glx_model = model
          self.glx_signal = signal
          self.glx_params = params
          self.glx_idx = this_idx
          mean_params = stats.nanmean(params, 0)
  
          self.glx_auc =  self._calc_auc(self.glx_func, params, self.glx_idx)