Parametrizations: Components

Contents

Parametrizations: Components#

Elements#

Parametrization: Element#

Element parametrization record containing the adjustable parameters for each species.

class dxtb._src.param.element.Element(**data)[source]#

Bases: BaseModel

Representation of the parameters for a species.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
arep: float#

Repulsion exponent.

dkernel: float#

Dipolar exchange-correlation kernel.

en: float#

Electronegativity.

gam: float#

Chemical hardness / Hubbard parameter.

gam3: float#

Atomic Hubbard derivative.

kcn: List[float]#

CN dependent shift of the self energy for each shell

levels: List[float]#

Atomic level energies for each shell

lgam: List[float]#

Relative chemical hardness for each shell.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

mprad: float#

Offset radius for the damping in the AES energy.

mpvcn: float#

Shift value in the damping in the AES energy. Only used if mprad != 0.

ngauss: List[int]#

Number of primitive Gaussian functions used in the STO-NG expansion for each shell.

qkernel: float#

Quadrupolar exchange-correlation kernel.

refocc: List[float]#

Reference occupation for each shell

shells: List[str]#

Included shells with principal quantum number and angular momentum.

shpoly: List[float]#

Polynomial enhancement for Hamiltonian elements

slater: List[float]#

Slater exponents of the STO-NG functions for each shell

xbond: float#

Halogen bonding strength.

zeff: float#

Effective nuclear charge used in repulsion.

Hamiltonian#

Parametrization: Hamiltonian#

Definition of the global core Hamiltonian parameters.

The core Hamiltonian is rescaling the shell-blocks of the overlap integrals formed over the basis set by the average of the atomic self-energies and an additional distance dependent function formed from the element parametrization.

class dxtb._src.param.hamiltonian.Hamiltonian(**data)[source]#

Bases: BaseModel

Possible Hamiltonian parametrizations. Currently only the xTB Hamiltonian is supported.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

xtb (XTBHamiltonian)

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

xtb: XTBHamiltonian#

Data for the xTB Hamiltonian

class dxtb._src.param.hamiltonian.XTBHamiltonian(**data)[source]#

Bases: BaseModel

Global parameters for the formation of the core Hamiltonian from the overlap integrals. Contains the required atomic and shell dependent scaling parameters to obtain the off-site scaling functions independent of the self-energy and the distance polynomial.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
cn: Optional[str]#

Local environment descriptor for shifting the atomic self-energies

enscale: float#

Electronegativity scaling factor for off-site valence blocks

kpair: Dict[str, float]#

Atom-pair dependent scaling factor for off-site valence blocks

kpol: float#

Scaling factor for polarization functions

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

shell: Dict[str, float]#

Shell-pair dependent scaling factor for off-site blocks

wexp: float#

Exponent of the orbital exponent dependent off-site scaling factor

Interactions#

Parametrization: Electrostatics (2nd order)#

Definition of the isotropic second-order charge interactions.

class dxtb._src.param.charge.Charge(**data)[source]#

Bases: BaseModel

Possible charge parametrizations. Currently only the interaction kernel for the Klopman-Ohno electrostatics (effective) is supported.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

effective (ChargeEffective)

effective: ChargeEffective#

Klopman-Ohno electrostatics.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class dxtb._src.param.charge.ChargeEffective(**data)[source]#

Bases: BaseModel

Representation of the isotropic second-order charge interactions for a parametrization.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
average: str#

Averaging function for Hubbard parameter.

gexp: float#

Exponent of Coulomb kernel.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Parametrization: Electrostatics (3rd order)#

Definition of the isotropic third-order onsite correction.

class dxtb._src.param.thirdorder.ThirdOrder(**data)[source]#

Bases: BaseModel

Representation of the isotropic third-order onsite correction.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

shell (Literal[False] | ~dxtb._src.param.thirdorder.ThirdOrderShell)

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

shell: Union[Literal[False], ThirdOrderShell]#

Whether the third order contribution is shell-dependent or only atomwise.

class dxtb._src.param.thirdorder.ThirdOrderShell(**data)[source]#

Bases: BaseModel

Representation of shell-resolved third-order electrostatics.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
d: float#

Scaling factor for d-orbitals.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

