## Hamiltonian

AdaptivelyCompressedExchange
Section: Hamiltonian
Type: logical
Default: false

(Experimental) If set to yes, Octopus will use the adaptively compressed exchange operator (ACE) for HF and hybrid calculations, as defined in Lin, J. Chem. Theory Comput. 2016, 12, 2242.

CalculateSelfInducedMagneticField
Section: Hamiltonian
Type: logical
Default: no

The existence of an electronic current implies the creation of a self-induced magnetic field, which may in turn back-react on the system. Of course, a fully consistent treatment of this kind of effect should be done in QED theory, but we will attempt a first approximation to the problem by considering the lowest-order relativistic terms plugged into the normal Hamiltonian equations (spin-other-orbit coupling terms, etc.). For the moment being, none of this is done, but a first step is taken by calculating the induced magnetic field of a system that has a current, by considering the magnetostatic approximation and Biot-Savart law:

$$\nabla^2 \vec{A} + 4\pi\alpha \vec{J} = 0$$

$$\vec{B} = \vec{\nabla} \times \vec{A}$$

If CalculateSelfInducedMagneticField is set to yes, this B field is calculated at the end of a gs calculation (nothing is done -- yet -- in the tdcase) and printed out, if the Output variable contains the potential keyword (the prefix of the output files is Bind).

ClassicalPotential
Section: Hamiltonian
Type: integer
Default: no

Whether and how to add to the external potential the potential generated by the classical charges read from block PDBClassical, for QM/MM calculations. Not available in periodic systems.
Options:

• no: No classical charges.
• point_charges: Classical charges are treated as point charges.
• gaussian_smeared: Classical charges are treated as Gaussian distributions. Smearing widths are hard-coded by species (experimental).

CurrentDensity
Section: Hamiltonian
Type: integer
Default: gradient_corrected

This variable selects the method used to calculate the current density. For the moment this variable is for development purposes and users should not need to use it.
Options:

• gradient: The calculation of current is done using the gradient operator. (Experimental)
• gradient_corrected: The calculation of current is done using the gradient operator with additional corrections for the total current from non-local operators.
• hamiltonian: The current density is obtained from the commutator of the Hamiltonian with the position operator. (Experimental)

EnablePhotons
Section: Hamiltonian
Type: logical
Default: no

This variable can be used to enable photons in several types of calculations. It can be used to activate the one-photon OEP formalism. In the case of CalculationMode = casida, it enables photon modes as described in ACS Photonics 2019, 6, 11, 2757-2778. Finally, if set to yes when solving the ferquency-dependent Sternheimer equation, the photons are coupled to the electronic subsystem.

EwaldAlpha
Section: Hamiltonian
Type: float
Default: 0.21

The value 'Alpha' that controls the splitting of the Coulomb interaction in the Ewald sum used to calculation the ion-ion interaction for periodic systems. This value affects the speed of the calculation, normally users do not need to modify it.

ExternalCurrent
Section: Hamiltonian
Type: logical
Default: no

If an external current density will be used.

FilterPotentials
Section: Hamiltonian
Type: integer
Default: filter_ts

Octopus can filter the pseudopotentials so that they no longer contain Fourier components larger than the mesh itself. This is very useful to decrease the egg-box effect, and so should be used in all instances where atoms move (e.g. geometry optimization, molecular dynamics, and vibrational modes).
Options:

• filter_none: Do not filter.
• filter_TS: The filter of M. Tafipolsky and R. Schmid, J. Chem. Phys. 124, 174102 (2006).
• filter_BSB: The filter of E. L. Briggs, D. J. Sullivan, and J. Bernholc, Phys. Rev. B 54, 14362 (1996).

ForceTotalEnforce
Section: Hamiltonian
Type: logical
Default: no

(Experimental) If this variable is set to "yes", then the sum of the total forces will be enforced to be zero.

GaugeFieldDelay
Section: Hamiltonian
Type: float
Default: 0.

The application of the gauge field acts as a probe of the system. For dynamical systems one can apply this probe with a delay relative to the start of the simulation.

GaugeFieldDynamics
Section: Hamiltonian
Type: integer
Default: polarization

This variable select the dynamics of the gauge field used to apply a finite electric field to periodic systems in time-dependent runs.
Options:

• none: The gauge field does not have dynamics. The induced polarization field is zero.
• polarization: The gauge field follows the dynamic described in Bertsch et al, Phys. Rev. B 62 7998 (2000).

GaugeFieldPropagate
Section: Hamiltonian
Type: logical
Default: no

Propagate the gauge field with initial condition set by GaugeVectorField or zero if not specified

GaugeVectorField
Section: Hamiltonian
Type: block

The gauge vector field is used to include a uniform (but time-dependent) external electric field in a time-dependent run for a periodic system. An optional second row specifies the initial value for the time derivative of the gauge field (which is set to zero by default). By default this field is not included. If KPointsUseSymmetries = yes, then SymmetryBreakDir must be set in the same direction. This is used with utility oct-dielectric_function according to GF Bertsch, J-I Iwata, A Rubio, and K Yabana, Phys. Rev. B 62, 7998-8002 (2000).

GyromagneticRatio
Section: Hamiltonian
Type: float
Default: 2.0023193043768

The gyromagnetic ratio of the electron. This is of course a physical constant, and the default value is the exact one that you should not touch, unless: (i) You want to disconnect the anomalous Zeeman term in the Hamiltonian (then set it to zero; this number only affects that term); (ii) You are using an effective Hamiltonian, as is the case when you calculate a 2D electron gas, in which case you have an effective gyromagnetic factor that depends on the material.

MassScaling
Section: Hamiltonian
Type: block

Scaling factor for anisotropic masses (different masses along each geometric direction).

%MassScaling
1.0 | 1800.0 | 1800.0
%

would fix the mass of the particles to be 1800 along the y and z directions. This can be useful, e.g., to simulate 3 particles in 1D, in this case an electron and 2 protons.

MaxwellHamiltonianOperator
Section: Hamiltonian
Type: integer
Default: faraday_ampere

With this variable the the Maxwell Hamiltonian operator can be selected
Options:

• faraday_ampere_old: old version
• faraday_ampere: The propagation operation in vacuum with Spin 1 matrices without Gauss law condition.
• faraday_ampere_medium: The propagation operation in medium with Spin 1 matrices without Gauss law condition
• faraday_ampere_gauss: The propagation operation is done by 4x4 matrices also with Gauss laws constraint.
• faraday_ampere_gauss_medium: The propagation operation is done by 4x4 matrices also with Gauss laws constraint in medium

MaxwellMediumCalculation
Section: Hamiltonian
Type: integer
Default: RS

For linear media the calculation of the Maxwell Operator acting on the RS state can be done directly using the Riemann-Silberstein representation or by calculating the curl of the electric and magnetic fields.
Options:

• RS: Medium calculation directly via Hamiltonian
• EM: Medium calculation via curl of electric field and magnetic field

ParticleMass
Section: Hamiltonian
Type: float
Default: 1.0

It is possible to make calculations for a particle with a mass different from one (atomic unit of mass, or mass of the electron). This is useful to describe non-electronic systems, or for esoteric purposes.

RashbaSpinOrbitCoupling
Section: Hamiltonian
Type: float
Default: 0.0

(Experimental.) For systems described in 2D (electrons confined to 2D in semiconductor structures), one may add the Bychkov-Rashba spin-orbit coupling term [Bychkov and Rashba, J. Phys. C: Solid State Phys. 17, 6031 (1984)]. This variable determines the strength of this perturbation, and has dimensions of energy times length.

RelativisticCorrection
Section: Hamiltonian
Type: integer
Default: non_relativistic

The default value means that no relativistic correction is used. To include spin-orbit coupling turn RelativisticCorrection to spin_orbit (this will only work if SpinComponents has been set to non_collinear, which ensures the use of spinors).
Options:

• non_relativistic: No relativistic corrections.
• spin_orbit: Spin-orbit.

RiemannSilbersteinSign
Section: Hamiltonian
Type: integer
Default: plus

Sign for the imaginary part of the Riemann Silberstein vector which represents the magnetic field
Options:

• minus: Riemann Silberstein sign is minus
• plus: Riemann Silberstein sign is plus

SOStrength
Section: Hamiltonian
Type: float
Default: 1.0

Tuning of the spin-orbit coupling strength: setting this value to zero turns off spin-orbit terms in the Hamiltonian, and setting it to one corresponds to full spin-orbit.

StaticElectricField
Section: Hamiltonian
Type: block
Default: 0

A static constant electric field may be added to the usual Hamiltonian, by setting the block StaticElectricField. The three possible components of the block (which should only have one line) are the three components of the electric field vector. It can be applied in a periodic direction of a large supercell via the single-point Berry phase.

StaticMagneticField
Section: Hamiltonian
Type: block

A static constant magnetic field may be added to the usual Hamiltonian, by setting the block StaticMagneticField. The three possible components of the block (which should only have one line) are the three components of the magnetic field vector. Note that if you are running the code in 1D mode, this will not work, and if you are running the code in 2D mode the magnetic field will have to be in the z-direction, so that the first two columns should be zero. Possible in periodic system only in these cases: 2D system, 1D periodic, with StaticMagneticField2DGauge = linear_y; 3D system, 1D periodic, field is zero in y- and z-directions (given currently implemented gauges).

The magnetic field should always be entered in atomic units, regardless of the Units variable. Note that we use the "Gaussian" system meaning 1 au[B] = $$1.7152553 \times 10^7$$ Gauss, which corresponds to $$1.7152553 \times 10^3$$ Tesla.

StaticMagneticField2DGauge
Section: Hamiltonian
Type: integer
Default: linear_xy

The gauge of the static vector potential $$A$$ when a magnetic field $$B = \left( 0, 0, B_z \right)$$ is applied to a 2D-system.
Options:

