def _enhance_bass(self):
        """Update best span choices with bass enhancement as requested by user (Eq. 11)."""
        if not self._bass_enhancement:
            # like in supsmu, skip if alpha=0
            return
        bass_span = DEFAULT_SPANS[BASS_INDEX]
        enhanced_spans = []
        for i, best_span_here in enumerate(self._best_span_at_each_point):
            best_smooth_index = DEFAULT_SPANS.index(best_span_here)
            best_span = DEFAULT_SPANS[best_smooth_index]
            best_span_residual = self._residual_smooths[best_smooth_index][i]
            bass_span_residual = self._residual_smooths[BASS_INDEX][i]
            if 0 < best_span_residual < bass_span_residual:
                ri = best_span_residual / bass_span_residual
                bass_factor = ri ** (10.0 - self._bass_enhancement)
                enhanced_spans.append(best_span + (bass_span - best_span) * bass_factor)
            else:
                enhanced_spans.append(best_span)
        self._best_span_at_each_point = enhanced_spans