p: float#

Scaling factor for p-orbitals.

s: float#

Scaling factor for s-orbitals.

Classical#

Parametrization: Dispersion#

Definitions of dispersion contributions. Contains the D3Model and D4Model representing the DFT-D3(BJ) and DFT-D4 dispersion corrections, respectively. For details on there implementation, see the tad-dftd3 and tad-dftd4 libraries.

class dxtb._src.param.dispersion.D3Model(**data)[source]#

Bases: BaseModel

Representation of the DFT-D3(BJ) contribution for a parametrization.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
a1: float#

Becke-Johnson damping parameter.

a2: float#

Becke-Johnson damping parameter.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

s6: float#

Scaling factor for multipolar (dipole-dipole contribution) terms.

s8: float#

Scaling factor for multipolar (dipole-quadrupole contribution) terms.

s9: float#

Scaling factor for the many-body dispersion term (ATM/RPA-like).

class dxtb._src.param.dispersion.D4Model(**data)[source]#

Bases: BaseModel

Representation of the DFT-D4 contribution for a parametrization.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
a1: float#

Becke-Johnson damping parameter.

a2: float#

Becke-Johnson damping parameter.

alp: float#

Exponent of zero damping function in the ATM term.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

s10: float#

Scaling factor for quadrupole-quadrupole term.

s6: float#

Scaling factor for multipolar (dipole-dipole contribution) terms

s8: float#

Scaling factor for multipolar (dipole-quadrupole contribution) terms

s9: float#

Scaling factor for the many-body dispersion term (ATM/RPA-like).

sc: bool#

Whether the dispersion correctio is used self-consistently or not.

class dxtb._src.param.dispersion.Dispersion(**data)[source]#

Bases: BaseModel

Possible dispersion parametrizations. Currently, the DFT-D3(BJ) and DFT-D4 methods are supported.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
d3: Optional[D3Model]#

D3 model for the dispersion.

d4: Optional[D4Model]#

D4 model for the dispersion.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Parametrization: Halogen#

Definitions for halogen binding corrections. Currently, only GFN1-xTB’s classical halogen bond correction is defined.

class dxtb._src.param.halogen.ClassicalHalogen(**data)[source]#

Bases: BaseModel

Representation of the classical geometry dependent halogen-bond (XB) correction for a parametrization.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
damping: float#

Damping factor of attractive contribution in Lennard-Jones-like potential.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

rscale: float#

Global scaling factor for covalent radii of AX bond.

class dxtb._src.param.halogen.Halogen(**data)[source]#

Bases: BaseModel

Possible halogen correction parametrizations.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

classical (ClassicalHalogen)

classical: ClassicalHalogen#

Classical halogen-bond correction used in GFN1-xTB.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Parametrization: Repulsion#

Definition of the repulsion contribution. The EffectiveRepulsion is used in GFN1-xTB and GFN2-xTB.

class dxtb._src.param.repulsion.EffectiveRepulsion(**data)[source]#

Bases: BaseModel

Representation of the repulsion contribution for a parametrization.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
kexp: float#

Scaling of the interatomic distance in the exponential damping function of the repulsion energy.

klight: Optional[float]#

Scaling of the interatomic distance in the exponential damping function of the repulsion energy for light elements, i.e., H and He (only GFN2).

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class dxtb._src.param.repulsion.Repulsion(**data)[source]#

Bases: BaseModel

Possible repulsion parametrizations. Currently only the GFN1-xTB effective repulsion is supported.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:

effective (EffectiveRepulsion)

effective: EffectiveRepulsion#

Name of the represented method

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

Misc#

Parametrizations: Meta#

Meta data associated with a parametrization. Mainly used for identification of data format.

class dxtb._src.param.meta.Meta(**data)[source]#

Bases: BaseModel

Representation of the meta data for a parametrization.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Parameters:
  • name (str | None)

  • reference (str | None)

  • version (int)

  • format (int | None)

format: Optional[int]#

Format version of the parametrization data.

model_config: ClassVar[ConfigDict] = {}#

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: Optional[str]#

Name of the represented method.

reference: Optional[str]#

References relevant for the parametrization records.

version: int#

Version of the represented method.