• linear_xy: Linear gauge with $$A = \frac{1}{2c} \left( -y, x \right) B_z$$. (Cannot be used for periodic systems.)
• linear_y: Linear gauge with $$A = \frac{1}{c} \left( -y, 0 \right) B_z$$. Can be used for PeriodicDimensions = 1 but not PeriodicDimensions = 2.

TheoryLevel
Section: Hamiltonian
Type: integer

The calculations can be run with different "theory levels" that control how electrons are simulated. The default is dft. When hybrid functionals are requested, through the XCFunctional variable, the default is hartree_fock.
Options:

• hartree: Calculation within the Hartree method (experimental). Note that, contrary to popular belief, the Hartree potential is self-interaction-free. Therefore, this run mode will not yield the same result as kohn-sham without exchange-correlation.
• independent_particles: Particles will be considered as independent, i.e. as non-interacting. This mode is mainly used for testing purposes, as the code is usually much faster with independent_particles.
• hartree_fock: This is the traditional Hartree-Fock scheme. Like the Hartree scheme, it is fully self-interaction-free.
• kohn_sham: This is the default density-functional theory scheme. Note that you can also use hybrid functionals in this scheme, but they will be handled the "DFT" way, i.e., solving the OEP equation.
• generalized_kohn_sham: This is similar to the kohn-sham scheme, except that this allows for nonlocal operators. This is the default mode to run hybrid functionals, meta-GGA functionals, or DFT+U. It can be more convenient to use kohn-sham DFT within the OEP scheme to get similar (but not the same) results. Note that within this scheme you can use a correlation functional, or a hybrid functional (see XCFunctional). In the latter case, you will be following the quantum-chemistry recipe to use hybrids.
• rdmft: (Experimental) Reduced Density Matrix functional theory.

TimeZero
Section: Hamiltonian
Type: logical
Default: no

(Experimental) If set to yes, the ground state and other time dependent calculation will assume that they are done at time zero, so that all time depedent field at that time will be included.

## Hamiltonian::DFT+U

ACBN0IntersiteCutoff
Section: Hamiltonian::DFT+U
Type: float

The cutoff radius defining the maximal intersite distance considered. Only available with ACBN0 functional with intersite interaction.

ACBN0IntersiteInteraction
Section: Hamiltonian::DFT+U
Type: logical
Default: no

If set to yes, Octopus will determine the effective intersite interaction V Only available with ACBN0 functional. It is strongly recommended to set AOLoewdin=yes when using the option.

ACBN0RotationallyInvariant
Section: Hamiltonian::DFT+U
Type: logical

If set to yes, Octopus will use for U and J a formula which is rotationally invariant. This is different from the original formula for U and J. This is activated by default, except in the case of spinors, as this is not yet implemented in this case.

ACBN0Screening
Section: Hamiltonian::DFT+U
Type: float
Default: 1.0

If set to 0, no screening will be included in the ACBN0 functional, and the U will be estimated from bare Hartree-Fock. If set to 1 (default), the full screening of the U, as defined in the ACBN0 functional, is used.

DFTUBasisFromStates
Section: Hamiltonian::DFT+U
Type: logical
Default: no

