def _compute_mean(self, imt, mag, rhypo):
        """
        Compute mean value from lookup table.

        Lookup table defines log10(IMT) (in g) for combinations of Mw and
        log10(rhypo) values. ``mag`` is therefore converted from Mblg to Mw
        using Atkinson and Boore 1987 conversion equation. Mean value is
        finally converted from base 10 to base e.
        """
        mag = np.zeros_like(rhypo) + self._convert_magnitude(mag)

        # to avoid run time warning in case rhypo is zero set minimum distance
        # to 10, which is anyhow the minimum distance allowed by the tables
        rhypo[rhypo < 10] = 10
        rhypo = np.log10(rhypo)

        # create lookup table and interpolate it at magnitude/distance values
        table = RectBivariateSpline(
            self.MAGS, self.DISTS, self.IMTS_TABLES[imt].T
        )
        mean = table.ev(mag, rhypo)

        # convert mean from base 10 to base e
        return mean * np.log(10)
Compute mean value from lookup table.

        Lookup table defines log10(IMT) (in g) for combinations of Mw and
        log10(rhypo) values. ``mag`` is therefore converted from Mblg to Mw
        using Atkinson and Boore 1987 conversion equation. Mean value is
        finally converted from base 10 to base e.