DDHCustomExchangeCorrelation¶
- class DDHCustomExchangeCorrelation(screening_length=PhysicalQuantity(0.11, 1 / Bohr), exx_fraction=0.25, number_of_spins=1, spin_orbit=None, ddh_parameters=None, local_ddh=None, ddh_variance=None, vacuum_exx_fraction=None, metallic_correction=None)¶
Initialize the base object with the correct number of spins, and with the only Exchange and Correlation currently allowed for this class, i.e. the HSE ones.
- Parameters:
screening_length (PhysicalQuantity of type inverse length) – The screening length defined for the coulomb kernel. Default: The HSE06 value of
0.11 * Bohr**-1
.exx_fraction (float) – The fraction of exact exchange to be added in with the PBE exchange Default: The HSE06 value of 0.25.
number_of_spins (
1
|2
) – The number of spins to be used in the calculation. Default:1
.spin_orbit (bool) – If
True
spin-orbit coupling is considered. Default:False
.ddh_parameters (list) – The dielectric dependent hybrid functional parameters.
local_ddh (bool) – If
True
the local algorithm is used. Default:False
.ddh_variance (float) – The gaussian variance of the local dielectric estimator. Default: 2.12.
vacuum_exx_fraction (float) – The fraction of exact exchange to be used in vacuum Default: The HSE06 value of 0.25.
- 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
- defaultDielectricDependentHybridFractionVariance()¶
- Returns:
The default gaussian variance of the local dielectric estimator.
- Return type:
float
- defaultExactExchangeFraction()¶
- Returns:
The default exact exchange fraction that is mixed in with PBE exchange.
- Return type:
float
- defaultScreeningLength()¶
- Returns:
The default screening length defined for the coulomb kernel.
- Return type:
PhysicalQuantity of type inverse length
- densityCheckThreshold()¶
- Returns:
The density safe guard.
- Return type:
float
- dftHalfEnabled()¶
- Returns:
Whether DFT-1/2 is enabled.
- Type:
bool
- dielectricDependentHybridFraction(dielectric_estimator)¶
Determines the dielectric dependent hybrid functional fraction.
- Parameters:
dielectric_estimator (float) – The dielectric estimator.
- Returns:
The exact exchange fraction.
- Return type:
float
- dielectricDependentHybridFractionVariance()¶
- Returns:
The gaussian variance of the local dielectric estimator.
- Return type:
float
- dielectricDependentHybridFunctional()¶
Overwrite base class method.
- Returns:
True, then a dielectric dependent hybrid functional is used.
- Return type:
dict
- dielectricDependentHybridParameters()¶
- Returns:
The dielectric dependent hybrid hybrid parameters.
- Return type:
list
- dielectricDependentHybridVacuumEstimator()¶
- Returns:
The estimator value corresponding to the vacuum exx fraction.
- Return type:
float
- dielectricDependentHybridVacuumExactExchangeFraction()¶
- Returns:
The fraction of exact exchange to be used in vacuum.
- Return type:
float
- exactExchangeFraction()¶
- Returns:
The part of exact exchange that is mixed in with PBE exchange.
- Return type:
float
- exchange()¶
- Returns:
The exchange functional class
- Return type:
Exchange
- hubbardTerm()¶
- Returns:
The Hubbard term used.
- Return type:
Onsite
|OnsiteShell
|Dual
|DualShell
| None
- localDielectricDependentHybrid()¶
- Returns:
True, then local dielectric dependent hybrid functional algorihm.
- Return type:
bool
- 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
- static metallicCorrection()¶
- Returns:
Always false, metallic corrections use a subclass.
- Return type:
bool
- 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
- screeningLength()¶
- Returns:
The screening length defined for the coulomb kernel.
- Return type:
PhysicalQuantity of type inverse length
- 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¶
Defining the original dielectric dependent hybrid functional defined in [1]:
exchange_correlation = DDHCustomExchangeCorrelation(
screening_length=0.11 * Bohr**-1,
exx_fraction=0.25,
number_of_spins=1,
ddh_parameters=(0.121983, 0.0, 0.0, 0.0, 0.130711)
)
where the exact exchange mixing parameter is obtained as
Performing a calculation using the local spatial dependent dielectric dependent hybrid functional defined in [2] specify:
exchange_correlation = DDHCustomExchangeCorrelation(
screening_length=0.11 * Bohr**-1,
exx_fraction=0.25,
number_of_spins=1,
ddh_parameters=(0.121983, 0.0, 0.0, 0.0, 0.130711)
local_ddh=True,
ddh_variance=2.12
)