If set to yes, Octopus will construct the localized basis from user-defined states. The states are taken at the Gamma point (or the first k-point of the states in the restart_proj folder. The states are defined via the block DFTUBasisStates

DFTUBasisStates
Section: Hamiltonian::DFT+U
Type: block
Default: none

Each line of this block contains the index of a state to be used to construct the localized basis. See DFTUBasisFromStates for details.

DFTUDoubleCounting
Section: Hamiltonian::DFT+U
Type: integer
Default: dft_u_fll

This variable selects which DFT+U double counting term is used.
Options:

• dft_u_fll: (Default) The Fully Localized Limit (FLL)
• dft_u_amf: (Experimental) Around mean field double counting, as defined in PRB 44, 943 (1991) and PRB 49, 14211 (1994).

DFTUPoissonSolver
Section: Hamiltonian::DFT+U
Type: integer

This variable selects which Poisson solver is used to compute the Coulomb integrals over a submesh. These are non-periodic Poisson solvers. If the domain parallelization is activated, the default is the direct sum. Otherwise, the FFT Poisson solver is used by default.

Options:

• dft_u_poisson_direct: (Default) Direct Poisson solver. Slow.
• dft_u_poisson_isf: (Experimental) ISF Poisson solver on a submesh. This does not work for non-orthogonal cells nor domain parallelization.
• dft_u_poisson_psolver: (Experimental) PSolver Poisson solver on a submesh. This does not work for non-orthogonal cells nor domain parallelization. Requires the PSolver external library.
• dft_u_poisson_fft: FFT Poisson solver on a submesh. This uses the 0D periodic version of the FFT kernels. This is not implemented for domain parallelization.

SkipSOrbitals
Section: Hamiltonian::DFT+U
Type: logical
Default: no

If set to yes, Octopus will determine the effective U for all atomic orbitals from the peusopotential but s orbitals. Only available with ACBN0 functional.

UseAllAtomicOrbitals
Section: Hamiltonian::DFT+U
Type: logical
Default: no

If set to yes, Octopus will determine the effective U for all atomic orbitals from the peusopotential. Only available with ACBN0 functional. It is strongly recommended to set AOLoewdin=yes when using the option.

## Hamiltonian::PCM

PCMCalcMethod
Section: Hamiltonian::PCM
Type: integer
Default: pcm_direct

Defines the method to be used to obtain the PCM potential.
Options:

• pcm_direct: Direct sum of the potential generated by the polarization charges regularized with a Gaussian smearing [A. Delgado, et al., J Chem Phys 143, 144111 (2015)].
• pcm_poisson: Solving the Poisson equation for the polarization charge density.

PCMCalculation
Section: Hamiltonian::PCM
Type: logical
Default: no

If true, the calculation is performed accounting for solvation effects by using the Integral Equation Formalism Polarizable Continuum Model IEF-PCM formulated in real-space and real-time (J. Chem. Phys. 143, 144111 (2015), Chem. Rev. 105, 2999 (2005), J. Chem. Phys. 139, 024105 (2013)). At the moment, this option is available only for TheoryLevel = DFT. PCM is tested for CalculationMode = gs, while still experimental for other values (in particular, CalculationMode = td).

PCMCavity
Section: Hamiltonian::PCM
Type: string

Name of the file containing the geometry of the cavity hosting the solute molecule. The data must be in atomic units and the file must contain the following information sequentially: T < Number of tesserae s_x(1:T) < coordinates x of the tesserae s_y(1:T) < coordinates y of the tesserae s_z(1:T) < coordinates z of the tesserae A(1:T) < areas of the tesserae R_sph(1:T) < Radii of the spheres to which the tesserae belong normal(1:T,1:3) < Outgoing unitary vectors at the tesserae surfaces

PCMChargeSmearNN
Section: Hamiltonian::PCM
Type: integer
Default: 2 * max_area * PCMSmearingFactor

Defines the number of nearest neighbor mesh-points to be taken around each cavity tessera in order to smear the charge when PCMCalcMethod = pcm_poisson. Setting PCMChargeSmearNN = 1 means first nearest neighbors, PCMChargeSmearNN = 2 second nearest neighbors, and so on. The default value is such that the neighbor mesh contains points in a radius equal to the width used for the gaussian smearing.

PCMDebyeRelaxTime
Section: Hamiltonian::PCM
Type: float
Default: 0.0

Relaxation time of the solvent within Debye model ($$\tau$$). Recall Debye dieletric function: $$\varepsilon(\omega)=\varepsilon_d+\frac{\varepsilon_0-\varepsilon_d}{1-i\omega\tau}$$

PCMDrudeLDamping
Section: Hamiltonian::PCM
Type: float
Default: 0.0

Damping factor of the solvent charges oscillations within Drude-Lorentz model ($$\gamma$$). Recall Drude-Lorentz dielectric function: $$\varepsilon(\omega)=1+\frac{A}{\omega_0^2-\omega^2+i\gamma\omega}$$

PCMDrudeLOmega
Section: Hamiltonian::PCM
Type: float
Default: $$\sqrt{1/(\varepsilon_0-1)}$$

Resonance frequency of the solvent within Drude-Lorentz model ($$\omega_0$$). Recall Drude-Lorentz dielectric function: $$\varepsilon(\omega)=1+\frac{A}{\omega_0^2-\omega^2+i\gamma\omega}$$ Default values of $$\omega_0$$ guarantee to recover static dielectric constant.

PCMDynamicEpsilon
Section: Hamiltonian::PCM
Type: float
Default: PCMStaticEpsilon

High-frequency dielectric constant of the solvent ($$\varepsilon_d$$). $$\varepsilon_d=\varepsilon_0$$ indicate equilibrium with solvent.

PCMEoMInitialCharges
Section: Hamiltonian::PCM
Type: integer
Default: 0

If =0 the propagation of the solvent polarization charges starts from internally generated initial charges in equilibrium with the initial potential. For Debye EOM-PCM, if >0 the propagation of the solvent polarization charges starts from initial charges from input file. if =1, initial pol. charges due to solute electrons are read from input file. else if =2, initial pol. charges due to external potential are read from input file. else if =3, initial pol. charges due to solute electrons and external potential are read from input file. Files should be located in pcm directory and are called ASC_e.dat and ASC_ext.dat, respectively. The latter files are generated after any PCM run and contain the last values of the polarization charges.

PCMEpsilonModel
Section: Hamiltonian::PCM
Type: integer
Default: pcm_debye

Define the dielectric function model.
Options:

• pcm_debye: Debye model: $$\varepsilon(\omega)=\varepsilon_d+\frac{\varepsilon_0-\varepsilon_d}{1-i\omega\tau}$$
• pcm_drude: Drude-Lorentz model: $$\varepsilon(\omega)=1+\frac{A}{\omega_0^2-\omega^2+i\gamma\omega}$$

PCMGamessBenchmark
Section: Hamiltonian::PCM
Type: logical
Default: .false.

If PCMGamessBenchmark is set to "yes", the pcm_matrix is also written in a Gamess format. for benchamarking purposes.

PCMKick
Section: Hamiltonian::PCM
Type: logical
Default: no

This variable controls the effect the kick has on the polarization of the solvent. If .true. ONLY the FAST degrees-of-freedom of the solvent follow the kick. The potential due to polarization charges behaves as another kick, i.e., it is a delta-perturbation. If .false. ALL degrees-of-freedom of the solvent follow the kick. The potential due to polarization charges evolves following an equation of motion. When Debye dielectric model is used, just a part of the potential behaves as another kick.

PCMLocalField
Section: Hamiltonian::PCM
Type: logical
Default: no

This variable is a flag for including local field effects when an external field is applied. The total field interacting with the molecule (also known as cavity field) is not the bare field in the solvent (the so-called Maxwell field), but it also include a contribution due to the polarization of the solvent. The latter is calculated here within the PCM framework. See [G. Gil, et al., J. Chem. Theory Comput., 2019, 15 (4), pp 2306–2319].

PCMQtotTol
Section: Hamiltonian::PCM
Type: float
Default: 0.5

If PCMRenormCharges=.true. and $$\delta Q = |[\sum_i q_i| - ((\epsilon-1)/\epsilon)*|Q_M]|>PCMQtotTol$$ the polarization charges will be normalized as $$q_i^\prime=q_i + signfunction(e, n, \delta Q) (q_i/q_{tot})*\delta Q$$ with $$q_{tot} = \sum_i q_i$$. For values of $$\delta Q > 0.5$$ (printed by the code in the file pcm/pcm_info.out) even, if polarization charges are renormalized, the calculated results might be inaccurate or erroneous.

PCMRadiusScaling
Section: Hamiltonian::PCM
Type: float

Scales the radii of the spheres used to build the solute cavity surface. The default value depends on the choice of PCMVdWRadii: 1.2 for pcm_vdw_optimized and 1.0 for pcm_vdw_species.

PCMRenormCharges
Section: Hamiltonian::PCM
Type: logical
Default: .false.

If .true. renormalization of the polarization charges is performed to enforce fulfillment of the Gauss law, $$\sum_i q_i^{e/n} = -[(\epsilon-1)/\epsilon] Q_M^{e/n}$$ where $$q_i^{e/n}$$ are the polarization charges induced by the electrons/nuclei of the molecule and $$Q_M^{e/n}$$ is the nominal electronic/nuclear charge of the system. This can be needed to treat molecules in weakly polar solvents.

PCMSmearingFactor
Section: Hamiltonian::PCM
Type: float
Default: 1.0

Parameter used to control the width (area of each tessera) of the Gaussians used to distribute the polarization charges on each tessera (arXiv:1507.05471). If set to zero, the solvent reaction potential in real-space is defined by using point charges.

PCMSolute
Section: Hamiltonian::PCM
Type: logical
Default: yes

This variable is a flag for including polarization effects of the solvent due to the solute. (Useful for analysis) When external fields are applied, turning off the solvent-molecule interaction (PCMSolute=no) and activating the solvent polarization due to the applied field (PCMLocalField=yes) allows to include only local field effects.

PCMSpheresOnH
Section: Hamiltonian::PCM
Type: logical
Default: no

If true, spheres centered at the Hydrogens atoms are included to build the solute cavity surface.

PCMStaticEpsilon
Section: Hamiltonian::PCM
Type: float
Default: 1.0

Static dielectric constant of the solvent ($$\varepsilon_0$$). 1.0 indicates gas phase.

PCMTDLevel
Section: Hamiltonian::PCM
Type: integer
Default: eq

When CalculationMode=td, PCMTDLevel it sets the way the time-depenendent solvent polarization is propagated.
Options:

• eq: If PCMTDLevel=eq, the solvent is always in equilibrium with the solute or the external field, i.e., the solvent polarization follows instantaneously the changes in solute density or in the external field. PCMTDLevel=neq and PCMTDLevel=eom are both nonequilibrium runs.
• neq: If PCMTDLevel=neq, solvent polarization charges are splitted in two terms: one that follows instantaneously the changes in the solute density or in the external field (dynamical polarization charges), and another that lag behind in the evolution w.r.t. the solute density or the external field (inertial polarization charges).
• eom: If PCMTDLevel=eom, solvent polarization charges evolves following an equation of motion, generalizing 'neq' propagation. The equation of motion used here depends on the value of PCMEpsilonModel.

PCMTessMinDistance
Section: Hamiltonian::PCM
Type: float
Default: 0.1

Minimum distance between tesserae. Any two tesserae having smaller distance in the starting tesselation will be merged together.

PCMTessSubdivider
Section: Hamiltonian::PCM
Type: integer
Default: 1

Allows to subdivide further each tessera refining the discretization of the cavity tesselation. Can take only two values, 1 or 4. 1 corresponds to 60 tesserae per sphere, while 4 corresponds to 240 tesserae per sphere.

PCMUpdateIter
Section: Hamiltonian::PCM
Type: integer
Default: 1

Defines how often the PCM potential is updated during time propagation.

PCMVdWRadii
Section: Hamiltonian::PCM
Type: integer
Default: pcm_vdw_optimized

This variable selects which van der Waals radius will be used to generate the solvent cavity.
Options:

• pcm_vdw_optimized: Use the van der Waals radius optimized by Stefan Grimme in J. Comput. Chem. 27: 1787-1799, 2006, except for C, N and O, reported in J. Chem. Phys. 120, 3893 (2004).
• pcm_vdw_species: The vdW radii are set from the share/pseudopotentials/elements file. These values are obtained from Alvarez S., Dalton Trans., 2013, 42, 8617-8636. Values can be changed in the Species block.

## Hamiltonian::Poisson

AlphaFMM
Section: Hamiltonian::Poisson
Type: float
Default: 0.291262136

Dimensionless parameter for the correction of the self-interaction of the electrostatic Hartree potential, when using PoissonSolver = FMM.

Octopus represents charge density on a real-space grid, each point containing a value $$\rho$$ corresponding to the charge density in the cell centered in such point. Therefore, the integral for the Hartree potential at point $$i$$, $$V_H(i)$$, can be reduced to a summation:

$$V_H(i) = \frac{\Omega}{4\pi\varepsilon_0} \sum_{i \neq j} \frac{\rho(\vec{r}(j))}{|\vec{r}(j) - \vec{r}(i)|} + V_{self.int.}(i)$$ where $$\Omega$$ is the volume element of the mesh, and $$\vec{r}(j)$$ is the position of the point $$j$$. The $$V_{self.int.}(i)$$ corresponds to the integral over the cell centered on the point $$i$$ that is necessary to calculate the Hartree potential at point $$i$$:

$$V_{self.int.}(i)=\frac{1}{4\pi\varepsilon_0} \int_{\Omega(i)}d\vec{r} \frac{\rho(\vec{r}(i))}{|\vec{r}-\vec{r}(i)|}$$

In the FMM version implemented into Octopus, a correction method for $$V_H(i)$$ is used (see García-Risueño et al., J. Comp. Chem. 35, 427 (2014)). This method defines cells neighbouring cell $$i$$, which have volume $$\Omega(i)/8$$ (in 3D) and charge density obtained by interpolation. In the calculation of $$V_H(i)$$, in order to avoid double counting of charge, and to cancel part of the errors arising from considering the distances constant in the summation above, a term $$-\alpha_{FMM}V_{self.int.}(i)$$ is added to the summation (see the paper for the explicit formulae).

DeltaEFMM
Section: Hamiltonian::Poisson
Type: float
Default: 0.0001

Dimensionless parameter for relative convergence of PoissonSolver = FMM. Sets energy error bound. Strong inhomogeneous systems may violate the error bound. For inhomogeneous systems we have an error-controlled sequential version available (from Ivo Kabadshow).

Our implementation of FMM (based on H. Dachsel, J. Chem. Phys. 131, 244102 (2009)) can keep the error of the Hartree energy below an arbitrary bound. The quotient of the value chosen for the maximum error in the Hartree energy and the value of the Hartree energy is DeltaEFMM.

DressedOrbitals
Section: Hamiltonian::Poisson
Type: logical
Default: false

Allows for the calculation of coupled elecron-photon problems by applying the dressed orbital approach. Details can be found in https://arxiv.org/abs/1812.05562 At the moment, N electrons in d (<=3) spatial dimensions, coupled to one photon mode can be described. The photon mode is included by raising the orbital dimension to d+1 and changing the particle interaction kernel and the local potential, where the former is included automatically, but the latter needs to by added by hand as a user_defined_potential! Coordinate 1-d: electron; coordinate d+1: photon.

Poisson1DSoftCoulombParam
Section: Hamiltonian::Poisson
Type: float
Default: 1.0 bohr

When Dimensions = 1, to prevent divergence, the Coulomb interaction treated by the Poisson solver is not $$1/r$$ but $$1/\sqrt{a^2 + r^2}$$, where this variable sets the value of $$a$$.

PoissonCutoffRadius
Section: Hamiltonian::Poisson
Type: float

When PoissonSolver = fft and PoissonFFTKernel is neither multipole_corrections nor fft_nocut, this variable controls the distance after which the electron-electron interaction goes to zero. A warning will be written if the value is too large and will cause spurious interactions between images. The default is half of the FFT box max dimension in a finite direction.

PoissonFFTKernel
Section: Hamiltonian::Poisson
Type: integer

Defines which kernel is used to impose the correct boundary conditions when using FFTs to solve the Poisson equation. The default is selected depending on the dimensionality and periodicity of the system:
In 1D, spherical if finite, fft_nocut if periodic.
In 2D, spherical if finite, cylindrical if 1D-periodic, fft_nocut if 2D-periodic.
In 3D, spherical if finite, cylindrical if 1D-periodic, planar if 2D-periodic, fft_nocut if 3D-periodic. See C. A. Rozzi et al., Phys. Rev. B 73, 205119 (2006) for 3D implementation and A. Castro et al., Phys. Rev. B 80, 033102 (2009) for 2D implementation.
Options:

• spherical: FFTs using spherical cutoff (in 2D or 3D).
• cylindrical: FFTs using cylindrical cutoff (in 2D or 3D).
• planar: FFTs using planar cutoff (in 3D).
• fft_nocut: FFTs without using a cutoff (for fully periodic systems).
• multipole_correction: The boundary conditions are imposed by using a multipole expansion. Only appropriate for finite systems. Further specification occurs with variables PoissonSolverBoundaries and PoissonSolverMaxMultipole.

PoissonSolver
Section: Hamiltonian::Poisson
Type: integer

Defines which method to use to solve the Poisson equation. Some incompatibilities apply depending on dimensionality, periodicity, etc. For a comparison of the accuracy and performance of the methods in Octopus, see P Garcia-Risueño, J Alberdi-Rodriguez et al., J. Comp. Chem. 35, 427-444 (2014) or arXiV. Defaults:
1D and 2D: fft.
3D: cg_corrected if curvilinear, isf if not periodic, fft if periodic.
Dressed orbitals: direct_sum.
Options:

• direct_sum: Direct evaluation of the Hartree potential (only for finite systems).
• FMM: (Experimental) Fast multipole method. Requires FMM library.
• NoPoisson: Do not use a Poisson solver at all.
• fft: The Poisson equation is solved using FFTs. A cutoff technique for the Poisson kernel is selected so the proper boundary conditions are imposed according to the periodicity of the system. This can be overridden by the PoissonFFTKernel variable. To choose the FFT library use FFTLibrary
• psolver: Solver based on Interpolating Scaling Functions as implemented in the PSolver library. Parallelization in k-points requires PoissonSolverPSolverParallelData = no. Requires the PSolver external library.
• poke: (Experimental) Solver from the Poke library.
• cg: Conjugate gradients (only for finite systems).
• cg_corrected: Conjugate gradients, corrected for boundary conditions (only for finite systems).
• multigrid: Multigrid method (only for finite systems).
• isf: Interpolating Scaling Functions Poisson solver (only for finite systems).

PoissonSolverBoundaries
Section: Hamiltonian::Poisson
Type: integer
Default: multipole

For finite systems, some Poisson solvers (multigrid, cg_corrected, and fft with PoissonFFTKernel = multipole_correction) require the calculation of the boundary conditions with an auxiliary method. This variable selects that method.
Options:

• multipole: A multipole expansion of the density is used to approximate the potential on the boundaries.
• exact: An exact integration of the Poisson equation is done over the boundaries. This option is experimental, and not implemented for domain parallelization.

PoissonSolverMaxIter
Section: Hamiltonian::Poisson
Type: integer
Default: 500

The maximum number of iterations for conjugate-gradient Poisson solvers.

PoissonSolverMaxMultipole
Section: Hamiltonian::Poisson
Type: integer

Order of the multipolar expansion for boundary corrections.

The Poisson solvers multigrid, cg, and cg_corrected (and fft with PoissonFFTKernel = multipole_correction) do a multipolar expansion of the given charge density, such that $$\rho = \rho_{multip.expansion}+\Delta \rho$$. The Hartree potential due to the $$\rho_{multip.expansion}$$ is calculated analytically, while the Hartree potential due to $$\Delta \rho$$ is calculated with either a multigrid or cg solver. The order of the multipolar expansion is set by this variable.

Default is 4 for PoissonSolver = cg_corrected and multigrid, and 2 for fft with PoissonFFTKernel = multipole_correction.

PoissonSolverNodes
Section: Hamiltonian::Poisson
Type: integer
Default: 0

How many nodes to use to solve the Poisson equation. A value of 0, the default, implies that all available nodes are used.

PoissonSolverThreshold
Section: Hamiltonian::Poisson
Type: float
Default: 1e-6

The tolerance for the Poisson solution, used by the cg, cg_corrected, and multigrid solvers.

PoissonTestPeriodicThreshold
Section: Hamiltonian::Poisson
Type: float
Default: 1e-5

This threshold determines the accuracy of the periodic copies of the Gaussian charge distribution that are taken into account when computing the analytical solution for periodic systems. Be aware that the default leads to good results for systems that are periodic in 1D - for 3D it is very costly because of the large number of copies needed.

## Hamiltonian::Poisson::Multigrid

PoissonSolverMGMaxCycles
Section: Hamiltonian::Poisson::Multigrid
Type: integer
Default: 60

Maximum number of multigrid cycles that are performed if convergence is not achieved.

PoissonSolverMGPostsmoothingSteps
Section: Hamiltonian::Poisson::Multigrid
Type: integer
Default: 4

Number of Gauss-Seidel smoothing steps after coarse-level correction in the multigrid Poisson solver.

PoissonSolverMGPresmoothingSteps
Section: Hamiltonian::Poisson::Multigrid
Type: integer
Default: 1

Number of Gauss-Seidel smoothing steps before coarse-level correction in the multigrid Poisson solver.

PoissonSolverMGRelaxationFactor
Section: Hamiltonian::Poisson::Multigrid
Type: float

Relaxation factor of the relaxation operator used for the multigrid method. This is mainly for debugging, since overrelaxation does not help in a multigrid scheme. The default is 1.0, except 0.6666 for the gauss_jacobi method.

PoissonSolverMGRelaxationMethod
Section: Hamiltonian::Poisson::Multigrid
Type: integer

Method used to solve the linear system approximately in each grid for the multigrid procedure that solves Poisson equation. Default is gauss_seidel, unless curvilinear coordinates are used, in which case the default is gauss_jacobi.
Options:

• gauss_seidel: Gauss-Seidel.
• gauss_jacobi: Gauss-Jacobi.
• gauss_jacobi2: Alternative implementation of Gauss-Jacobi.

PoissonSolverMGRestrictionMethod
Section: Hamiltonian::Poisson::Multigrid
Type: integer
Default: fullweight

Method used from fine-to-coarse grid transfer.
Options:

• injection: Injection
• fullweight: Fullweight restriction

## Hamiltonian::Poisson::PSolver

PoissonSolverPSolverParallelData
Section: Hamiltonian::Poisson::PSolver
Type: logical
Default: yes

Indicates whether data is partitioned within the PSolver library. If data is distributed among processes, Octopus uses parallel data-structures and, thus, less memory. If "yes", data is parallelized. The z-axis of the input vector is split among the MPI processes. If "no", entire input and output vector is saved in all the MPI processes. If k-points parallelization is used, "no" must be selected.

## Hamiltonian::XC

DFTULevel
Section: Hamiltonian::XC
Type: integer
Default: no

This variable selects which DFT+U expression is added to the Hamiltonian.
Options:

• dft_u_none: No +U term is not applied.
• dft_u_empirical: An empiricial Hubbard U is added on the orbitals specified in the block species with hubbard_l and hubbard_u
• dft_u_acbn0: Octopus determines the effective U term using the ACBN0 functional as defined in PRX 5, 011006 (2015)

HFSingularity
Section: Hamiltonian::XC
Type: integer
Default: general

(Experimental) This variable selects the method used for the treatment of the singularity of the Coulomb potential in Hatree-Fock and hybrid-functional DFT calculations. This shoulbe be only applied for periodic systems and is only used for FFT kernels of the Poisson solvers.
Options:

• none: The singularity is replaced by zero.
• general: The general treatment of the singularity, as described in Carrier et al, PRB 75 205126 (2007). This is the default option
• fcc: The treatment of the singulariy as described in Gygi and Baldereschi, PRB 34, 4405 (1986). This is formaly valid for cubic systems only.
• spherical_bz: The divergence in q=0 is treated analytically assuming a spherical Brillouin zone

HFSingularityNk
Section: Hamiltonian::XC
Type: integer
Default: 60

Number of k-point used (total number of k-points) is (2*Nk+1)^3) in the numerical integration of the auxiliary function f(q). See PRB 75, 205126 (2007) for more details. Only for HFSingularity=general.

