18.1 Hyperfine Coupling Constant
One-component treatment: In a non-relativistic or scalar-relativistic framework [337], the HFC tensor is calculated with the mpshift module. The HFC tensor consists of the Fermi-contact (FC), the spin–dipole (SD), and the spin–orbital paramagnetic spin–orbit (PSOSO) contribution. The FC and SD term are directly computed from the SCF density matrix. The PSOSO term requires the first-order density matrix with respect to the electron spin. This is evaluated with a spin–orbit perturbation term and the coupled-perturbed Hartree–Fock or Kohn–Sham equations [85]. The FC and SD terms can also be computed with the (relaxed) density matrix of post-HF and post-KS approaches in rirpa, mpgrad, or ricc2 with the keyword $hfc, see [339]. Note that these modules do not reset the isotopes to the common ones for EPR spectroscopy. Here, this has to be done by the user in the control file (see below). Further, the PSOSO term is currently only available with HF and DFT in mpshift. The following spin–orbit perturbation operators are available: (Effective) Pauli operator, (modified) screened nuclear spin–orbit (mSNSO, SNSO), and spin–orbit mean-field (SOMF) ansatz. We recommend the SNSO Hamiltonian in non-relativistic calculations and the mSNSO Hamiltonian in scalar-relativistic X2C calculations. After the calculation, the HFC tensor is transformed to its principal axis system.
The general keywords for the mpshift module are as follows.
followed by hfc-only; HFC tensor is computed with the FC, SD, and PSOSO terms. Without any additional keywords, the one-electron Pauli spin–orbit operator is applied.
followed by hfc-only scalar; Only the FC and SD terms are computed.
followed by spin = real; Uses a user-defined spin of as a prefactor instead of the expectation value of \(\hat{S}_z\) calculated from the UHF/UKS occupation.
can be used to compute all EPR parameters in one run. Then, the
$pnmrsettings are ignored.The effective Pauli or SNSO/mSNSO terms are used for PSOSO. Available options for the additional keyword
$snsoparaare- snsopara 0
-
SNSO Hamiltonian [167]
- snsopara 1
- snsopara 2
-
Effective nuclear charges of [340], not available with X2C.
- snsopara 3
-
Effective nuclear charges of [341], not available with X2C.
- snsopara 4
-
Universal DC mSNSO Hamiltonian [190], only with X2C.
- snsopara 5
-
Universal DCB mSNSO Hamiltonian [190], only with X2C.
- snsopara 6
-
Row-dependent DCB mSNSO Hamiltonian [190], only with X2C.
- snsopara 7
With
snsopara 2effective nuclear charges for the elements B-F and Al-Cl are available. Withsnsopara 3effective nuclear charges for the elements Li-Ar are available. For H and He, the respective actual nuclear charges are used as the effective charges. If a compound contains elements for which no effective nuclear charges are available and which are not H or He, all elements in the compound are described with their actual nuclear charges. We recommendsnsopara 0for non-relativistic calculations andsnsopara 7for X2C calculations on heavier compounds. The SNSO parameters defined in the$relhamgroup overwrite the other SNSO options.followed by nuclear real-a coulomb real-b exchange real-c
The three parameters real a–c are used to scale the nuclear, two-electron Coulomb, and exchange contribution. Using 1.0 for all three parameters gives the standard expression for the SOMF ansatz (see e.g. [342]).
Note that only the keyword $pnmr or $epr is necessary, all SNSO and SOMF related keywords are optional. Using both SNSO and SOMF is possible but certainly not recommended. With X2C, the FC and SD terms are also printed separately when using the keyword $hfc_analysis. This option requires to use the point-charge model for the nuclear magnetic moments and the associated vector potential. For the scalar potential, the Gaussian-charge model can still be used. The difference to the total scalar-relativistic tensor is due to a purely relativistic term. Please see [343] for details with ZORA, which we have adapted to X2C.
The PSOSO term supports the current-dependent generalization of \(\tau\) [145, 321] for mGGAs and LHFs ($curswitchengage or $hfc_curswitchengage) and the HFC tensor is available for all functionals. The non-generalized kinetic energy density can be used with $curswitchdisengage or $hfc_curswitchdisengage. However, we strongly recommend the current-dependent formalism, which is also the default. Note that the one-component approach is generally sufficient for the isotropic HFC constant up to the 4d elements. For heavier elements, we recommend the two-component treatment.
Two-component treatment: This requires three independent two-component (2c) calculations with the spin magnetization vector aligned along the Cartesian axes. 2c calculations are started with the keyword $soghf. This should be done with converged one-component MOs as an initial guess. The spin magnetization is aligned along the axes using the keywords $sxeig, $syeig, and $szeig. Each spin direction then yields 3 tensor elements. The HFC contributions are calculated with converged spinors in ridft or mpshift. ridft requires the additional keyword $x2c_hfc and mpshift requires $pnmr hfc-only or $epr. The latter calculates all EPR parameters. We strongly recommend the DLU-X2C approach in combination with the mSNSO correction, see also Sec. 6.5. All functionals are supported [187, 145, 107]. Note that spin–orbit coupling induces a current density in the 2c ground-state calculations. So, mGGAs and LHFs formally need to be generalized to their current-dependent form already at the SCF level ($curswitchengage), i.e. a spin–orbit current density functional theory (CDFT) framework is necessary [43].
The complete two-component work flow is as follows:
Delete all previously inserted two-component keywords and the spinor files. Alternatively, set up a new directory from scratch. We need to start from UHF/UKS orbitals to align the spin.
Run a UHF/UKS calculation with the X2C or DLU-X2C Hamiltonian. The finite nucleus model is strongly recommended. Please make sure to use the proper grids for X2C and DFT (gridsize 3a etc.). Do not use gridsize m3 or m4.
Use hfcprep.sh to prepare your 2c input (see hfcprep.sh –h for more information; hfcprep.sh -msnso is recommended). The keyword
$nucselcan be used followed by the number of the nucleus of interest, e.g.,$nucsel 1,3,7. Alternatively, you can set the element, e.g.,$nucsel "c","h".Run the 2c SCF calculations in the directories x, y, and z.
ridftcomputes the HFC tensor components and stores the results in the control file. Additionally, you can run anmpshiftcalculation with$pnmr hfc-onlybased on the converged spinors of the 2cridftcalculation similar to the one-component work flow. The same holds for$eprandmpshift.Go to parent directory and call calchfc.py, which computes the HFC in its principal axis system based on the rank-2 tensor. This approach loses the sign information of the tensor. To recover it, we consider that the trace is the sum of the eigenvalues. Alternatively, you may use calchfc.py –s which yields the principal axis system based on a symmetrization, for which the sign information is retained. The outputs of the two methods can be compared to find the sign. Note that the approach based on the rank-2 tensor is more accurate than that based on the symmetrization.
Note that the FC, SD, and PSOSO terms are coupled in 2c, a decomposition of the total HFC tensor into the PSOSO and FC+SD+Rel terms is printed. Again using $hfc_analysis can be used to decouple the scalar terms into the FC, SD, and a purely relativistic (Rel) term based on ref. [343]. Note that terms involving the derivatives of the unitary X2C transformation are included in the Rel contribution for simplicity.
Furthermore, the HFC is sensitive towards the chosen basis sets. We recommend decontracted x2c-type basis sets or the x2c-QZVPall-2c basis set. The 2c extensions of the x2c-type basis sets are strongly recommended. Alternatively, the Dyall basis sets can be used in combination with the decontracted Dunning bases for the light elements [187].
Note that the effective spin is taken from a 1c calculation, so this work flow needs to be adapted manually if the spin multiplicity changes from the 1c to the 2c case. If the spin expectation value of the SCF density for the respective direction has a negative sign, ridft and mpshift automatically change the sign of the corresponding HFC tensor components.
In case of 2c SCF convergence issues with the spin alignment or non-orthogonal spin directions at the end of the three ridft runs, you may re-orientate the molecule so that the Cartesian axes become the principal axes of the 1c EPR tensors, see also Sec. 18.4.
Nuclear Constants: The nuclear spin and other constants such as the nuclear quadrupole moment can be set in the atoms data group of the control file, e.g.,
$atoms
basis =dyall-vdz
hg 1
ncisotope= your-isotope
nucquad= your-quadrupole-moment
nucspin= your-spin
This data group can be set in the atomic attributes section of define.