Source-linked AI summary
FermiSurfer: Fermi-surface viewer providing multiple representation schemes
Mitsuaki Kawamura
TL;DR
Metallic properties depend strongly on Fermi-surface structure and anisotropic quantities, yet conventional plots provide limited information beyond surface shape. FermiSurfer computes and interactively visualizes Fermi surfaces with arbitrary k-dependent data and multiple representations, and its application to YNi2B2C traces superconducting-gap anisotropy to anisotropic electron-phonon interaction and Ni 3d screening.
Problem
Conventional Fermi-surface plots mainly show shape, making anisotropic k-dependent quantities relevant to metallic properties difficult to observe, especially on complicated or multiband surfaces.
Method
FermiSurfer reads orbital energies and arbitrary k-dependent quantities, computes Fermi surfaces, and provides color plots, cross sections, stereograms, nodal lines, extremal orbits, and occupied-side or unoccupied-side illumination.
Results
In YNi2B2C, the superconducting-gap anisotropy follows anisotropy in the electron-phonon interaction, while localized Ni 3d states strongly screen that interaction.
Takeaways & Limitations
FermiSurfer provides an intuitive way to examine electronic-state variation over Fermi surfaces and connect visualized quantities with the origin of anisotropic superconductivity.
Abstract
from arXiv · showhide
FermiSurfer is a newly developed Fermi-surface viewer designed to facilitate the understanding of the physical properties of metals. It can display the Fermi surfaces of a material, color plots of arbitrary $k$-dependent quantities, the Fermi surface at arbitrary cross sections (Fermi lines), cross- or parallel- eye three-dimensional stereogram views, nodal lines, extremal orbits, and highlight the occupied or empty side of the Fermi surface. In addition, various first-principles software packages can produce input for FermiSurfer. This paper explains how to use FermiSurfer and demonstrates its usefulness by investigating the origin of the anisotropic superconductivity of YNi$_2$B$_2$C.
PROGRAM SUMMARY
FermiSurfer is a graphical tool for visualizing how arbitrary k-dependent quantities vary across complicated Fermi surfaces, using tetrahedron-based computation and smooth interpolation.
- FermiSurfer addresses the difficulty of observing anisotropic quantities on complicated Fermi surfaces, which affect electronic properties such as superconductivity and thermoelectricity.
- The program computes Fermi surfaces with the tetrahedron method and displays them smoothly using French-curve interpolation.
- Parallel- and cross-eye stereograms enhance the visibility of complicated Fermi surfaces.
1. Introduction
Fermi surfaces strongly influence metallic properties, but conventional shape-only visualization provides limited information about anisotropic k-dependent quantities. FermiSurfer addresses this gap with broader visualization and interoperable input support.
- Fermi surfaces strongly affect metallic properties because they are the most active region in reciprocal space.
- Their shape influences quantum oscillations, while nearly parallel surfaces can produce response anomalies at nesting vectors.
- Existing unicolor isosurfaces show Fermi-surface shape but provide limited information about arbitrary k-dependent quantities.
- FermiSurfer displays arbitrary k-dependent quantities, cross sections, stereograms, extremal orbits, and nodal lines on or around Fermi surfaces.
- Quantum ESPRESSO and Superconducting-Toolkit can generate files readable by FermiSurfer, which uses a simple input format and MIT X consortium licensing.
2. Method
FermiSurfer constructs Fermi surfaces from uniform k-grid data by tetrahedral interpolation, then smooths the displayed surfaces with an interpolation scheme designed to limit band-crossing artifacts.
- 2.1. Tetrahedron method applied to patches: The program reads orbital energies and k-dependent quantities on a uniform k grid, divides each cell into six tetrahedra, and computes triangular Fermi-surface fragments.
- 2.1. Tetrahedron method applied to patches: Within each tetrahedron, one or two triangles satisfying εk = εF are cut out and the quantity is evaluated at their corners.
- 2.1. Tetrahedron method applied to patches: The tetrahedron interpolation uses corner energies and k-dependent quantities, assuming the energies are ordered as ε1 ≤ ε2 ≤ ε3 ≤ ε4.
- 2.1. Tetrahedron method applied to patches: Triangular patches are color-interpolated, assigned lighting normals from central-difference Fermi velocities, and combined into Fermi surfaces.
- 2.2. French-curve interpolation: For smoother display, FermiSurfer interpolates energies and quantities onto a denser grid because spline, Fourier, and polynomial interpolation can oscillate near band crossings.
- 2.2. French-curve interpolation: The interpolation scheme confines the effect of a band-crossing kink to its vicinity by depending only on four neighboring points.
3. Installation
FermiSurfer is packaged with Windows binaries and must be built manually on UNIX-like systems after installing OpenGL and GLUT dependencies.
- The package includes source code, sample inputs, documents, and a Windows binary, so Windows users do not need to build it.
- UNIX, Linux, and macOS users must build FermiSurfer manually and install OpenGL and GLUT libraries first.
- Debian and Ubuntu install the required dependency with freeglut3-dev, while Red Hat Enterprise Linux and CentOS use freeglut-devel.x86_64.
- On macOS, the required libraries can be installed as part of the Xcode utility.
- Running ./configure, make, and make install generates and installs the FermiSurfer binaries.
4. Input file
This section defines FermiSurfer’s input-file structure and identifies the data required to compute Fermi surfaces and color plots. It also describes source-code generation and interfaces with external first-principles programs.
- 4.1. Input-file format: FermiSurfer input files specify grid dimensions, grid type, band count, reciprocal-lattice vectors, orbital energies, and optional k-dependent quantities.The orbital energies εnk and quantities Xnk are supplied as grid data; the Fermi energy defaults to zero but can be shifted.
- 4.1. Input-file format: The input-file example illustrates how numbered components correspond to explanations in the main text, although the labels are absent from actual files.
- 4.2. Generating input files: Fortran and C source code examples generate FermiSurfer input files.
- 4.3. Generating input file with other programs: The bxsf2frmsf utility converts XCrysDen bxsf input files into FermiSurfer input files.
- 4.3. Generating input file with other programs: Quantum ESPRESSO and SCTK can output files compatible with FermiSurfer for displaying quantities such as Fermi velocity, orbital character, superconducting gaps, and electron-phonon renormalization.SCTK also generates plots of the screened Coulomb potential after self-consistently solving the SCDFT gap equation.
5. Usage and functions
FermiSurfer provides interactive views and analyses of Fermi surfaces, including configurable color plots, Brillouin zones, cross sections, stereograms, nodal lines, and extremal orbits.
- Launching and input: FermiSurfer launches from compatible input files on Linux, UNIX, macOS, or Windows.The application can read files generated by Fortran or C source code.
- Application interface: The main window displays Fermi surfaces, Brillouin-zone boundaries, and color scales, while terminal prompts provide input-data information and interactive commands.Objects can be rotated, resized, and translated through mouse and keyboard controls.
- Display controls: Users can select first or primitive Brillouin zones and customize displayed bands, background colors, color scales, and surface smoothing.Color-scale modes support automatic or manual ranges, grayscale, unicolor rendering, and internally computed Fermi velocity.
- Examples: Examples show Fermi velocity color plots and extremal orbits for SrVO3, occupied-side rendering for H3S, and superconducting-gap-related plots for YNi2B2C.The H3S example distinguishes an electron pocket at the Brillouin-zone corner from hole pockets at its center.
- Cross sections: FermiSurfer displays arbitrary Brillouin-zone cross sections, including sections constrained to contain the Γ point.Users specify the section orientation with a vector in reciprocal fractional coordinates.
- Advanced views: The software supports parallel- and cross-eye stereograms, occupied- or unoccupied-side illumination, nodal lines, and extremal orbits.Extremal orbits identify lines where the Fermi velocity is orthogonal to a selected vector, supporting visualization of anisotropic quantities.
6. Examples
FermiSurfer is used with SCTK to examine anisotropic superconductivity in YNi2B2C. The analysis links gap anisotropy to anisotropic electron-phonon interaction and Ni 3d orbital character.
- YNi2B2C has highly anisotropic superconducting gaps despite being a conventional phonon-mediated superconductor.
- Small-gap regions occur at Brillouin-zone corners, while large-gap regions occur at its center.The same spatial tendency appears in the electron-phonon renormalization.
- The superconducting-gap anisotropy comes from anisotropy in the electron-phonon interaction.
- Strong Ni 3d orbital character corresponds to weak electron-phonon interaction because localized Ni 3d states strongly screen it.This orbital-dependent screening explains the observed variation of interaction strength across the Fermi surface.
7. Summary
The paper presents FermiSurfer as a viewer for intuitive analysis of electronic states in metals. It supports diverse Fermi-surface representations, arbitrary k-dependent quantities, and data generated by first-principles software.
- FermiSurfer displays Fermi surfaces color coded by arbitrary k-dependent quantities to support intuitive understanding of electronic states in metals.
- Its visualization functions include stereograms, nodal lines, arbitrary-plane cross sections, and occupied- or unoccupied-side illumination.
- Various first-principles software packages can generate data files readable by FermiSurfer, and examples demonstrate its benefits.