Skip to content

Molecular Orbital Eigenvalues

Molecular orbital eigenvalue files contain the energies of molecular orbitals obtained from quantum chemistry calculations. While not required for QMC calculations, these orbital energies are useful for analysis, interpretation, and verification of the electronic structure.

Overview

Orbital eigenvalues (orbital energies) represent the energy of an electron in a specific molecular orbital.

Key Concepts

  • Occupied orbitals: Negative eigenvalues (typically) for filled orbitals
  • Virtual orbitals: Positive eigenvalues for unoccupied orbitals
  • HOMO-LUMO gap: Energy difference between highest occupied and lowest unoccupied orbitals

File Format

Eigenvalue files are stored in the pool/ directory and are automatically generated by the trex2champ converter when eigenvalue information is present in the TREXIO file.

File Structure

eigenvalues 64
-1.3659 -0.7150 -0.5814 -0.5081 0.1201 0.1798 0.4846 0.5148 0.5767 0.6085 0.7153 0.7820 0.8691 0.8699 0.9642 1.2029 ...
end

Format Specification

Header line: Keyword and number of orbitals

eigenvalues 64

Format: keyword norb

  • keyword: Can be either eigenvalues or energies.
  • norb: Total number of molecular orbitals. This must match the orbital count in the other input files.

Energy values: Orbital energies in atomic units (Hartree)

-1.3659 -0.7150 -0.5814 -0.5081 0.1201 0.1798 ...

  • List of floating point numbers.
  • One value per molecular orbital.
  • Values in Hartree (atomic units of energy).
  • Number of values must equal norb.

Final line:

end

Loading Eigenvalue Files in CHAMP

Standard Loading

Specify the eigenvalue file in the CHAMP input:

%module general
    title  'VMC calculation'
    pool   './pool/'
%endmodule

load trexio       $pool/molecule.hdf5
load eigenvalues  $pool/molecule.eig

From TREXIO File

If the load trexio command is used and the TREXIO file contains eigenvalue information, the eigenvalues are read directly from it. You can override this or provide eigenvalues explicitly if not using TREXIO by using load eigenvalues.

TREXIO contains eigenvalue information

Note that TREXIO file might contain orbital eigenvalue information, so you don't need to provide a separate eigenvalue file. If it does not, you can use the trex2champ tool to generate one.

Generate Eigenvalues File

You can generate an eigenvalue file using the trex2champ tool from a TREXIO file (which itself can be converted from other formats like GAMESS, PySCF, etc., using trexio-tools).

#!/bin/bash
python trex2champ.py    \
            --trex molecule.hdf5 \
            --motype "RHF" \
            --backend "HDF5" \
            --basis_prefix "cc-VDZ" \
            --lcao \
            --geom \
            --basis \
            --ecp \
            --eig       # Flag to generate eigenvalues file