aiida_quantumespresso.common.hubbard
#
Utility class and functions for HubbardStructureData.
Module Contents#
Classes#
Class for describing onsite and intersite Hubbard interaction parameters. |
|
Class for complete description of Hubbard interactions. |
- class aiida_quantumespresso.common.hubbard.HubbardParameters(/, **data: Any)[source]#
Bases:
pydantic.BaseModel
Class for describing onsite and intersite Hubbard interaction parameters.
- atom_manifold: constr(strip_whitespace=True, to_lower=True, min_length=2, max_length=5)[source]#
Atom manifold (syntax is 3d, 3d-2p).
- neighbour_manifold: constr(strip_whitespace=True, to_lower=True, min_length=2, max_length=5)[source]#
Atom manifold (syntax is 3d, 3d-2p).
- translation: Tuple[conint(strict=True), conint(strict=True), conint(strict=True)][source]#
Translation vector referring to the neighbour atom, (3,) shape list of ints.
- hubbard_type: Literal[Ueff, U, V, J, B, E2, E3][source]#
Type of the Hubbard parameters used (Ueff, U, V, J, B, E2, E3).
- check_manifolds(value)[source]#
Check the validity of the manifold input.
- Allowed formats are:
{N}{L} (2 characters)
{N1}{L1}-{N2}{L2} (5 characters)
N = quantum number (1,2,3,…); L = orbital letter (s,p,d,f,g,h)
- to_tuple() Tuple[int, str, int, str, float, Tuple[int, int, int], str] [source]#
Return the parameters as a tuple.
- The parameters have the following order:
atom_index
atom_manifold
neighbour_index
neighbour_manifold
value
translationr
hubbard_type
- static from_tuple(hubbard_parameters: Tuple[int, str, int, str, float, Tuple[int, int, int], str])[source]#
Return a
HubbardParameters
instance from a list.- The parameters within the list must have the following order:
atom_index
atom_manifold
neighbour_index
neighbour_manifold
value
translation
hubbard_type
- class aiida_quantumespresso.common.hubbard.Hubbard(/, **data: Any)[source]#
Bases:
pydantic.BaseModel
Class for complete description of Hubbard interactions.
- parameters: List[HubbardParameters][source]#
List of
HubbardParameters
.
- projectors: Literal[atomic, ortho-atomic, norm-atomic, wannier-functions, pseudo-potentials] = 'ortho-atomic'[source]#
Name of the projectors used. Allowed values are: ‘atomic’, ‘ortho-atomic’, ‘norm-atomic’, ‘wannier-functions’, ‘pseudo-potentials’.
- formulation: Literal[dudarev, liechtenstein] = 'dudarev'[source]#
Hubbard formulation used. Allowed values are: ‘dudarev’, liechtenstein.
- to_list() List[Tuple[int, str, int, str, float, Tuple[int, int, int], str]] [source]#
Return the Hubbard parameters as a list of lists.
- The parameters have the following order within each list:
atom_index
atom_manifold
neighbour_index
neighbour_manifold
value
translation
hubbard_type
- static from_list(parameters: List[Tuple[int, str, int, str, float, Tuple[int, int, int], str]], projectors: str = 'ortho-atomic', formulation: str = 'dudarev')[source]#
Return a
Hubbard()
instance from a list of tuples.- Each list must contain the hubbard parameters in the following order:
atom_index
atom_manifold
neighbour_index
neighbour_manifold
value
translation
hubbard_type