docs: def get_mean_and_stddevs(self, sites, rup, dists, imt, stddev_types):
          """
          Using a frequency dependent correction for the mean ground motion.
          Standard deviation is fixed.
          """
          mean, stddevs = super().get_mean_and_stddevs(sites, rup, dists,
                                                       imt, stddev_types)
          # Defining frequency
          if imt == PGA():
              freq = 50.0
          elif imt == PGV():
              freq = 2.0
          else:
              freq = 1./imt.period
  
          # Equation 3 of Atkinson (2010)
          x1 = np.min([-0.18+0.17*np.log10(freq), 0])
  
          # Equation 4 a-b-c of Atkinson (2010)
          if rup.hypo_depth < 20.0:
              x0 = np.max([0.217-0.321*np.log10(freq), 0])
          elif rup.hypo_depth > 35.0:
              x0 = np.min([0.263+0.0924*np.log10(freq), 0.35])
          else:
              x0 = 0.2
  
          # Limiting calculation distance to 1km
          # (as suggested by C. Bruce Worden)
          rjb = [d if d > 1 else 1 for d in dists.rjb]
  
          # Equation 2 and 5 of Atkinson (2010)
          mean += (x0 + x1*np.log10(rjb))/np.log10(np.e)
  
          return mean, stddevs