HFSingularityNsteps
Section: Hamiltonian::XC
Type: integer
Default: 7

Number of grid refinement steps in the numerical integration of the auxiliary function f(q). See PRB 75, 205126 (2007) for more details. Only for HFSingularity=general.

Interaction1D
Section: Hamiltonian::XC
Type: integer
Default: interaction_soft_coulomb

When running in 1D, one has to soften the Coulomb interaction. This softening is not unique, and several possibilities exist in the literature.
Options:

• interaction_exp_screened: Exponentially screened Coulomb interaction. See, e.g., M Casula, S Sorella, and G Senatore, Phys. Rev. B 74, 245427 (2006).
• interaction_soft_coulomb: Soft Coulomb interaction of the form $$1/\sqrt{x^2 + \alpha^2}$$.

Interaction1DScreening
Section: Hamiltonian::XC
Type: float
Default: 1.0

Defines the screening parameter $$\alpha$$ of the softened Coulomb interaction when running in 1D.

KLIPhotonCOC
Section: Hamiltonian::XC
Type: logical
Default: .false.

Activate the center of charge translation of the electric dipole operator which should avoid the dependence of the photon KLI on an permanent dipole.

OEPLevel
Section: Hamiltonian::XC
Type: integer
Default: oep_kli

At what level shall Octopus handle the optimized effective potential (OEP) equation.
Options:

