ExchangeCorrelation¶
- class ExchangeCorrelation(exchange, correlation, hubbard_term=None, number_of_spins=1, spin_orbit=None, dft_half_enabled=None)¶
The
ExchangeCorrelation
class is used to define the type of exchange-correlation used in the calculation, and whether the calculation should be polarized or non-polarized.- Parameters:
exchange (
Exchange
) – The exchange to be used.correlation (
Correlation
) – The correlation to be used.hubbard_term (
Onsite
|OnsiteShell
|Dual
|DualShell
| None) – The Hubbard term to add. Default:None
.number_of_spins (
1
|2
|4
) – The number of spins to be used in the calculation. Default:1
.spin_orbit (bool) – If
True
spin-orbit coupling is considered. Default:False
.dft_half_enabled (bool) – Whether or not DFT-1/2 should be enabled. Default:
False
.
- cParameter(grid_descriptor=None)¶
return the param C.
- Parameters:
grid_descriptor (NLEngine.GridDescriptor) – The grid descriptor.
- cloneAsPolarized()¶
Create a new functional with all the same settings, but polarized spin.
- cloneAsSpinOrbit()¶
Create a new functional with all the same settings, but with Spin-Orbit coupling included.
- correlation()¶
- Returns:
The correlation functional class
- Return type:
Correlation
- densityCheckThreshold()¶
- Returns:
The density safe guard.
- Return type:
float
- dftHalfEnabled()¶
- Returns:
Whether DFT-1/2 is enabled.
- Type:
bool
- dielectricDependentHybridFunctional()¶
- Returns:
True, then a dielectric dependent hybrid functional is used.
- Return type:
bool
- dielectricDependentHybridParameters()¶
- Returns:
The dielectric dependent hybrid hybrid parameters.
- Return type:
list
- exchange()¶
- Returns:
The exchange functional class
- Return type:
Exchange
- hubbardTerm()¶
- Returns:
The Hubbard term used.
- Return type:
Onsite
|OnsiteShell
|Dual
|DualShell
| None
- maximumPotential()¶
Set maximum potential value allowed for the TB09. The value to use as the maximum allowed value for the potential in points with density lower than threshold.
- Returns:
The density safe guard.
- Return type:
float
- minimumPotential()¶
Set minimum potential value allowed for the TB09. The value to use as the minimum allowed value for the potential in points with density lower than threshold.
- Returns:
The density safe guard.
- Return type:
float
- nlprint(stream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>)¶
Print a string representation of the
ExchangeCorrelation
instance.- Parameters:
stream (A stream that supports strings being written to using write.) – The stream the exchange-correlation should be written to. Default:
sys.stdout
- numberOfSpins()¶
- Returns:
The number of spins.
- Return type:
1
|2
|4
- params()¶
Get the parameters
- spinOrbit()¶
- Returns:
Boolean determining if spin-orbit is enabled (True) or not (False).
- Return type:
bool.
- spinType()¶
- Returns:
The spin type.
- Return type:
NLEngine.POLARIZED
|NLEngine.NONCOLLINEAR
|NLEngine.UNPOLARIZED
- uniqueString()¶
Return a unique string representing the state of the object.
- unscreenedExchange()¶
Whether the exchange functional in use is unscreened.
Usage Examples¶
Define a spin-polarized LDA+U calculation for nickel with a Hubbard U of 4.6 eV on each nickel atom and using the Dual representation for the Hubbard term (see also Dual representation):
exchange_correlation = ExchangeCorrelation(
exchange=DiracBloch,
correlation=PerdewZunger,
hubbard_term=Dual,
number_of_spins=2
)
basis_set = [LDABasis.Nickel_SingleZeta(hubbard_u=[4.6, 0.0]*eV)]
calculator = LCAOCalculator(
exchange_correlation=exchange_correlation,
basis_set=basis_set
)
Below is a similar calculation as above, but using the DualShell representation for the Hubbard term. In the shellwise Hubbard representation, occupations are summed over all basis set orbitals that have the same angular momentum and the complete basis is orthogonalized (see also DualShell representation). The Hubbard U must be the same for all orbitals that have equal angular momentum:
exchange_correlation = ExchangeCorrelation(
exchange=DiracBloch,
correlation=PerdewZunger,
hubbard_term=DualShell,
number_of_spins=2
)
basis_set = [LDABasis.Nickel_DoubleZetaPolarized(hubbard_u=[4.6, 0.0, 4.6, 0.0, 0.0]*eV)]
calculator = LCAOCalculator(
exchange_correlation=exchange_correlation,
basis_set=basis_set
)
Notes¶
A complete list of available keywords for the exchange
and correlation
parameters is available in the section
References.
Parameters for TB09-MGGA exchange-correlation¶
The ExchangeCorrelation
class can take
parameters. Currently, this is only relevant for the TB09 meta-GGA
functional, which takes a parameter c
(cf. Meta-GGA).
If no value is specified, the value of c
is automatically computed according
to Eq. (3) in [1]. The calculated value can then be recovered using
the calculateTB09C function.
The following piece of code selects the TB09 functional
with c=1.0
(recovering the Becke–Johnson potental [2]):
exchange_correlation = MGGA.TB09LDA(c=1.0)
calculator = LCAOCalculator(exchange_correlation=exchange_correlation)
Simulations of complex systems, e.g. interfaces or two-probe device
systems with different materials in the electrodes and the central region, may require
setting the c
parameter to different values
in the various parts of the system, e.g. one c
for the left electrode,
another c
for the central region, and yet another c
for the right electrode.
In such cases, the c
parameter for TB09-MGGA exchange-correlation functionals
can be defined as a sequence of BoxRegions (cf. BoxRegion
),
as demonstrated in the following script. The configuration is a bulk configuration
that consists of layers of iron, magnesium-oxide, and again iron. Indeed, it is
the central region of a magnetic tunneling junction device configuration.
from QuantumATK import *
# Set up lattice
vector_a = [2.866, 0.0, 0.0]*Angstrom
vector_b = [0.0, 2.866, 0.0]*Angstrom
vector_c = [0.0, 0.0, 34.6764]*Angstrom
lattice = UnitCell(vector_a, vector_b, vector_c)
# Define elements
elements = [Iron, Iron, Iron, Iron, Iron, Iron, Iron, Iron, Magnesium,
Oxygen, Oxygen, Magnesium, Magnesium, Oxygen, Oxygen, Magnesium,
Magnesium, Oxygen, Iron, Iron, Iron, Iron, Iron, Iron, Iron,
Iron]
# Define coordinates
fractional_coordinates = [[ 0.25 , 0.25 , 0.020662467846],
[ 0.75 , 0.75 , 0.061987403537],
[ 0.25 , 0.25 , 0.103312339228],
[ 0.75 , 0.75 , 0.144637274919],
[ 0.25 , 0.25 , 0.18596221061 ],
[ 0.75 , 0.75 , 0.227287146301],
[ 0.25 , 0.25 , 0.268612081992],
[ 0.75 , 0.75 , 0.309937017683],
[ 0.25 , 0.25 , 0.373380743099],
[ 0.75 , 0.75 , 0.373380743099],
[ 0.25 , 0.25 , 0.43669037155 ],
[ 0.75 , 0.75 , 0.43669037155 ],
[ 0.25 , 0.25 , 0.5 ],
[ 0.75 , 0.75 , 0.5 ],
[ 0.25 , 0.25 , 0.56330962845 ],
[ 0.75 , 0.75 , 0.56330962845 ],
[ 0.25 , 0.25 , 0.626619256901],
[ 0.75 , 0.75 , 0.626619256901],
[ 0.75 , 0.75 , 0.690062982317],
[ 0.25 , 0.25 , 0.731387918008],
[ 0.75 , 0.75 , 0.772712853699],
[ 0.25 , 0.25 , 0.81403778939 ],
[ 0.75 , 0.75 , 0.855362725081],
[ 0.25 , 0.25 , 0.896687660772],
[ 0.75 , 0.75 , 0.938012596463],
[ 0.25 , 0.25 , 0.979337532154]]
# Set up configuration
bulk_configuration = BulkConfiguration(
bravais_lattice=lattice,
elements=elements,
fractional_coordinates=fractional_coordinates
)
# -------------------------------------------------------------
# Calculator
# -------------------------------------------------------------
# c parameter regions.
c_region_0 = BoxRegion(
0.9,
xmin = 0.0*Angstrom, xmax = 2.866*Angstrom,
ymin = 0.0*Angstrom, ymax = 2.866*Angstrom,
zmin = 0.0*Angstrom, zmax = 12.13674*Angstrom,
)
c_region_1 = BoxRegion(
1.4,
xmin = 0.0*Angstrom, xmax = 2.866*Angstrom,
ymin = 0.0*Angstrom, ymax = 2.866*Angstrom,
zmin = 12.13674*Angstrom, zmax = 22.53966*Angstrom,
)
c_region_2 = BoxRegion(
0.9,
xmin = 0.0*Angstrom, xmax = 2.866*Angstrom,
ymin = 0.0*Angstrom, ymax = 2.866*Angstrom,
zmin = 22.53966*Angstrom, zmax = 34.6764*Angstrom,
)
c_regions = [c_region_0, c_region_1, c_region_2]
# Define the exchange correlation with the c regions.
exchange_correlation=MGGA.TB09LDA(c=c_regions)
# Define the calculator.
calculator = LCAOCalculator(
exchange_correlation=exchange_correlation,
)
# Attach the calculator on the configuration.
bulk_configuration.setCalculator(calculator)
# Calculate the exchange correlation potential.
exchange_correlation_potential = ExchangeCorrelationPotential(bulk_configuration)
# Save on file.
nlsave('Fe-MgO-Fe.nc', exchange_correlation_potential)
It is important that the regions defining the c
parameter cover the entire
simulation volume. The parameter is set to c = 1.0
at all points that do not
fall into any region.
The difference in c
between two adjacent regions should not
be too large, otherwise problems in the SCF convergence may occur. As a rule of
thumb, the jump in the exchange-correlation potential between adjacent regions
should be of the same order as the fluctuations of the exchange-correlation
potential in a region of constant c
.
Potential problems in spin polarized calculations¶
For molecular systems containing hydrogen, the default initial scaled spin values of 1.0 for a spin polarized calculation may cause the density of one of the spin components to be zero. For some of the GGA functionals, relying for their implementation on the Libxc library, there is a known issue for such systems. This has been confirmed using Becke88 exchange, but may also be present in other functionals. The zero-electron density causes numerical errors in the exchange-correlation potential, resulting in ill-behaved convergence. The practical solution to this issue is to explicitly set the initial scaled spin value to 0.999, or use a random initial spin.
Hubbard U¶
Further details of the Hubbard U correction can be found in XC+U mean-field Hubbard term.
DFT-1/2¶
Further details of the DFT-1/2 correction can be found in DFT-1/2 method.
Abbreviations¶
Most common exchange-correlation functionals may be specified through abbreviations
of the format XCFAMILY[U|Half].XCTYPE
, where XCFAMILY
determines the class of
approximation to use, e.g. LDA
or GGA
, and also determines if the calculation
should be spin polarized (collinear or non-collinear), and if it should include
spin-orbit coupling. The table below gives all possibilities for XCFAMILY
without the Hubbard U or DFT-1/2 models.
Non-polarized |
Spin-polarized |
Non-collinear |
Spin-orbit |
---|---|---|---|
LDA |
LSDA |
NCLDA |
SOLDA |
GGA |
SGGA |
NCGGA |
SOGGA |
MGGA |
SMGGA |
NCMGGA |
SOMGGA |
Note
Appending U
or Half
to XCFAMILY
enables the use of the Hubbard U
or DFT-1/2 model, respectively: e.g., SGGAU
for spin-polarized GGA
with Hubbard U parameters, LDAHalf
for non-polarized LDA with DFT-1/2
parameters. Half
may only be appended to XCFAMILY
in the first two
rows of the table (LDA and GGA functionals).
Also note that calculations including spin-orbit coupling, e.g. SOGGA
, are
inherently done using a non-collinear representation of electron spin, like with
NCGGA
, but add extra computational complexity.
The value of XCTYPE
sets the specific parametrization of the functional type
according to the abbreviations given in tables below, e.g. GGA.PBE
for the PBE
variant of GGA. The abbreviations are shorthand notations for a full, predefined
ExchangeCorrelation
class, creating well-known combinations of exchange
and correlation functionals. Therefore, setting
exchange_correlation=LSDA.PZ
is identical to specifying
exchange_correlation=ExchangeCorrelation(
exchange=DiracBloch,
correlation=PerdewZunger,
number_of_spins=2,
)
XCTYPE |
Correlation |
---|---|
Wigner |
Parametrization |
XA |
SlatersXAlpha_c |
RPA |
RandomPhaseApproximation |
HL |
HedinLundqvist |
PZ |
PerdewZunger |
PW |
PerdewWang |
XCTYPE |
Exchange |
Correlation |
---|---|---|
PBE |
PerdewBurkeErnzerhofExchange |
PerdewBurkeErnzerhofCorrelation |
RPBE |
RevisedPerdewBurkeErnzerhofExchange |
PerdewBurkeErnzerhofCorrelation |
PBES |
PerdewBurkeErnzerhofSolids |
PerdewBurkeErnzerhofCorrelationSolids |
BLYP |
Becke88 |
LeeYangParr |
XLYP |
XuGoddard |
LeeYangParr |
PW91 |
PerdewWang91 |
PerdewWang91Correlation |
BPW91 |
Becke88 |
PerdewWang91Correlation |
BP86 |
Becke86 |
Perdew86 |
XCTYPE |
Exchange |
Correlation |
---|---|---|
TB09LDA |
TB09Exchange |
PerdewZunger |
SCAN |
SCANExchange |
SCANCorrelation |
Exchange |
Family |
---|---|
DiracBloch |
LDA |
Exchange1D |
LDA |
Exchange2D |
LDA |
AdamoBarone |
GGA |
ArmientoKummel |
GGA |
ArmientoMattsson |
GGA |
Bayesian |
GGA |
Becke86 |
GGA |
Becke862D |
GGA |
Becke86MGC2D |
GGA |
Becke88 |
GGA |
Becke882D |
GGA |
Becke88DionVanDerWaals |
GGA |
Becke88ProtonTransfer |
GGA |
BerlandHyldgaard |
GGA |
BPCCAC |
GGA |
C09xForRutgersChalmersVdW |
GGA |
ChiodoConstantinFabianoExchange |
GGA |
ConstantinAiryGas |
GGA |
ConstantinFabianoLaricchiaSalaExchange |
GGA |
DelCampoGazquezTrickeyVela |
GGA |
FabianoConstantinSalaExchange |
GGA |
FilatovThiel97 |
GGA |
Gill96 |
GGA |
GradientModifiedBecke86 |
GGA |
HaasTranBlahaSchwarz |
GGA |
HammerHansenNorskov |
GGA |
HandyCohen |
GGA |
HJSB88 |
GGA |
HJSB97X |
GGA |
HJSPBE |
GGA |
HJSPBESOL |
GGA |
KealTozer1 |
GGA |
KressDePristo |
GGA |
LacksGordon93 |
GGA |
LocalAiryGas |
GGA |
Madsen |
GGA |
MinisotaN12Exchange |
GGA |
ModifiedAdamoBarone |
GGA |
ModifiedFilatovThiel97 |
GGA |
OuYangLevy2 |
GGA |
PedrozaSilvaCapelleJSJR |
GGA |
PerdewBurkeErnzerhof2D |
GGA |
PerdewBurkeErnzerhofExchange |
GGA |
PerdewBurkeErnzerhofRegularizedExchange |
GGA |
PerdewBurkeErnzerhofSolids |
GGA |
PerdewBurkeErnzerhofVanDerWaalsK1 |
GGA |
PerdewBurkeErnzerhofVanDerWaalsOpt |
GGA |
PerdewWang86 |
GGA |
PerdewWang86Refitted |
GGA |
PerdewWang91 |
GGA |
RevisedBecke86 |
GGA |
RevisedKressDePristo |
GGA |
RevisedPerdewBurkeErnzerhofExchange |
GGA |
SecondOrderGGA |
GGA |
SecondOrderGGA2011Exchange |
GGA |
ShortRangeGGA |
GGA |
ShortRangeGGASFAT |
GGA |
ShortRangePBE |
GGA |
SwartSolaBickelhauptDispersion |
GGA |
SwartSolaBickelhauptExchange |
GGA |
SwartSolaBickelhauptPBEExchange |
GGA |
TognettiCortonaAdamoExchange |
GGA |
VanLeeuwenBaerends |
GGA |
VanLeeuwenBaerendsModified |
GGA |
VelaMedelTrickey84GE |
GGA |
VelaMedelTrickey84PBE |
GGA |
VelaMedelTrickeyGE |
GGA |
VelaMedelTrickeyPBE |
GGA |
WuCohen |
GGA |
XuGoddard |
GGA |
BalancedLocalization |
MGGA |
GVT4Exchange |
MGGA |
LocalTauApproximation |
MGGA |
M06Local |
MGGA |
M11LExchange |
MGGA |
ManbyKnowles |
MGGA |
ManbyKnowlesB |
MGGA |
MinisotaMN12LExchange |
MGGA |
ModifiedTaoPerdewStaroverovScuseriaExchange |
MGGA |
PerdewKurthZupanBlaha |
MGGA |
SCANExchange |
MGGA |
SunXiaoBulikScuseriaPerdewMS1 |
MGGA |
SunXiaoBulikScuseriaPerdewMS2 |
MGGA |
SunXiaoRuzsinszkyMS0 |
MGGA |
TaoPerdewStaroverovScuseriaExchange |
MGGA |
TaoPerdewStaroverovScuseriaRevisedExchange |
MGGA |
TB09Exchange |
MGGA |
TwoDimensionalPRHG |
MGGA |
TwoDimensionalPRHGCorrected |
MGGA |
Correlation |
Family |
---|---|
Attacalite |
LDA |
CasulaSorellaSenatore1D |
LDA |
Gombas |
LDA |
GunnarssonLundqvist |
LDA |
HedinLundqvist |
LDA |
Loos1D |
LDA |
ModifiedPerdewWang |
LDA |
ModifiedPerdewZunger |
LDA |
OrtizBallone |
LDA |
OrtizBallonePerdewWang |
LDA |
PerdewWang |
LDA |
PerdewWangRPA |
LDA |
PerdewZunger |
LDA |
PittalisRasanenMarques |
LDA |
ProynovSalahubModifiedLSD1 |
LDA |
ProynovSalahubModifiedLSD2 |
LDA |
RagotCortona |
LDA |
RandomPhaseApproximation |
LDA |
SlatersXAlpha |
LDA |
VonBarthHedin |
LDA |
VoskoWilkNussair |
LDA |
VoskoWilkNussair1 |
LDA |
VoskoWilkNussair2 |
LDA |
VoskoWilkNussair3 |
LDA |
VoskoWilkNussair4 |
LDA |
VoskoWilkNussairRPA |
LDA |
WignerParametrization |
LDA |
ArmientoMattssonCorrelation |
GGA |
ChiodoConstantinFabianoCorrelation |
GGA |
CohenHandy |
GGA |
ConstantinFabianoLaricchiaSalaCorrelation |
GGA |
ConstantinFabianoSalaZPBEINT |
GGA |
ConstantinFabianoSalaZPBESOL |
GGA |
ExtendedXuGoddard |
GGA |
FabianoConstantinSalaCorrelation |
GGA |
FilatovThiel97Correlation |
GGA |
LangrethMehl |
GGA |
LeeYangParr |
GGA |
MinisotaN12Correlation |
GGA |
MinisotaN12SXCorrelation |
GGA |
OneParameterB88 |
GGA |
OneParameterG96 |
GGA |
OneParameterPBE |
GGA |
OneParameterXAlpha |
GGA |
PedrozaSilvaCapelleJRGX |
GGA |
Perdew86 |
GGA |
PerdewBurkeErnzerhofCorrelation |
GGA |
PerdewBurkeErnzerhofCorrelationSolids |
GGA |
PerdewBurkeErnzerhofRegularizedCorrelation |
GGA |
PerdewRuszinszkyCsonkaConstantin |
GGA |
PerdewWang91Correlation |
GGA |
SecondOrderGGA2011Correlation |
GGA |
SwartSolaBickelhauptPBE |
GGA |
TognettiCortonaAdamo |
GGA |
TognettiCortonaAdamoRevised |
GGA |
WilsonIvanov |
GGA |
WilsonIvanovInitial |
GGA |
WilsonLevy |
GGA |
BC95Correlation |
MGGA |
CancioChou |
MGGA |
ColleSalvetti |
MGGA |
M06LocalCorrelation |
MGGA |
M11LCorrelation |
MGGA |
MinisotaMN12LCorrelation |
MGGA |
PerdewKurthZupanBlahaCorrelation |
MGGA |
SCANCorrelation |
MGGA |
TaoPerdewStaroverovScuseriaCorrelation |
MGGA |
TaoPerdewStaroverovScuseriaRevisedCorrelation |
MGGA |
VSXCCorrelation |
MGGA |
References¶
ATK uses the Libxc library for efficient implementations of exchange and correlation functionals. In the following tables, we list the parameterization that are available in QuantumATK, along with the corresponding entity used in the Libxc manual, and with references to the original articles.
Keyword |
Libxc entity |
Description and references |
---|---|---|
DiracBloch |
XC_LDA_X |
Exchange. PAM Dirac, (Mathematical) Proceedings of the Cambridge Philosophical Society 26, 376 (1930) F Bloch, Zeitschrift fuer Physik 57, 545 (1929) |
Exchange1D |
XC_LDA_X_1D |
Exchange in 1D N. Helbig, J. I. Fuks, M. Casula, M. J. Verstraete, M. A. L. Marques, I. V. Tokatly and A. Rubio, Phys. Rev. A 83, 032503 (2011) |
Exchange2D |
XC_LDA_X_2D |
Exchange in 2D PAM Dirac, (Mathematical) Proceedings of the Cambridge Philosophical Society 26, 376 (1930) F Bloch, Zeitschrift fuer Physik 57, 545 (1929) |
Keyword |
Libxc entity |
Description and references |
---|---|---|
Attacalite |
XC_LDA_C_2D_AMGB (was XC_LDA_C_AMGB) |
Attacalite et al., for 2D systems C Attacalite et al., Phys. Rev. Lett. 88, 256601 (2002) C Attacalite, PhD thesis |
CasulaSorellaSenatore1D |
XC_LDA_C_1D_CSC (was XC_LDA_C_AMGB) |
Casula, Sorella, and Senatore 1D correlation M Casula, S Sorella, and G Senatore, Phys. Rev. B 74, 245427 (2006) |
Gombas |
XC_LDA_C_GOMBAS (was XC_LDA_C_AMGB) |
Gombas parametrization P. Gombas, Pseudopotentiale (Springer-Verlag, Wien, New York, 1967) |
GunnarssonLundqvist |
XC_LDA_C_GL |
Gunnarson & Lundqvist O Gunnarsson and BI Lundqvist, Phys. Rev. B 13, 4274 (1976) |
HedinLundqvist |
XC_LDA_C_HL |
Hedin & Lundqvist L. Hedin and B.I. Lundqvist, , J. Phys. C 4, 2064 (1971) |
Loos1D |
XC_LDA_C_1D_LOOS |
P-F Loos correlation LDA P-F Loos, arXiv:1207.6849v1 [cond-mat.str-el] (2012) |
ModifiedPerdewWang |
XC_LDA_C_PW_MOD |
Perdew & Wang (Modified) Added extra digits to some constants as in the PBE routine (http://dft.uci.edu/pubs/PBE.asc) JP Perdew and Y Wang, Phys. Rev. B 45, 13244 (1992) |
ModifiedPerdewZunger |
XC_LDA_C_PZ_MOD |
Perdew & Zunger (Modified) Modified to improve the matching between the low and high rs parts Perdew and Zunger, Phys. Rev. B 23, 5048 (1981) |
OrtizBallone |
XC_LDA_C_OB_PZ |
Ortiz & Ballone (PZ). G Ortiz and P Ballone, Phys. Rev. B 50, 1391 (1994) , G Ortiz and P Ballone, Phys. Rev. B 56, 9970(E) (1997) Perdew and Zunger, Phys. Rev. B 23, 5048 (1981) |
OrtizBallonePerdewWang |
XC_LDA_C_OB_PW |
Ortiz & Ballone (PW) G Ortiz and P Ballone, Phys. Rev. B 50, 1391 (1994) G Ortiz and P Ballone, Phys. Rev. B 56, 9970(E) (1997) JP Perdew and Y Wang, Phys. Rev. B 45, 13244 (1992) |
PerdewWang |
XC_LDA_C_PW |
Perdew & Wang JP Perdew and Y Wang, Phys. Rev. B 45, 13244 (1992) |
PerdewWangRPA |
XC_LDA_C_PW_RPA |
Perdew & Wang fit of the RPA JP Perdew and Y Wang, Phys. Rev. B 45, 13244 (1992) |
PerdewZunger |
XC_LDA_C_PZ |
Perdew & Zunger Perdew and Zunger, Phys. Rev. B 23, 5048 (1981) |
PittalisRasanenMarques |
XC_LDA_C_2D_PRM (was XC_LDA_C_PRM08) |
Pittalis, Rasanen & Marques correlation in 2D S Pittalis, E Rasanen, and MAL Marques, Phys. Rev. B 78, 195322 (2008) |
ProynovSalahubModifiedLSD1 |
XC_LDA_C_ML1 (was XC_LDA_C_PRM08) |
Modified LSD (version 1) of Proynov and Salahub EI Proynov and D Salahub, Phys. Rev. B 49, 7874 (1994) |
ProynovSalahubModifiedLSD2 |
XC_LDA_C_ML2 (was XC_LDA_C_PRM08) |
Modified LSD (version 2) of Proynov and Salahub EI Proynov and D Salahub, Phys. Rev. B 49, 7874 (1994) |
RandomPhaseApproximation |
XC_LDA_C_RPA |
Random Phase Approximation M Gell-Mann and KA Brueckner, Phys. Rev. 106, 364 (1957) |
RagotCortona |
XC_LDA_C_RC04 |
Ragot-Cortona S Ragot and P Cortona, J. Chem. Phys. 121, 7671 (2004) |
SlatersXAlpha |
XC_LDA_C_XALPHA |
Slater’s X-alpha JC Slater, Phys. Rev. 81, 385 (1951) |
VonBarthHedin |
XC_LDA_C_vBH |
von Barth & Hedin U von Barth and L Hedin, J. Phys. C: Solid State Phys. 5, 1629 (1972) |
VoskoWilkNussair |
XC_LDA_C_VWN |
Vosko, Wilk, & Nussair SH Vosko, L Wilk, and M Nusair, Can. J. Phys. 58, 1200 (1980) |
VoskoWilkNussair1 |
XC_LDA_C_VWN_1 |
Vosko, Wilk, & Nussair (1) SH Vosko, L Wilk, and M Nusair, Can. J. Phys. 58, 1200 (1980) |
VoskoWilkNussair2 |
XC_LDA_C_VWN_2 |
Vosko, Wilk, & Nussair (2) SH Vosko, L Wilk, and M Nusair, Can. J. Phys. 58, 1200 (1980) |
VoskoWilkNussair3 |
XC_LDA_C_VWN_3 |
Vosko, Wilk, & Nussair (3) SH Vosko, L Wilk, and M Nusair, Can. J. Phys. 58, 1200 (1980) |
VoskoWilkNussair4 |
XC_LDA_C_VWN_4 |
Vosko, Wilk, & Nussair (4) SH Vosko, L Wilk, and M Nusair, Can. J. Phys. 58, 1200 (1980) |
VoskoWilkNussairRPA |
XC_LDA_C_VWN_RPA |
Vosko, Wilk, & Nussair (RPA) SH Vosko, L Wilk, and M Nusair, Can. J. Phys. 58, 1200 (1980) |
WignerParametrization |
XC_LDA_C_WIGNER |
Wigner parametrization EP Wigner, Trans. Faraday Soc. 34, 678 (1938) |
Keyword |
Libxc entity |
Description and references |
---|---|---|
PerdewZungerCorrelation |
XC_MGGA_C_M06_L |
M06-Local functional of Minnesota Perdew and Zunger, Phys. Rev. B 23, 5048 (1981) Reused from PerdewZunger class in order to allow inclusion in MGGA. |
SCANCorrelation |
XC_MGGA_C_SCAN |
J. Sun, A. Ruzsinszky, and J. P. Perdew, Phys. Rev. Lett. 115, 036402 (2015) |
TaoPerdewStaroverovScuseriaCorrelation |
XC_MGGA_C_TPSS |
Perdew, Tao, Staroverov & Scuseria correlation JP Perdew, J Tao, VN Staroverov and GE Scuseria, Phys. Rev. Lett. 91, 146401 (2003) JP Perdew, J Tao, VN Staroverov and GE Scuseria, J. Chem. Phys. 120, 6898 (2004) |