FRONTIER_ORBITALS
Optimizes a compact basis set to reproduce the occupied and low-energy virtual Kohn-Sham states obtained from a very large reference basis set. For each training system, a quantum-mechanical DFT reference calculation using this basis must be provided through TRAINING_FILES, including a converged reference wavefunction. The Kohn-Sham Hamiltonian from the reference calculation is frozen and projected into every trial compact basis. Consequently, all candidate orbital subspaces and energies, including the HOMO-LUMO gap, are evaluated relative to the reference Hamiltonian. When optimizing the compact basis against the large reference basis, the following loss function is minimized:
Below, all loss functions \(\mathcal{L}\) are defined. \(R\) and \(C\) label reference and candidate quantities, \(i\) and \(j\) label occupied orbitals, and \(a\) and \(b\) label virtual orbitals. Their overlaps are \(M_{ij}=\langle\psi_i^R\vert\psi_j^C\rangle\) and \(M_{ab}=\langle\psi_a^R\vert\psi_b^C\rangle\), respectively. \(N_{\mathrm{occ}}\) is the number of occupied spatial orbitals. The occupied-subspace loss is
It penalizes a poor representation of the reference occupied orbitals by the occupied orbitals of the compact candidate basis. Low-energy virtual orbitals are selected smoothly using
Define \(N_X=\sum_{a\in\mathrm{vir}}(w_a^X)^2\). The virtual-subspace loss can be written directly as the normalized squared distance between the two energy-weighted virtual-space operators:
The first operator represents the reference low-energy virtual space and the second represents the candidate low-energy virtual space. Here, \(\lVert\cdot\rVert_F^2\) is the squared Frobenius norm, which measures their squared matrix distance. Thus, \(\mathcal{L}_{\mathrm{vir}}\) penalizes differences between the low-energy virtual orbitals of the compact candidate basis and the reference space; it is zero when these spaces coincide. The compact candidate basis can contain empty orbitals outside the selected low-energy interval. To test whether the reference low-energy virtual orbitals can be represented in the entire candidate empty space, the empty-subspace loss is
It penalizes reference low-energy virtual orbitals that cannot be represented by any empty orbital of the compact candidate basis. With \(E_{\mathrm{gap}}^X=\epsilon_{\mathrm{LUMO}}^X-\epsilon_{\mathrm{HOMO}}^X\), the gap loss is
It penalizes deviations of the candidate HOMO-LUMO gap from the reference gap.
During the optimization, the electron density and the corresponding Kohn-Sham Hamiltonian are held fixed at the values obtained with the large reference basis set. Therefore, the candidate gap reported in the optimization output is the fixed-density gap of the reference Hamiltonian projected into the compact candidate basis. A separate self-consistent Kohn-Sham DFT calculation with the optimized compact basis can produce a different electron density and, consequently, a different HOMO-LUMO gap.
For the optimized and initial contraction coefficients of the compact basis set, \(c\) and \(c_0\), the coefficient loss is
It penalizes large deviations from the coefficients of the initially supplied compact basis set. Finally, the conditioning loss is
It penalizes an ill-conditioned candidate overlap matrix. The weights \(\alpha_{\mathrm{occ}}\), \(\alpha_{\mathrm{vir}}\), \(\alpha_{\mathrm{empty}}\), \(\alpha_{\mathrm{gap}}\), and \(\alpha_{\mathrm{coeff}}\) are set below; CONDITION_WEIGHT supplies \(\alpha_\kappa\).
The loss weights \(\alpha_{\mathrm{occ}}\), \(\alpha_{\mathrm{vir}}\), \(\alpha_{\mathrm{empty}}\), \(\alpha_{\mathrm{gap}}\), \(\alpha_{\mathrm{coeff}}\), and \(\alpha_\kappa\) can have a strong and system-dependent effect on the accuracy of the optimized basis set. In particular, the user has to test the new basis set in a self-consistent DFT calculation, which also uses the self-consistent electron density computed with the optimized basis set (during the optimization, the electron density is kept fixed at the density obtained with the large reference basis set). Several combinations of loss weights should be tested, and the optimal basis should be selected based on validation with a self-consistent DFT calculation using the new basis set (for example, by focusing on the resulting DFT gap, GW gap, or GW-BSE excitation energy). Useful candidate parameter combinations include:
OCCUPIED_WEIGHT 1, VIRTUAL_WEIGHT 1, EMPTY_OVERLAP_WEIGHT 1, GAP_WEIGHT 10, GAP_ENERGY_SCALE [eV] 1, CONDITION_WEIGHT 0.1, COEFFICIENT_WEIGHT 0.001
OCCUPIED_WEIGHT 10, VIRTUAL_WEIGHT 10, EMPTY_OVERLAP_WEIGHT 10, GAP_WEIGHT 10, GAP_ENERGY_SCALE [eV] 1, CONDITION_WEIGHT 0.001, COEFFICIENT_WEIGHT 0.001
OCCUPIED_WEIGHT 30, VIRTUAL_WEIGHT 30, EMPTY_OVERLAP_WEIGHT 30, GAP_WEIGHT 10, GAP_ENERGY_SCALE [eV] 1, CONDITION_WEIGHT 0.001, COEFFICIENT_WEIGHT 0.001
OCCUPIED_WEIGHT 10, VIRTUAL_WEIGHT 30, EMPTY_OVERLAP_WEIGHT 30, GAP_WEIGHT 10, GAP_ENERGY_SCALE [eV] 1, CONDITION_WEIGHT 0.001, COEFFICIENT_WEIGHT 0.01 [Edit on GitHub]
Keywords
Keyword descriptions
- COEFFICIENT_WEIGHT
Type: real
Default: 1.00000000E-003
Usage: COEFFICIENT_WEIGHT 1.0E-3Description: Prefactor \(\alpha_{\mathrm{coeff}}\) multiplying the normalized squared change \(\mathcal{L}_{\mathrm{coeff}}\) of the optimized contraction coefficients from their initial values. [Edit on GitHub]
- EMPTY_OVERLAP_WEIGHT
Type: real
Default: 1.00000000E+000
Usage: EMPTY_OVERLAP_WEIGHT 1.0Description: Prefactor \(\alpha_{\mathrm{empty}}\) multiplying \(\mathcal{L}_{\mathrm{empty}}\), the loss of reference low-energy virtual-state completeness in the candidate virtual subspace. [Edit on GitHub]
- GAP_ENERGY_SCALE
Type: real
Default: 1.00000000E-002 [eV]
Usage: GAP_ENERGY_SCALE [eV] 0.01Description: \(E_{\mathrm{scale}}\) in the gap loss. A gap error of this magnitude gives \(\mathcal{L}_{\mathrm{gap}}=1\). The default is 0.01 eV. [Edit on GitHub]
- GAP_WEIGHT
Type: real
Default: 1.00000000E-003
Usage: GAP_WEIGHT 1.0E-3Description: Prefactor \(\alpha_{\mathrm{gap}}\) multiplying the normalized HOMO-LUMO gap loss \(\mathcal{L}_{\mathrm{gap}}\). Because \(\mathcal{L}_{\mathrm{gap}}\) is proportional to \(1/E_{\mathrm{scale}}^2\), reducing GAP_ENERGY_SCALE by a factor of 100 requires reducing GAP_WEIGHT by a factor of 10000 to retain the same balance. [Edit on GitHub]
- OCCUPIED_WEIGHT
Type: real
Default: 1.00000000E+000
Usage: OCCUPIED_WEIGHT 1.0Description: Prefactor \(\alpha_{\mathrm{occ}}\) multiplying the occupied-subspace loss \(\mathcal{L}_{\mathrm{occ}}\). [Edit on GitHub]
- VIRTUAL_ENERGY_CUTOFF
Type: real
Default: 3.00000000E+000 [eV]
Usage: VIRTUAL_ENERGY_CUTOFF [eV] 3.0Description: \(E_{\mathrm{cut}}\), the virtual-orbital energy window measured from the corresponding LUMO. The default is 3 eV. [Edit on GitHub]
- VIRTUAL_ENERGY_SMOOTHING
Type: real
Default: 2.00000000E-001 [eV]
Usage: VIRTUAL_ENERGY_SMOOTHING [eV] 0.2Description: \(\Delta E\), the smoothing width at the outer boundary of the virtual-orbital energy window. It must be positive; the default is 0.2 eV. [Edit on GitHub]
- VIRTUAL_WEIGHT
Type: real
Default: 1.00000000E+000
Usage: VIRTUAL_WEIGHT 1.0Description: Prefactor \(\alpha_{\mathrm{vir}}\) multiplying the virtual-subspace loss \(\mathcal{L}_{\mathrm{vir}}\). [Edit on GitHub]