• oep_none: Do not solve OEP equation.
• oep_kli: Krieger-Li-Iafrate (KLI) approximation. For spinors, the iterative solution is controlled by the variables in section Linear Response::Solver, and the default for LRMaximumIter is set to 50. Ref: JB Krieger, Y Li, GJ Iafrate, Phys. Lett. A 146, 256 (1990).
• oep_full: (Experimental) Full solution of OEP equation using the Sternheimer approach. The linear solver will be controlled by the variables in section Linear Response::Solver, and the iterations for OEP by Linear Response::SCF in LR calculations and variable OEPMixing. Note that default for LRMaximumIter is set to 10. Ref: S. Kuemmel and J. Perdew, Phys. Rev. Lett. 90, 043004 (2003).

OEPMixing
Section: Hamiltonian::XC
Type: float
Default: 1.0

The linear mixing factor used to solve the Sternheimer equation in the full OEP procedure.

OEPMixingScheme
Section: Hamiltonian::XC
Type: integer
Default: 1.0

PhotonModes
Section: Hamiltonian::XC
Type: block

Each line of the block should specify one photon mode. The syntax is the following:

%PhotonModes omega1 | lambda1| PolX1 | PolY1 | PolZ1 ... %

The first column is the mode frequency, in units of energy. The second column is the coupling strength, in units of energy. The remaining columns specify the polarization direction of the mode. If the polarization vector should be normalized to one. If that is not the case the code will normalize it.

SICCorrection
Section: Hamiltonian::XC
Type: integer
Default: sic_none

This variable controls which form of self-interaction correction to use. Note that this correction will be applied to the functional chosen by XCFunctional.
Options:

• sic_none: No self-interaction correction.
• sic_pz: Perdew-Zunger SIC, handled by the OEP technique.
• sic_amaldi: Amaldi correction term.
• sic_adsic: Average-density SIC. C. Legrand et al., J. Phys. B 35, 1115 (2002).

VDWCorrection
Section: Hamiltonian::XC
Type: integer
Default: no

(Experimental) This variable selects which van der Waals correction to apply to the correlation functional.
Options:

• none: No correction is applied.
• vdw_ts: The scheme of Tkatchenko and Scheffler, Phys. Rev. Lett. 102 073005 (2009).
• vdw_d3: The DFT-D3 scheme of S. Grimme, J. Antony, S. Ehrlich, and S. Krieg, J. Chem. Phys. 132, 154104 (2010).

VDWD3Functional
Section: Hamiltonian::XC
Type: string

(Experimental) You can use this variable to override the parametrization used by the DFT-D3 van deer Waals correction. Normally you need not set this variable, as the proper value will be selected by Octopus (if available).

This variable takes a string value, the valid values can be found in the source file 'external_libs/dftd3/core.f90'. For example you can use:

VDWD3Functional = 'pbe'

VDWSelfConsistent
Section: Hamiltonian::XC
Type: logical
Default: yes

This variable controls whether the VDW correction is applied self-consistently, the default, or just as a correction to the total energy. This option only works with vdw_ts.

VDW_TS_cutoff
Section: Hamiltonian::XC
Type: float
Default: 10.0

Set the value of the cutoff (unit of length) for the VDW correction in periodic system in the Tkatchenko and Scheffler (vdw_ts) scheme only.

VDW_TS_damping
Section: Hamiltonian::XC
Type: float
Default: 20.0

Set the value of the damping function (in unit of 1/length) steepness for the VDW correction in the Tkatchenko-Scheffler scheme. See Equation (12) of Phys. Rev. Lett. 102 073005 (2009).

VDW_TS_sr
Section: Hamiltonian::XC
Type: float
Default: 0.94

Set the value of the sr parameter in the damping function of the VDW correction in the Tkatchenko-Scheffler scheme. See Equation (12) of Phys. Rev. Lett. 102 073005 (2009). This parameter depends on the xc functional used. The default value is 0.94, which holds for PBE. For PBE0, a value of 0.96 should be used.

XCFunctional
Section: Hamiltonian::XC
Type: integer

Defines the exchange and correlation functionals to be used, specified as a sum of an exchange functional and a correlation functional, or a single exchange-correlation functional (e.g. hyb_gga_xc_pbeh). For more information on the functionals, see Libxc documentation. The list provided here is from libxc 4; if you have linked against a different libxc version, you may have a somewhat different set of available functionals. Note that kinetic-energy functionals are not supported.

The default functional will be selected by Octopus to be consistent with the pseudopotentials you are using. If you are not using pseudopotentials, Octopus cannot determine the functional used to generate the pseudopotential, or the pseudopotential functionals are inconsistent, Octopus will use the following defaults:

1D: lda_x_1d + lda_c_1d_csc
2D: lda_x_2d + lda_c_2d_amgb
3D: lda_x + lda_c_pz_mod
Options:

