docs: def calc_gamma_from_variance_autocorrelation_fit(self, NumberOfOscillations, GammaGuess=None, silent=False, MakeFig=True, show_fig=True):
          """
          Calculates the total damping, i.e. Gamma, by splitting the time trace
          into chunks of NumberOfOscillations oscillations and calculated the
          variance of each of these chunks. This array of varainces is then used
          for the autocorrleation. The autocorrelation is fitted with an exponential 
          relaxation function and the function returns the parameters with errors.
  
          Parameters
          ----------
          NumberOfOscillations : int
              The number of oscillations each chunk of the timetrace 
              used to calculate the variance should contain.
          GammaGuess : float, optional
              Inital guess for BigGamma (in radians)
          Silent : bool, optional
              Whether it prints the values fitted or is silent.
          MakeFig : bool, optional
              Whether to construct and return the figure object showing
              the fitting. defaults to True
          show_fig : bool, optional
              Whether to show the figure object when it has been created.
              defaults to True
  
          Returns
          -------
          Gamma : ufloat
              Big Gamma, the total damping in radians
          fig : matplotlib.figure.Figure object
              The figure object created showing the autocorrelation
              of the data with the fit
          ax : matplotlib.axes.Axes object
              The axes object created showing the autocorrelation
              of the data with the fit
  
          """
          try:
              SplittedArraySize = int(self.SampleFreq/self.FTrap.n) * NumberOfOscillations
          except KeyError:
              ValueError('You forgot to do the spectrum fit to specify self.FTrap exactly.')
          VoltageArraySize = len(self.voltage)
          SnippetsVariances = _np.var(self.voltage[:VoltageArraySize-_np.mod(VoltageArraySize,SplittedArraySize)].reshape(-1,SplittedArraySize),axis=1)
          autocorrelation = calc_autocorrelation(SnippetsVariances)
          time = _np.array(range(len(autocorrelation))) * SplittedArraySize / self.SampleFreq
  
          if GammaGuess==None:
              Gamma_Initial = (time[4]-time[0])/(autocorrelation[0]-autocorrelation[4])
          else:
              Gamma_Initial = GammaGuess
          
          if MakeFig == True:
              Params, ParamsErr, fig, ax = fit_autocorrelation(
                  autocorrelation, time, Gamma_Initial, MakeFig=MakeFig, show_fig=show_fig)
          else:
              Params, ParamsErr, _ , _ = fit_autocorrelation(
                  autocorrelation, time, Gamma_Initial, MakeFig=MakeFig, show_fig=show_fig)
  
          if silent == False:
              print("\n")
              print(
                  "Big Gamma: {} +- {}% ".format(Params[0], ParamsErr[0] / Params[0] * 100))
  
          Gamma = _uncertainties.ufloat(Params[0], ParamsErr[0])
          
          if MakeFig == True:
              return Gamma, fig, ax
          else:
              return Gamma, None, None