docs: def get_amplification_factors(self, imt, sctx, rctx, dists, stddev_types):
          """
          Returns the amplification factors for the given rupture and site
          conditions.
  
          :param imt:
              Intensity measure type as an instance of the :class:
              `openquake.hazardlib.imt`
          :param sctx:
              SiteCollection instance
          :param rctx:
              Rupture instance
          :param dists:
              Source to site distances (km)
          :param stddev_types:
              List of required standard deviation types
          :returns:
              * mean_amp - Amplification factors applied to the median ground
                           motion
              * sigma_amps - List of modification factors applied to the
                           standard deviations of ground motion
          """
          dist_level_table = self.get_mean_table(imt, rctx)
          sigma_tables = self.get_sigma_tables(imt, rctx, stddev_types)
          mean_interpolator = interp1d(self.values,
                                       numpy.log10(dist_level_table),
                                       axis=1)
          sigma_interpolators = [interp1d(self.values, sigma_table, axis=1)
                                 for sigma_table in sigma_tables]
          if self.element == "Rupture":
              mean_amp = 10.0 ** mean_interpolator(
                  getattr(rctx, self.parameter))[0] * numpy.ones_like(dists)
              sigma_amps = []
              for sig_interpolator in sigma_interpolators:
                  sigma_amps.append(sig_interpolator(
                      getattr(rctx, self.parameter))[0] * numpy.ones_like(dists))
          else:
              mean_amp = 10.0 ** mean_interpolator(
                  getattr(sctx, self.parameter))[0, :]
              sigma_amps = []
              for sig_interpolator in sigma_interpolators:
                  sigma_amps.append(sig_interpolator(
                      getattr(sctx, self.parameter))[0, :] *
                      numpy.ones_like(dists))
          return mean_amp, sigma_amps