• none: Exchange and correlation set to zero (not from libxc).
• gga_c_tca: Tognetti, Cortona, Adamo
• lda_c_pz_mod: Perdew & Zunger (Modified)
• gga_x_pbe: Perdew, Burke & Ernzerhof exchange
• gga_x_pbe_r: Perdew, Burke & Ernzerhof exchange (revised)
• gga_x_b86: Becke 86 Xalpha,beta,gamma
• gga_x_herman: Herman et al original GGA
• gga_x_b86_mgc: Becke 86 Xalpha,beta,gamma (with mod. grad. correction)
• gga_x_b88: Becke 88
• gga_x_g96: Gill 96
• gga_x_pw86: Perdew & Wang 86
• gga_x_pw91: Perdew & Wang 91
• lda_c_ob_pz: Ortiz & Ballone (PZ)
• gga_x_optx: Handy & Cohen OPTX 01
• gga_x_dk87_r1: dePristo & Kress 87 (version R1)
• gga_x_dk87_r2: dePristo & Kress 87 (version R2)
• gga_x_lg93: Lacks & Gordon 93
• gga_x_ft97_a: Filatov & Thiel 97 (version A)
• gga_x_ft97_b: Filatov & Thiel 97 (version B)
• gga_x_pbe_sol: Perdew, Burke & Ernzerhof exchange (solids)
• gga_x_rpbe: Hammer, Hansen & Norskov (PBE-like)
• gga_x_wc: Wu & Cohen
• gga_x_mpw91: Modified form of PW91 by Adamo & Barone
• lda_c_pw: Perdew & Wang
• gga_x_am05: Armiento & Mattsson 05 exchange
• gga_x_pbea: Madsen (PBE-like)
• gga_x_mpbe: Adamo & Barone modification to PBE
• gga_x_xpbe: xPBE reparametrization by Xu & Goddard
• gga_x_2d_b86_mgc: Becke 86 MGC for 2D systems
• gga_x_bayesian: Bayesian best fit for the enhancement factor
• gga_x_pbe_jsjr: JSJR reparametrization by Pedroza, Silva & Capelle
• gga_x_2d_b88: Becke 88 in 2D
• gga_x_2d_b86: Becke 86 Xalpha,beta,gamma
• gga_x_2d_pbe: Perdew, Burke & Ernzerhof exchange in 2D
• gga_c_pbe: Perdew, Burke & Ernzerhof correlation
• lda_c_pw_mod: Perdew & Wang (Modified)
• gga_c_lyp: Lee, Yang & Parr
• gga_c_p86: Perdew 86
• gga_c_pbe_sol: Perdew, Burke & Ernzerhof correlation SOL
• gga_c_pw91: Perdew & Wang 91
• gga_c_am05: Armiento & Mattsson 05 correlation
• gga_c_xpbe: xPBE reparametrization by Xu & Goddard
• gga_c_lm: Langreth and Mehl correlation
• gga_c_pbe_jrgx: JRGX reparametrization by Pedroza, Silva & Capelle
• gga_x_optb88_vdw: Becke 88 reoptimized to be used with vdW functional of Dion et al
• lda_c_ob_pw: Ortiz & Ballone (PW)
• gga_x_pbek1_vdw: PBE reparametrization for vdW
• gga_x_optpbe_vdw: PBE reparametrization for vdW
• gga_x_rge2: Regularized PBE
• gga_c_rge2: Regularized PBE
• gga_x_rpw86: refitted Perdew & Wang 86
• gga_x_kt1: Exchange part of Keal and Tozer version 1
• gga_xc_kt2: Keal and Tozer version 2
• gga_c_wl: Wilson & Levy
• gga_c_wi: Wilson & Ivanov
• gga_x_mb88: Modified Becke 88 for proton transfer
• lda_c_2d_amgb: Attaccalite et al
• gga_x_sogga: Second-order generalized gradient approximation
• gga_x_sogga11: Second-order generalized gradient approximation 2011
• gga_c_sogga11: Second-order generalized gradient approximation 2011
• gga_c_wi0: Wilson & Ivanov initial version
• gga_xc_th1: Tozer and Handy v. 1
• gga_xc_th2: Tozer and Handy v. 2
• gga_xc_th3: Tozer and Handy v. 3
• gga_xc_th4: Tozer and Handy v. 4
• gga_x_c09x: C09x to be used with the VdW of Rutgers-Chalmers
• gga_c_sogga11_x: To be used with HYB_GGA_X_SOGGA11_X
• lda_c_2d_prm: Pittalis, Rasanen & Marques correlation in 2D
• gga_x_lb: van Leeuwen & Baerends
• gga_xc_hcth_93: HCTH functional fitted to 93 molecules
• gga_xc_hcth_120: HCTH functional fitted to 120 molecules
• gga_xc_hcth_147: HCTH functional fitted to 147 molecules
• gga_xc_hcth_407: HCTH functional fitted to 407 molecules
• gga_xc_edf1: Empirical functionals from Adamson, Gill, and Pople
• gga_xc_xlyp: XLYP functional
• gga_xc_kt1: Keal and Tozer version 1
• gga_xc_b97_d: Grimme functional to be used with C6 vdW term
• lda_c_vbh: von Barth & Hedin
• gga_xc_pbe1w: Functionals fitted for water
• gga_xc_mpwlyp1w: Functionals fitted for water
• gga_xc_pbelyp1w: Functionals fitted for water
• lda_c_1d_csc: Casula, Sorella, and Senatore 1D correlation
• gga_x_lbm: van Leeuwen & Baerends modified
• gga_x_ol2: Exchange form based on Ou-Yang and Levy v.2
• gga_x_apbe: mu fixed from the semiclassical neutral atom
• gga_c_apbe: mu fixed from the semiclassical neutral atom
• gga_x_htbs: Haas, Tran, Blaha, and Schwarz
• gga_x_airy: Constantin et al based on the Airy gas
• gga_x_lag: Local Airy Gas
• gga_xc_mohlyp: Functional for organometallic chemistry
• gga_xc_mohlyp2: Functional for barrier heights
• gga_xc_th_fl: Tozer and Handy v. FL
• gga_xc_th_fc: Tozer and Handy v. FC
• gga_xc_th_fcfo: Tozer and Handy v. FCFO
• gga_xc_th_fco: Tozer and Handy v. FCO
• lda_x_2d: Exchange in 2D
• lda_x: Exchange
• gga_c_optc: Optimized correlation functional of Cohen and Handy
• lda_xc_teter93: Teter 93 parametrization
• lda_c_wigner: Wigner parametrization
• mgga_x_lta: Local tau approximation of Ernzerhof & Scuseria
• mgga_x_tpss: Tao, Perdew, Staroverov & Scuseria exchange
• mgga_x_m06_l: M06-L exchange functional from Minnesota
• mgga_x_gvt4: GVT4 from Van Voorhis and Scuseria
• mgga_x_tau_hcth: tau-HCTH from Boese and Handy
• mgga_x_br89: Becke-Roussel 89
• mgga_x_bj06: Becke & Johnson correction to Becke-Roussel 89
• mgga_x_tb09: Tran & Blaha correction to Becke & Johnson
• mgga_x_rpp09: Rasanen, Pittalis, and Proetto correction to Becke & Johnson
• mgga_x_2d_prhg07: Pittalis, Rasanen, Helbig, Gross Exchange Functional
• mgga_x_2d_prhg07_prp10: PRGH07 with PRP10 correction
• mgga_x_revtpss: revised Tao, Perdew, Staroverov & Scuseria exchange
• mgga_x_pkzb: Perdew, Kurth, Zupan, and Blaha
• lda_x_1d: Exchange in 1D
• lda_c_ml1: Modified LSD (version 1) of Proynov and Salahub
• mgga_x_ms0: MS exchange of Sun, Xiao, and Ruzsinszky
• mgga_x_ms1: MS1 exchange of Sun, et al
• mgga_x_ms2: MS2 exchange of Sun, et al
• hyb_mgga_x_ms2h: MS2 hybrid exchange of Sun, et al
• mgga_x_m11_l: M11-L exchange functional from Minnesota
• mgga_x_mn12_l: MN12-L exchange functional from Minnesota
• mgga_xc_cc06: Cancio and Chou 2006
• lda_c_ml2: Modified LSD (version 2) of Proynov and Salahub
• mgga_x_mk00: Exchange for accurate virtual orbital energies
• mgga_c_tpss: Tao, Perdew, Staroverov & Scuseria correlation
• mgga_c_vsxc: VSxc from Van Voorhis and Scuseria (correlation part)
• mgga_c_m06_l: M06-L correlation functional from Minnesota
• mgga_c_m06_hf: M06-HF correlation functional from Minnesota
• mgga_c_m06: M06 correlation functional from Minnesota
• mgga_c_m06_2x: M06-2X correlation functional from Minnesota
• mgga_c_m05: M05 correlation functional from Minnesota
• mgga_c_m05_2x: M05-2X correlation functional from Minnesota
• mgga_c_pkzb: Perdew, Kurth, Zupan, and Blaha
• mgga_c_bc95: Becke correlation 95
• lda_c_gombas: Gombas parametrization
• mgga_c_revtpss: revised TPSS correlation
• mgga_xc_tpsslyp1w: Functionals fitted for water
• mgga_x_mk00b: Exchange for accurate virtual orbital energies (v. B)
• mgga_x_bloc: functional with balanced localization
• mgga_x_modtpss: Modified Tao, Perdew, Staroverov & Scuseria exchange
• gga_c_pbeloc: Semilocal dynamical correlation
• mgga_c_tpssloc: Semilocal dynamical correlation
• hyb_mgga_x_mn12_sx: MN12-SX hybrid exchange functional from Minnesota
• mgga_x_mbeef: mBEEF exchange
• lda_c_pw_rpa: Perdew & Wang fit of the RPA
• mgga_x_mbeefvdw: mBEEF-vdW exchange
• mgga_xc_b97m_v: Mardirossian and Head-Gordon
• gga_xc_vv10: Vydrov and Van Voorhis
• mgga_x_mvs: MVS exchange of Sun, Perdew, and Ruzsinszky
• gga_c_pbefe: PBE for formation energies
• lda_xc_ksdt: Karasiev et al. parametrization
• lda_c_1d_loos: P-F Loos correlation LDA
• mgga_x_mn15_l: MN15-L exhange functional from Minnesota
• mgga_c_mn15_l: MN15-L correlation functional from Minnesota
• gga_c_op_pw91: one-parameter progressive functional (PW91 version)
• mgga_x_scan: SCAN exchange of Sun, Ruzsinszky, and Perdew
• hyb_mgga_x_scan0: SCAN hybrid exchange
• gga_x_pbefe: PBE for formation energies
• hyb_gga_xc_b97_1p: version of B97 by Cohen and Handy
• mgga_c_scan: SCAN correlation
• hyb_mgga_x_mn15: MN15 hybrid exchange functional from Minnesota
• mgga_c_mn15: MN15 correlation functional from Minnesota
• lda_c_rc04: Ragot-Cortona
• gga_x_cap: Correct Asymptotic Potential
• gga_x_eb88: Non-empirical (excogitated) B88 functional of Becke and Elliott
• gga_c_pbe_mol: Del Campo, Gazquez, Trickey and Vela (PBE-like)
• hyb_gga_xc_pbe_mol0: PBEmol0
• hyb_gga_xc_pbe_sol0: PBEsol0
• hyb_gga_xc_pbeb0: PBEbeta0
• hyb_gga_xc_pbe_molb0: PBEmolbeta0
• hyb_mgga_x_bmk: Boese-Martin for kinetics
• gga_c_bmk: Boese-Martin for kinetics
• lda_c_vwn_1: Vosko, Wilk, & Nusair (1)
• gga_c_tau_hcth: correlation part of tau-hcth
• hyb_mgga_x_tau_hcth: Hybrid version of tau-HCTH
• gga_c_hyb_tau_hcth: correlation part of hyb_tau-hcth
• mgga_x_b00: Becke 2000
• gga_x_beefvdw: BEEF-vdW exchange
• gga_xc_beefvdw: BEEF-vdW exchange-correlation
• lda_c_chachiyo: Chachiyo simple 2 parameter correlation
• mgga_xc_hle17: high local exchange 2017
• lda_c_lp96: Liu-Parr correlation
• hyb_gga_xc_pbe50: PBE0 with 50% exx
• lda_c_vwn_2: Vosko, Wilk, & Nusair (2)
• gga_x_pbetrans: Gradient-based interpolation between PBE and revPBE
• mgga_c_scan_rvv10: SCAN correlation + rVV10 correlation
• mgga_x_revm06_l: revised M06-L exchange functional from Minnesota
• mgga_c_revm06_l: Revised M06-L correlation functional from Minnesota
• hyb_mgga_x_m08_hx: M08-HX exchange functional from Minnesota
• hyb_mgga_x_m08_so: M08-SO exchange functional from Minnesota
• hyb_mgga_x_m11: M11 hybrid exchange functional from Minnesota
• gga_x_chachiyo: Chachiyo exchange
• lda_c_vwn_3: Vosko, Wilk, & Nusair (3)
• lda_c_rpa: Random Phase Approximation
• lda_c_vwn_4: Vosko, Wilk, & Nusair (4)
• gga_x_gam: GAM functional from Minnesota
• gga_c_gam: GAM functional from Minnesota
• gga_x_hcth_a: HCTH-A
• gga_x_ev93: Engel and Vosko
• hyb_mgga_x_dldf: Dispersionless Density Functional
• mgga_c_dldf: Dispersionless Density Functional
• gga_x_bcgp: Burke, Cancio, Gould, and Pittalis
• gga_c_bcgp: Burke, Cancio, Gould, and Pittalis
• lda_c_hl: Hedin & Lundqvist
• hyb_gga_xc_b3pw91: The original (ACM) hybrid of Becke
• hyb_gga_xc_b3lyp: The (in)famous B3LYP
• hyb_gga_xc_b3p86: Perdew 86 hybrid similar to B3PW91
• hyb_gga_xc_o3lyp: hybrid using the optx functional
• hyb_gga_xc_mpw1k: mixture of mPW91 and PW91 optimized for kinetics
• hyb_gga_xc_pbeh: aka PBE0 or PBE1PBE
• hyb_gga_xc_b97: Becke 97
• hyb_gga_xc_b97_1: Becke 97-1
• gga_x_lambda_oc2_n: lambda_OC2(N) version of PBE
• hyb_gga_xc_b97_2: Becke 97-2
• hyb_gga_xc_x3lyp: hybrid by Xu and Goddard
• hyb_gga_xc_b1wc: Becke 1-parameter mixture of WC and PBE
• hyb_gga_xc_b97_k: Boese-Martin for Kinetics
• hyb_gga_xc_b97_3: Becke 97-3
• hyb_gga_xc_mpw3pw: mixture with the mPW functional
• hyb_gga_xc_b1lyp: Becke 1-parameter mixture of B88 and LYP
• hyb_gga_xc_b1pw91: Becke 1-parameter mixture of B88 and PW91
• hyb_gga_xc_mpw1pw: Becke 1-parameter mixture of mPW91 and PW91
• hyb_gga_xc_mpw3lyp: mixture of mPW and LYP
• gga_x_b86_r: Revised Becke 86 Xalpha,beta,gamma (with mod. grad. correction)
• hyb_gga_xc_sb98_1a: Schmider-Becke 98 parameterization 1a
• mgga_xc_zlp: Zhao, Levy & Parr, Eq. (21)
• hyb_gga_xc_sb98_1b: Schmider-Becke 98 parameterization 1b
• hyb_gga_xc_sb98_1c: Schmider-Becke 98 parameterization 1c
• hyb_gga_xc_sb98_2a: Schmider-Becke 98 parameterization 2a
• hyb_gga_xc_sb98_2b: Schmider-Becke 98 parameterization 2b
• hyb_gga_xc_sb98_2c: Schmider-Becke 98 parameterization 2c
• hyb_gga_x_sogga11_x: Hybrid based on SOGGA11 form
• hyb_gga_xc_hse03: the 2003 version of the screened hybrid HSE
• hyb_gga_xc_hse06: the 2006 version of the screened hybrid HSE
• hyb_gga_xc_hjs_pbe: HJS hybrid screened exchange PBE version
• hyb_gga_xc_hjs_pbe_sol: HJS hybrid screened exchange PBE_SOL version
• lda_xc_zlp: Zhao, Levy & Parr, Eq. (20)
• hyb_gga_xc_hjs_b88: HJS hybrid screened exchange B88 version
• hyb_gga_xc_hjs_b97x: HJS hybrid screened exchange B97x version
• hyb_gga_xc_cam_b3lyp: CAM version of B3LYP
• hyb_gga_xc_tuned_cam_b3lyp: CAM version of B3LYP tuned for excitations
• hyb_gga_xc_bhandh: Becke half-and-half
• hyb_gga_xc_bhandhlyp: Becke half-and-half with B88 exchange
• hyb_gga_xc_mb3lyp_rc04: B3LYP with RC04 LDA
• hyb_mgga_x_m05: M05 hybrid exchange functional from Minnesota
• hyb_mgga_x_m05_2x: M05-2X hybrid exchange functional from Minnesota
• hyb_mgga_xc_b88b95: Mixture of B88 with BC95 (B1B95)
• hyb_mgga_xc_b86b95: Mixture of B86 with BC95
• hyb_mgga_xc_pw86b95: Mixture of PW86 with BC95
• hyb_mgga_xc_bb1k: Mixture of B88 with BC95 from Zhao and Truhlar
• hyb_mgga_x_m06_hf: M06-HF hybrid exchange functional from Minnesota
• hyb_mgga_xc_mpw1b95: Mixture of mPW91 with BC95 from Zhao and Truhlar
• hyb_mgga_xc_mpwb1k: Mixture of mPW91 with BC95 for kinetics
• hyb_mgga_xc_x1b95: Mixture of X with BC95
• hyb_mgga_xc_xb1k: Mixture of X with BC95 for kinetics
• hyb_mgga_x_m06: M06 hybrid exchange functional from Minnesota
• gga_x_lambda_ch_n: lambda_CH(N) version of PBE
• hyb_mgga_x_m06_2x: M06-2X hybrid exchange functional from Minnesota
• hyb_mgga_xc_pw6b95: Mixture of PW91 with BC95 from Zhao and Truhlar
• hyb_mgga_xc_pwb6k: Mixture of PW91 with BC95 from Zhao and Truhlar for kinetics
• hyb_gga_xc_mpwlyp1m: MPW with 1 par. for metals/LYP
• hyb_gga_xc_revb3lyp: Revised B3LYP
• hyb_gga_xc_camy_blyp: BLYP with yukawa screening
• hyb_gga_xc_pbe0_13: PBE0-1/3
• hyb_mgga_xc_tpssh: TPSS hybrid
• hyb_mgga_xc_revtpssh: revTPSS hybrid
• hyb_gga_xc_b3lyps: B3LYP* functional
• gga_x_lambda_lo_n: lambda_LO(N) version of PBE
• hyb_gga_xc_wb97: Chai and Head-Gordon
• hyb_gga_xc_wb97x: Chai and Head-Gordon
• hyb_gga_xc_lrc_wpbeh: Long-range corrected functional by Rorhdanz et al
• hyb_gga_xc_wb97x_v: Mardirossian and Head-Gordon
• hyb_gga_xc_lcy_pbe: PBE with yukawa screening
• hyb_gga_xc_lcy_blyp: BLYP with yukawa screening
• hyb_gga_xc_lc_vv10: Vydrov and Van Voorhis
• gga_x_hjs_b88_v2: HJS screened exchange corrected B88 version
• hyb_gga_xc_camy_b3lyp: B3LYP with Yukawa screening
• gga_c_q2d: Chiodo et al
• hyb_gga_xc_wb97x_d: Chai and Head-Gordon
• hyb_gga_xc_hpbeint: hPBEint
• hyb_gga_xc_lrc_wpbe: Long-range corrected functional by Rorhdanz et al
• hyb_mgga_x_mvsh: MVSh hybrid
• hyb_gga_xc_b3lyp5: B3LYP with VWN functional 5 instead of RPA
• hyb_gga_xc_edf2: Empirical functional from Lin, George and Gill
• hyb_gga_xc_cap0: Correct Asymptotic Potential hybrid
• hyb_gga_xc_lc_wpbe: Long-range corrected functional by Vydrov and Scuseria
• hyb_gga_xc_hse12: HSE12 by Moussa, Schultz and Chelikowsky
• hyb_gga_xc_hse12s: Short-range HSE12 by Moussa, Schultz, and Chelikowsky
• hyb_gga_xc_hse_sol: HSEsol functional by Schimka, Harl, and Kresse
• hyb_gga_xc_cam_qtp_01: CAM-QTP(01): CAM-B3LYP retuned using ionization potentials of water
• hyb_gga_xc_mpw1lyp: Becke 1-parameter mixture of mPW91 and LYP
• hyb_gga_xc_mpw1pbe: Becke 1-parameter mixture of mPW91 and PBE
• hyb_gga_xc_kmlyp: Kang-Musgrave hybrid
• gga_x_q2d: Chiodo et al
• gga_x_pbe_mol: Del Campo, Gazquez, Trickey and Vela (PBE-like)
• lda_c_gl: Gunnarson & Lundqvist
• gga_x_wpbeh: short-range version of the PBE
• gga_x_hjs_pbe: HJS screened exchange PBE version
• gga_x_hjs_pbe_sol: HJS screened exchange PBE_SOL version
• gga_x_hjs_b88: HJS screened exchange B88 version
• gga_x_hjs_b97x: HJS screened exchange B97x version
• gga_x_ityh: short-range recipe for exchange GGA functionals
• gga_x_sfat: short-range recipe for exchange GGA functionals
• hyb_mgga_xc_wb97m_v: Mardirossian and Head-Gordon
• lda_x_rel: Relativistic exchange
• gga_x_sg4: Semiclassical GGA at fourth order
• gga_c_sg4: Semiclassical GGA at fourth order
• gga_x_gg99: Gilbert and Gill 1999
• lda_xc_1d_ehwlrg_1: LDA constructed from slab-like systems of 1 electron
• lda_xc_1d_ehwlrg_2: LDA constructed from slab-like systems of 2 electrons
• lda_xc_1d_ehwlrg_3: LDA constructed from slab-like systems of 3 electrons
• gga_x_pbepow: PBE power
• mgga_x_tm: Tao and Mo 2016
• mgga_x_vt84: meta-GGA version of VT{8,4} GGA
• mgga_x_sa_tpss: TPSS with correct surface asymptotics
• gga_x_kgg99: Gilbert and Gill 1999 (mixed)
• gga_xc_hle16: high local exchange 2016
• lda_x_erf: Attenuated exchange LDA (erf)
• lda_xc_lp_a: Lee-Parr reparametrization B
• lda_xc_lp_b: Lee-Parr reparametrization B
• lda_x_rae: Rae self-energy corrected exchange
• lda_c_mcweeny: McWeeny 76
• lda_c_br78: Brual & Rothstein 78
• gga_c_scan_e0: GGA component of SCAN
• lda_c_pk09: Proynov and Kong 2009
• gga_c_gapc: GapC
• gga_c_gaploc: Gaploc
• gga_c_zvpbeint: another spin-dependent correction to PBEint
• gga_c_zvpbesol: another spin-dependent correction to PBEsol
• gga_c_tm_lyp: Takkar and McCarthy reparametrization
• gga_c_tm_pbe: Thakkar and McCarthy reparametrization
• gga_c_w94: Wilson 94 (Eq. 25)
• mgga_c_kcis: Krieger, Chen, Iafrate, and Savin
• hyb_mgga_xc_b0kcis: Hybrid based on KCIS
• mgga_xc_lp90: Lee & Parr, Eq. (56)
• gga_c_cs1: A dynamical correlation functional
• hyb_mgga_xc_mpw1kcis: Modified Perdew-Wang + KCIS hybrid
• hyb_mgga_xc_mpwkcis1k: Modified Perdew-Wang + KCIS hybrid with more exact exchange
• hyb_mgga_xc_pbe1kcis: Perdew-Burke-Ernzerhof + KCIS hybrid
• hyb_mgga_xc_tpss1kcis: TPSS hybrid with KCIS correlation
• gga_x_ak13: Armiento & Kuemmel 2013
• gga_x_b88m: Becke 88 reoptimized to be used with mgga_c_tau1
• mgga_c_b88: Meta-GGA correlation by Becke
• hyb_gga_xc_b5050lyp: Like B3LYP but more exact exchange
• lda_c_ow_lyp: Wigner with corresponding LYP parameters
• lda_c_ow: Optimized Wigner
• mgga_x_gx: GX functional of Loos
• mgga_x_pbe_gx: PBE-GX functional of Loos
• lda_xc_gdsmfb: Groth et al. parametrization
• lda_c_gk72: Gordon and Kim 1972
• lda_c_karasiev: Karasiev reparameterization of Chachiyo
• mgga_x_revscan: revised SCAN
• mgga_c_revscan: revised SCAN correlation
• hyb_mgga_x_revscan0: revised SCAN hybrid exchange
• mgga_c_scan_vv10: SCAN correlation + VV10 correlation
• mgga_c_revscan_vv10: revised SCAN correlation
• mgga_x_br89_explicit: Becke-Roussel 89 with an explicit inversion of x(y)
• gga_x_lv_rpw86: Berland and Hyldgaard
• hyb_mgga_xc_b98: Becke 98
• gga_x_pbe_tca: PBE revised by Tognetti et al
• lda_c_xalpha: Slater Xalpha
• rdmft_xc_m: RDMFT Mueller functional (not from libxc).
• gga_x_pbeint: PBE for hybrid interfaces
• gga_c_zpbeint: spin-dependent gradient correction to PBEint
• gga_c_pbeint: PBE for hybrid interfaces
• gga_c_zpbesol: spin-dependent gradient correction to PBEsol
• mgga_xc_otpss_d: oTPSS_D functional of Goerigk and Grimme
• gga_xc_opbe_d: oPBE_D functional of Goerigk and Grimme
• gga_xc_opwlyp_d: oPWLYP-D functional of Goerigk and Grimme
• gga_xc_oblyp_d: oBLYP-D functional of Goerigk and Grimme
• gga_x_vmt84_ge: VMT{8,4} with constraint satisfaction with mu = mu_GE
• gga_x_vmt84_pbe: VMT{8,4} with constraint satisfaction with mu = mu_PBE
• lda_c_vwn: Vosko, Wilk, & Nusair (5)
• lda_xc_cmplx: Complex-scaled LDA exchange and correlation (not from libxc).
• pbe_xc_cmplx: Complex-scaled PBE exchange and correlation (not from libxc).
• lb94_xc_cmplx: Complex-scaled LB94 exchange and correlation (not from libxc).
• gga_x_vmt_ge: Vela, Medel, and Trickey with mu = mu_GE
• gga_x_vmt_pbe: Vela, Medel, and Trickey with mu = mu_PBE
• mgga_c_cs: Colle and Salvetti
• mgga_c_mn12_sx: MN12-SX correlation functional from Minnesota
• mgga_c_mn12_l: MN12-L correlation functional from Minnesota
• mgga_c_m11_l: M11-L correlation functional from Minnesota
• mgga_c_m11: M11 correlation functional from Minnesota
• mgga_c_m08_so: M08-SO correlation functional from Minnesota
• mgga_c_m08_hx: M08-HX correlation functional from Minnesota
• gga_c_n12_sx: N12-SX functional from Minnesota
• gga_c_n12: N12 functional from Minnesota
• lda_c_vwn_rpa: Vosko, Wilk, & Nusair (RPA)
• ks_inversion: Inversion of KS potential (not from libxc).
• hyb_gga_x_n12_sx: N12-SX functional from Minnesota
• gga_x_n12: N12 functional from Minnesota
• gga_c_regtpss: Regularized TPSS correlation (ex-VPBE)
• gga_c_op_xalpha: one-parameter progressive functional (XALPHA version)
• gga_c_op_g96: one-parameter progressive functional (G96 version)
• gga_c_op_pbe: one-parameter progressive functional (PBE version)
• gga_c_op_b88: one-parameter progressive functional (B88 version)
• gga_c_ft97: Filatov & Thiel correlation
• gga_c_spbe: PBE correlation to be used with the SSB exchange
• lda_c_pz: Perdew & Zunger
• oep_x: OEP: Exact exchange (not from libxc).
• slater_x: Slater approximation to the exact exchange (not from libxc).
• fbe_x: Exchange functional based on the force balance equation (not from libxc).
• gga_x_ssb_sw: Swart, Sola and Bickelhaupt correction to PBE
• xc_half_hartree: Half-Hartree exchange for two electrons (supports complex scaling) (not from libxc). Defined by $$v_{xc}(r) = v_H(r) / 2$$.
• vdw_c_vdwdf: van der Waals density functional vdW-DF correlation from libvdwxc (not from libxc). Use with gga_x_pbe_r.
• vdw_c_vdwdf2: van der Waals density functional vdW-DF2 correlation from libvdwxc (not from libxc). Use with gga_x_rpw86.
• gga_x_ssb: Swart, Sola and Bickelhaupt
• vdw_c_vdwdfcx: van der Waals density functional vdW-DF-cx correlation from libvdwxc (not from libxc). Use with gga_x_lv_rpw86.
• hyb_gga_xc_mvorb_hse06: Density-based mixing parameter of HSE06 (not from libxc).
• hyb_gga_xc_mvorb_pbeh: Density-based mixing parameter of PBEH (not from libxc). At the moment this is not supported for libxc >= 4.0.
• gga_x_ssb_d: Swart, Sola and Bickelhaupt dispersion
• gga_xc_hcth_407p: HCTH/407+
• gga_xc_hcth_p76: HCTH p=7/6
• gga_xc_hcth_p14: HCTH p=1/4
• gga_xc_b97_gga1: Becke 97 GGA-1
• gga_c_hcth_a: HCTH-A
• gga_x_bpccac: BPCCAC (GRAC for the energy)
• gga_c_revtca: Tognetti, Cortona, Adamo (revised)

