docs: def get_mean_table(self, imt, rctx):
          """
          Returns amplification factors for the mean, given the rupture and
          intensity measure type.
  
          :returns:
              amplification table as an array of [Number Distances,
              Number Levels]
          """
          # Levels by Distances
          if imt.name in 'PGA PGV':
              interpolator = interp1d(self.magnitudes,
                                      numpy.log10(self.mean[imt.name]), axis=2)
              output_table = 10.0 ** (
                  interpolator(rctx.mag).reshape(self.shape[0], self.shape[3]))
          else:
              # For spectral accelerations - need two step process
              # Interpolate period - log-log space
              interpolator = interp1d(numpy.log10(self.periods),
                                      numpy.log10(self.mean["SA"]),
                                      axis=1)
              period_table = interpolator(numpy.log10(imt.period))
              # Interpolate magnitude - linear-log space
              mag_interpolator = interp1d(self.magnitudes, period_table, axis=1)
              output_table = 10.0 ** mag_interpolator(rctx.mag)
          return output_table