Hamiltonian

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:


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:


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.


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:


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.


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:


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.


IgnoreExternalIons
Section: Hamiltonian
Type: logical
Default: no

If this variable is set to "yes", then the ions that are outside the simulation box do not feel any external force (and therefore progress at constant velocity), and do not originate any force on other ions, or any potential on the electronic system.

This feature is only available for finite systems; if the system is periodic in any dimension, this variable cannot be set to "yes".


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.


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:


SCDMCutoffRadius
Section: Hamiltonian
Type: float
Default: 3. Ang

Controls the size of the box on which the SCDM states are defined (box size = 2*radius).


SCDM_EXX
Section: Hamiltonian
Type: logical
Default: no

If set to yes, and TheoryLevel = hartree_fock, the Fock operator for exact exchange will be applied with the SCDM method.


SCDM_verbose
Section: Hamiltonian
Type: logical
Default: no

Output detailed information on SCDM procedure.


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:


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:


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::ComplexScaling

ComplexScaling
Section: Hamiltonian::ComplexScaling
Type: flag
Default: none

(Experimental) Global complex scaling. The options allow to scale space and time coordinates in the Hamiltonian. Cannot be used with OpenCL currently. You can specify more than one value by giving them as a sum, for example: ComplexScaling = space + time
Options:


ComplexScalingAlpha
Section: Hamiltonian::ComplexScaling
Type: float
Default: 2*ComplexScalingTheta

The time coordinate complex scaling angle \(\alpha_r\) used to evolve right states.


ComplexScalingAlphaLeft
Section: Hamiltonian::ComplexScaling
Type: float
Default: ComplexScalingAlpha

The time coordinate complex scaling angle \(\alpha_l\) used to evolve left states.


ComplexScalingLocalizationRadius
Section: Hamiltonian::ComplexScaling
Type: float
Default: 0.0

Radius used to determine whether a state is a continuum state (in bohr).


ComplexScalingLocalizationThreshold
Section: Hamiltonian::ComplexScaling
Type: float
Default: 1.0

If the part of a state beyond ComplexScalingLocalizationRadius has a norm greater than this value, the state will be considered a continuum state.


ComplexScalingLocalizedStates
Section: Hamiltonian::ComplexScaling
Type: integer
Default: 0

It will be assumed that this many localized states are present in the calculation. Localized states will be occupied as ordered by real part of the energy. Any remaining states will then be ordered by localization as measured. Localization is measured by integrating the square of each wavefunction within ComplexScalingLocalizationRadius.


ComplexScalingPenalizationFactor
Section: Hamiltonian::ComplexScaling
Type: float
Default: 2

Eigenvalues \(\varepsilon\) will be ordered by \(\Re(\varepsilon) + {\rm penalizationfactor} (\Im(\varepsilon))^2\).


ComplexScalingRotateSpectrum
Section: Hamiltonian::ComplexScaling
Type: float
Default: 0.0

The order of occupation of eigenvalues is by real part unless otherwise specified. This parameter is used to rotate the whole spectrum before assigning occupations, thus customizing the sorting scheme. The spectrum is rotated back afterwards.


ComplexScalingTheta
Section: Hamiltonian::ComplexScaling
Type: float
Default: 0.3

The spatial coordinate complex scaling angle \(\theta\), in radians. Allowed values must be in the range \(0 <= \theta < \pi/4\).


Hamiltonian::PCM

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

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


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

(Experimental) 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 (arXiv:1507.05471, Chem. Rev. 105, 2999 (2005), J. Chem. Phys. 139, 024105 (2013)). At the moment, this option is available only for TheoryLevel = DFT.


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 2 times the Gaussian width used for the smearing.


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

High-frequency dielectric constant of the solvent (\(\varepsilon_d\)). 1.0 indicates gas phase. At present, non-equilibrium effects within PCM calculations are not implemented. For td calculations take PCMDynamicEpsilon = PCMStaticEpsilon (default).


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.


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.


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.


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.


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

Allows to subdivide further each tessera. Can take only two values, 1 or 4. 1 => 60 tesserae/sphere; 4 => 240 tesserae/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:


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.


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:


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.
Options:


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:


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

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-5

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


Hamiltonian::Poisson::ISF

PoissonSolverISFParallelData
Section: Hamiltonian::Poisson::ISF
Type: logical
Default: yes

Indicates whether data is partitioned within the ISF 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::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:


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

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


Hamiltonian::Subsystems

TnaddFactor
Section: Hamiltonian::Subsystems
Type: float
Default: 1.0

Chooses the Kinetic Functional amplification factor.


TnaddFunctional
Section: Hamiltonian::Subsystems
Type: integer

Defines the Kinetic Functional to be used in a Subsystem calculation, For more information on the functionals, see Libxc documentation. The list provided here is from libxc 2.0.3; if you have linked against a different libxc version, you may have a somewhat different set of available functionals.
Default: none
Options:


TnaddPolarized
Section: Hamiltonian::Subsystems
Type: logical
Default: yes

Calculates the Kinetic Functional with spin polarization or not.


Hamiltonian::XC

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:


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

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


LB94_modified
Section: Hamiltonian::XC
Type: logical
Default: no

Whether to use a modified form of the LB94 functional (XCFunctional = xc_gga_x_lb).


LB94_threshold
Section: Hamiltonian::XC
Type: float
Default: 1.0e-6

A threshold for the LB94 functional (XCFunctional = xc_gga_x_lb).


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

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


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

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


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:


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

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


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.


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 2.0; 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.
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:


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:


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), which results in multiplying the Hartree term by \(1 - \alpha / 4 \pi\). (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.


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:


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.