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.
Source: §1 · p. 1Method
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.
Source: §1 · p. 1, PROGRAM SUMMARY · p. 1, §5.3 · p. 6Results
In YNi2B2C, the superconducting-gap anisotropy follows anisotropy in the electron-phonon interaction, while localized Ni 3d states strongly screen that interaction.
Source: §6 · pp. 7–8Takeaways & Limitations
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.Source: PROGRAM SUMMARY · p. 1
- The program computes Fermi surfaces with the tetrahedron method and displays them smoothly using French-curve interpolation.Source: PROGRAM SUMMARY · p. 1
- Parallel- and cross-eye stereograms enhance the visibility of complicated Fermi surfaces.Source: PROGRAM SUMMARY · p. 1
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.Source: §1 · p. 1
- Their shape influences quantum oscillations, while nearly parallel surfaces can produce response anomalies at nesting vectors.Source: §1 · p. 1
- Existing unicolor isosurfaces show Fermi-surface shape but provide limited information about arbitrary k-dependent quantities.Source: §1 · p. 1
- FermiSurfer displays arbitrary k-dependent quantities, cross sections, stereograms, extremal orbits, and nodal lines on or around Fermi surfaces.Source: §1 · p. 1
- Quantum ESPRESSO and Superconducting-Toolkit can generate files readable by FermiSurfer, which uses a simple input format and MIT X consortium licensing.Source: §1 · p. 1
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.Source: §2.1 · p. 2, Figure 1 · p. 2
- Within each tetrahedron, one or two triangles satisfying εk = εF are cut out and the quantity is evaluated at their corners.Source: §2.1 · p. 2
- The tetrahedron interpolation uses corner energies and k-dependent quantities, assuming the energies are ordered as ε1 ≤ ε2 ≤ ε3 ≤ ε4.Source: §2.1 · p. 2
- Triangular patches are color-interpolated, assigned lighting normals from central-difference Fermi velocities, and combined into Fermi surfaces.Source: §2.1 · p. 2, Figure 1 · p. 2
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.Source: §2.2 · p. 2
- The interpolation scheme confines the effect of a band-crossing kink to its vicinity by depending only on four neighboring points.Source: §2.2 · p. 3
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.Source: §3.1 · p. 3
- UNIX, Linux, and macOS users must build FermiSurfer manually and install OpenGL and GLUT libraries first.Source: §3.2 · p. 3
- Debian and Ubuntu install the required dependency with freeglut3-dev, while Red Hat Enterprise Linux and CentOS use freeglut-devel.x86_64.Source: §3.2 · p. 3
- On macOS, the required libraries can be installed as part of the Xcode utility.Source: §3.2 · p. 3
- Running ./configure, make, and make install generates and installs the FermiSurfer binaries.Source: §3.2 · p. 3
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.Source: §4.1 · pp. 3–4
- The input-file example illustrates how numbered components correspond to explanations in the main text, although the labels are absent from actual files.Source: §4.1 · p. 3, Figure 2 · p. 3
4.2. Generating input files
- Fortran and C source code examples generate FermiSurfer input files.Source: §4.1 · p. 4
4.3. Generating input file with other programs
- The bxsf2frmsf utility converts XCrysDen bxsf input files into FermiSurfer input files.Source: §4.2 · p. 4
- 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.Source: §4.3 · p. 4
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.Source: §5.1 · p. 4
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.Source: §5.2 · p. 5
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.Source: §5.3 · pp. 5–6
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.Source: Figure 7 · p. 6, §5.3 · p. 6, Figure 8 · p. 6
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.Source: §5.3 · pp. 6–7, Figure 9 · p. 7
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.Source: §5.3 · pp. 6–7, Figure 10 · p. 7
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.Source: §6 · p. 7
- 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.Source: §6 · p. 7
- The superconducting-gap anisotropy comes from anisotropy in the electron-phonon interaction.Source: §6 · p. 7
- 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.Source: §6 · pp. 7–8
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.Source: §7 · p. 8
- Its visualization functions include stereograms, nodal lines, arbitrary-plane cross sections, and occupied- or unoccupied-side illumination.Source: §7 · p. 8
- Various first-principles software packages can generate data files readable by FermiSurfer, and examples demonstrate its benefits.Source: §7 · p. 8