XCKernel
Section: Hamiltonian::XC
Type: integer

Defines the exchange-correlation kernel. Only LDA kernels are available currently. The options are the same as XCFunctional. Note: the kernel is only needed for Casida, Sternheimer, or optimal-control calculations. Defaults:
1D: lda_x_1d + lda_c_1d_csc
2D: lda_x_2d + lda_c_2d_amgb
3D: lda_x + lda_c_pz_mod
Options:

• xc_functional: The same functional defined by XCFunctional.

XCKernelLRCAlpha
Section: Hamiltonian::XC
Type: float
Default: 0.0

Set to a non-zero value to add a long-range correction for solids to the kernel. This is the $$\alpha$$ parameter defined in S. Botti et al., Phys. Rev. B 69, 155112 (2004). The $$\Gamma = \Gamma = 0$$ term $$-\alpha/q^2$$ is taken into account by introducing an additional pole to the polarizability (see R. Stubner et al., Phys. Rev. B 70, 245119 (2004)). The rest of the terms are included by multiplying the Hartree term by $$1 - \alpha / 4 \pi$$. The use of non-zero $$\alpha$$ in combination with HamiltonianVariation = V_ext_only corresponds to account of only the $$\Gamma = \Gamma = 0$$ term. Applicable only to isotropic systems. (Experimental)

