User Tools

Site Tools


howto:gfn1xtb

This is an old revision of the document!


How to run a GFN1-xTB calculation

This is a short tutorial on how to run GFN1-XTB computations. The details on the theory and the original implementation by Grimme can be found in https://pubs.acs.org/doi/full/10.1021/acs.jctc.7b00118. Please cite this paper if you were to use the GFN1-XTB module.

Brief theory recap

The semi-empirical GFN1-xTB energy expression comprises contributions due to electronic (EL), atom-pairwise repulsion (REP), dispersion (DISP), and halogen-bonding (XB) terms as well as optionally, a generic nonbonding potential correction (NONBOND),

\begin{equation}\label{gfnxtb1_energy_expression} \begin{aligned} E_{\rm{\tiny{GFN1-xTB}}} = E_{\rm{\tiny{EL}}} + E_{\rm{\tiny{REP}}} + E_{\rm{\tiny{DISP}}} + E_{\rm{\tiny{XB}}} + E_{\rm{\tiny{NONBOND}}}\, . \end{aligned} \end{equation}

1. The electronic energy contribution,

\begin{equation}\label{electronic_energy} \begin{aligned} E_{\rm{\tiny{el}}} = \sum_i^{\rm{\tiny{occ}}} n_i \langle \Psi_i | h_0 | \Psi_i \rangle + \frac{1}{2} \sum_{A,B} \sum_{{l}^A}\sum_{{l'}^B} p_l^A p_{{l'}^B} \gamma_{AB,ll'} + \frac{1}{3}\sum_{A} \Gamma_A q_A^3 - T_{\rm{\tiny{el}}} S_{\rm{\tiny{el}}} \, , \end{aligned} \end{equation}

contains zeroth-order contributions based on a zeroth-order Hamiltonian $h_0$, the valence molecular orbitals $\Psi_i$, occupation numbers $n_i$ as well as second-order contributions which are optimized self-consistently as well as third-order diagonal contributions. The second order contributions are described using the semi-empirical electron repulsion operator $\gamma_{AB,ll'}$ which depends on the interatomic distance of atoms $A$ and $B$ as well as further empirical parameters that are specific for different angular momenta $l$ and $l'$. The monopole charges of the second-order expression are optimized self-consistently,

\begin{equation}\label{scc_charges} \begin{aligned} p_l^A = p_l^{A_0} - \sum_{\nu}^{N_{\rm{\tiny{AO}}}} \sum_{\mu \in A, \mu \in l} S_{\mu \nu } P_{\mu \nu} \, , \end{aligned} \end{equation}

referring to the atomic orbital overlap matrix $\mathbf{S}$ and the density matrix $\mathbf{P}$.

The remaining diagonal terms represent a cubic charge correction based on the Mulliken charge $q_A$ of atom $A$ and the charge derivative $\Gamma_A$ of the atomic Hubbard parameter $\eta_A$. Furthermore, the electronic temperature times entropy term $T_{\rm{\tiny{el}}}S_{\rm{\tiny{el}}}$ enables fractional orbital occupations.

2. Repulsion is described via an atom-pairwise potential,

\begin{equation}\label{repulsion} \begin{aligned} E_{\rm{\tiny{rep}}} = \sum_{AB} \frac{Z_A^{\rm{\tiny{eff}}} Z_B^{\rm{\tiny{eff}}} }{R_{AB}} \exp^{- (\alpha_A \alpha_B)^{1/2} (R_{AB})^{k_f}} \, , \end{aligned} \end{equation} with the effective nuclear charge $\mathbf{Z}^{\rm{\tiny{eff}}}$ as well as the global or element-specific parameters $k_f$ and $\alpha$.

3. Dispersion is included by the well-established D3 method in the BJ-damping schemehttps://aip.scitation.org/doi/10.1063/1.3382344.

4. Corrections for element-specific interactions are possible using either a halogen-bonding correction term (XB) or a generic nonbonding potential correction (NONBOND). Note that the generic nonbonding potential correction is CP2K specific.

The GFN1-xTB input section

The most important keywords and subsections of section xTB are:

  • DO_EWALD: keyword to activate Ewald summation for periodic boundary conditions (PBC); has to be switched to true in case of PBC
  • USE_HALOGEN_INTERACTION: keyword to switch off contribution $E_{\rm{\tiny{XB}}}$ to correct halogen interactions, default is to include this correction
  • CHECK_ATOMIC_CHARGES: the cubic charge diagonal contribution is checked to be numerically stable by switching the keyword to true.
  • DO_NONBONDED: add a generic correction potential to correct bond- or atomic-specific interactions

The additional keywords COULOMB_INTERACTION, COULOMB_LR and TB3_INTERACTION are for debugging purposes only and it is recommended to use the default options here.

Simple examples

GFN1-xTB ground-state energy for

Adding a generic correction potential

howto/gfn1xtb.1658226611.txt.gz · Last modified: 2022/07/19 10:30 by ahehn