25.2.31 Keywords for Module mpshift
In order to control the program execution, you can use the following keywords within the control file:
$csmp2-
Switches on the calculation of the MP2 NMR shieldings. The required SCF shielding step will be performed in the same run. This flag will be set by the script
mp2prep. $traloopn-
specifies the number of loops (or ’passes’) over occupied orbitals n when doing an MP2 calculation: the more passes the smaller file space requirements—but CPU time will go up. This flag will be set by the script
mp2prep. $mointunit-
Scratch file settings for an MP2 calculation. Please refer to Section 25.2.22 for a description of the syntax. This flag will be set by the script
mp2prep. $shiftconvinteger-
Residuum convergence threshold for the solution of the CPHF equations. Default is 7.
$rpaconvinteger-
Residuum convergence threshold for the solution of the CPHF equations. Default is 7. Same as shiftconv but more general, i.e. also works for
escf. $maxcor-
Controls the memory usage for the batching part of the Davidson solver.
$oldcphf-
Uses the old CPHF solver, which was the default up to Version 7.4, the calculation can be restarted at any stage with this solver.
$csconvreal-
Sets the convergence threshold for the shielding constant of succeeding CPHF iterations. The unit is ppm and the default value is 0.01. Only used with the old solver.
$csconvatominteger-
This selects the atom number for convergence check after each cphf iteration. After this convergence is reached all other atoms are checked, too (default: 1). Only used with the old solver.
$thime,$thize,$scftol,$scfintunit,$scfmo-
have the save meaning as in
dscf(see Section 25.2.10);
Since mpshift works ’semi-direct’ it uses the same integral storage. - $scratch files
-
The scratch files allocated by mpshift can be placed anywhere in your file systems instead of the working directory by referencing their pathnames in this data group. All possible scratch files are listed in the following example:
$scratch files mpshift csssmat path1/file1 mpshift cshsmat path2/file2 mpshift csdgsmat path3/file3 mpshift csusmat path4/file4 mpshift dens path5/file5 mpshift fock path6/file6 mpshift dfock path7/file7 mpshift idvds1 path8/file8 mpshift idvds2 path9/file9 mpshift idvds3 path10/file10 mpshift jdvds1 path11/file11 mpshift jdvds2 path12/file12 mpshift jdvds3 path13/file13 mpshift cshmmat path14/file14 $trast,$trandtraloop-number-
stands for traloop start and traloop end. Each loop or pass in MP2 chemical shift calculations can be done individually by providing the keywords
$trastand$trand. This can be used to do a simple parallelization of the run:
Create separate inputs for each traloop. Add$trast <number> $trand <number>in the
controlfiles, number goes from 1 to the number of$traloops. Each calculation will create a restart file calledrestart.mpshift. To collect all steps and to do the remaining work, copy all restart files to one directory and rename them torestart.mpshift.number, add$trast -1and$trandnumber_of_traloops to thecontrolfile and startmpshift. $vcd-
\(U_{ai}^{B_{\beta}}\) will be written to file for a subsequent calculation of VCD rotational strengths by
aoforce. $nucsel-
Selection of nuclei whose NMR shielding tensor has to be computed. The nuclei can be specified by the element symbol (i.e.
$nucsel"c","h") or by the corresponding number as set by the coordinates (i.e.$nucsel1,3,5-8). Without setting$nucsel, the shielding tensors of all nuclei are calculated. You can reuse this keyword for nuclear spin-spin coupling constants. $csmaxiter-
Set the maximum number of CPHF iterations, default 30.
$nics-
Calculation of nucleus-independent chemical shifts. The coordinates have to be listed just as the molecular coordinates of the molecule. A sample input for NH\(_3\) would look like this:
$nics 0.00000000000000 0.00000000000000 0.12917062194577 1.75612466223131 0.00000000000000 -0.59831613718919 -0.87806233111566 1.52084856970468 -0.59831613718919 -0.87806233111566 -1.52084856970468 -0.59831613718919 0.00000000000000 0.00000000000000 0.00000000000000 $coord 0.00000000000000 0.00000000000000 0.12917062194577 n 1.75612466223131 0.00000000000000 -0.59831613718919 h -0.87806233111566 1.52084856970468 -0.59831613718919 h -0.87806233111566 -1.52084856970468 -0.59831613718919 h $gimic-
Prepare input for a GIMIC calcuation, see https://github.com/qmcurrents/gimic/. The density and the perturbed density matrix are written to disk. GIMIC allows to calculate the magnetically induced current density to estimate the degree of aromaticity and to study electron delocalization pathways.
$pnmroptions-
This keyword allows for the specification of options in open-shell calculations. By default, Fermi contact, spin dipole, and the paramagnetic spin–orbit interactions are included in the hyperfine part of the shielding tensor and the contributions are evaluated at 298K. The g-tensor is also calculated based on spin–orbit perturbation theory. In X2C, the proper picture-change correction is applied throughout. For systems with a spin \(S > 1/2\), the ZFS tensor can be calculated as well, but is not used for the evaluation of the shielding tensor. Available options are
- fc
-
Only Fermi contact term will be included in the hyperfine shielding
- sd
-
Only spin dipole term will be included in the hyperfine shielding
- psoso
-
Only spin–orbital paramagnetic spin–orbit term will be included in the hyperfine shielding
- none
-
All hyperfine contributions will be excluded and only the orbital contribution to the shielding tensor will be calculated. This option should be used if you are only interested in the ring current or the magnetically induced current density (GIMIC).
- hfc-only
-
Only the hyperfine coupling constant will be calculated, the orbital contribution to the shielding tensor is skipped and the g-tensor is not calculated.
- g-only
-
Only the g-tensor will be calculated, the orbital contribution to the shielding tensor is skipped and the hyperfine coupling tensor is not calculated.
- gelec
-
Use isotropic g-factor of the free electron instead of calculating the g-tensor.
- g=real
-
Use a specific isotropic g-factor instead of calculating the g-tensor.
- zfs
-
In addition to the default settings, the ZFS tensor is calculated, but is NOT considered for the calculation of the paramagnetic shift. The UNO approach is used for the SD contribution to the ZFS tensor.
- zfs-only
-
Only the ZFS tensor will be calculated, the orbital contribution is skipped, as well as the HFC and g-tensor.
- zfs-dip
-
Only the SD contribution to the ZFS tensor will be calculated.
- zfs-soc
-
Only the SO contribution to the ZFS tensor will be calculated.
- direct
-
Only in combination with zfs, zfs-only or zfs-dip. The direct approach for the SD contribution to the ZFS tensor is used.
The options fc, sd, and psoso can be combined with the option temp= integer/real. For example,
$pnmr fc temp=100includes only the Fermi contact term, evaluated at 100K, in the hyperfine shielding. Note that only temperatures above 10K are allowed. The terms included in the hyperfine part of the shielding and the temperature at which they were evaluated are stated in the output of
mpshift. We strongly recommend to use the current-dependent generalization for meta-GGAs and local hybrid functionals ($curswitchengage), especially for open-shell calculations [320, 145, 321].