XCUseGaugeIndependentKED
Section: Hamiltonian::XC
Type: logical
Default: yes

If true, when evaluating the XC functional, a term including the (paramagnetic or total) current is added to the kinetic-energy density such as to make it gauge-independent. Applies only to meta-GGA (and hybrid meta-GGA) functionals.

Xalpha
Section: Hamiltonian::XC
Type: float
Default: 1.0

The parameter of the Slater X$$\alpha$$ functional. Applies only for XCFunctional = xc_lda_c_xalpha.

libvdwxcDebug
Section: Hamiltonian::XC
Type: logical

Dump libvdwxc inputs and outputs to files.

libvdwxcMode
Section: Hamiltonian::XC
Type: integer

Whether libvdwxc should run with serial fftw3, fftw3-mpi, or pfft. to specify fftw3-mpi in serial for debugging. pfft is not implemented at the moment.
Options:

• libvdwxc_mode_auto: Use serial fftw3 if actually running in serial, else fftw3-mpi.
• libvdwxc_mode_serial: Run with serial fftw3. Works only when not parallelizing over domains.
• libvdwxc_mode_mpi: Run with fftw3-mpi. Works only if Octopus is compiled with MPI.

libvdwxcVDWFactor
Section: Hamiltonian::XC
Type: float

Prefactor of non-local van der Waals functional. Setting a prefactor other than one is wrong, but useful for debugging.

## Hamiltonian::XC::DensityCorrection

XCDensityCorrection
Section: Hamiltonian::XC::DensityCorrection
Type: integer
Default: none

This variable controls the long-range correction of the XC potential using the XC density representation.
Options:

• none: No correction is applied.
• long_range_x: The correction is applied to the exchange potential.

XCDensityCorrectionCutoff
Section: Hamiltonian::XC::DensityCorrection
Type: float
Default: 0.0

The value of the cutoff applied to the XC density.

XCDensityCorrectionMinimum
Section: Hamiltonian::XC::DensityCorrection
Type: logical
Default: true

When enabled, the cutoff optimization will return the first minimum of the $$q_{xc}$$ function if it does not find a value of -1 (details). This is required for atoms or small molecules, but may cause numerical problems.

XCDensityCorrectionNormalize
Section: Hamiltonian::XC::DensityCorrection
Type: logical
Default: true

When enabled, the correction will be normalized to reproduce the exact boundary conditions of the XC potential.

XCDensityCorrectionOptimize
Section: Hamiltonian::XC::DensityCorrection
Type: logical
Default: true

When enabled, the density cutoff will be optimized to replicate the boundary conditions of the exact XC potential. If the variable is set to no, the value of the cutoff must be given by the XCDensityCorrectionCutoff variable.