def is_metal(self, efermi_tol=1e-4):
        """
        Check if the band structure indicates a metal by looking if the fermi
        level crosses a band.

        Returns:
            True if a metal, False if not
        """
        for spin, values in self.bands.items():
            for i in range(self.nb_bands):
                if np.any(values[i, :] - self.efermi < -efermi_tol) and \
                        np.any(values[i, :] - self.efermi > efermi_tol):
                    return True
        return False
Check if the band structure indicates a metal by looking if the fermi
        level crosses a band.

        Returns:
            True if a metal, False if not