docs: def apply_magnitude_interpolation(self, mag, iml_table):
          """
          Interpolates the tables to the required magnitude level
  
          :param float mag:
              Magnitude
          :param iml_table:
              Intensity measure level table
          """
          # do not allow "mag" to exceed maximum table magnitude
          if mag > self.m_w[-1]:
              mag = self.m_w[-1]
  
          # Get magnitude values
          if mag < self.m_w[0] or mag > self.m_w[-1]:
              raise ValueError("Magnitude %.2f outside of supported range "
                               "(%.2f to %.2f)" % (mag,
                                                   self.m_w[0],
                                                   self.m_w[-1]))
          # It is assumed that log10 of the spectral acceleration scales
          # linearly (or approximately linearly) with magnitude
          m_interpolator = interp1d(self.m_w, numpy.log10(iml_table), axis=1)
          return 10.0 ** m_interpolator(mag)