aiida_quantumespresso.data.hubbard_structure
#
Data plugin that represents a crystal structure with Hubbard parameters.
Module Contents#
Classes#
Structure data containing code agnostic info on Hubbard parameters. |
- class aiida_quantumespresso.data.hubbard_structure.HubbardStructureData(cell: List[List[float]], sites: List[Tuple[str, str, Tuple[float, float, float]]], pbc: Tuple[bool, bool, bool] = (True, True, True), hubbard: aiida_quantumespresso.common.hubbard.Hubbard = None, **kwargs)[source]#
Bases:
aiida.orm.StructureData
Structure data containing code agnostic info on Hubbard parameters.
- property hubbard: aiida_quantumespresso.common.hubbard.Hubbard[source]#
Get the Hubbard instance.
- Returns:
a
Hubbard
instance.
- static from_structure(structure: aiida.orm.StructureData, hubbard: aiida_quantumespresso.common.hubbard.Hubbard | None = None)[source]#
Return an instance of
HubbardStructureData
from aStructureData
node.- Parameters:
structure –
aiida.orm.StructureData
instancehubbard –
Hubbard
instance
- Returns:
HubbardStructureData
instance
- append_hubbard_parameter(atom_index: int, atom_manifold: str, neighbour_index: int, neighbour_manifold: str, value: float, translation: Tuple[int, int, int] = None, hubbard_type: str = 'Ueff')[source]#
Append a
HubbardParameters
.- Parameters:
atom_index – atom index in unitcell
atom_manifold – atomic manifold (e.g. 3d, 3d-2p)
neighbour_index – neighbouring atom index in unitcell
neighbour_manifold – neighbour manifold (e.g. 3d, 3d-2p)
value – value of the Hubbard parameter, in eV
translation – (3,) list of ints, describing the translation vector associated with the neighbour atom, defaults to None
hubbard_type – hubbard type (U, V, J, …), defaults to ‘Ueff’ (see
Hubbard
for full allowed values)
- pop_hubbard_parameters(index: int)[source]#
Pop Hubbard parameters in the list.
- Parameters:
index – index of the Hubbard parameters to pop
- initialize_intersites_hubbard(atom_name: str, atom_manifold: str, neighbour_name: str, neighbour_manifold: str, value: float = 1e-08, hubbard_type: str = 'V', use_kinds: bool = True)[source]#
Initialize and append intersite Hubbard values between an atom and its neighbour(s).
Note
this only initialize the value between the first neighbour. In case use_kinds is False, all the possible combination of couples having kind name equal to symbol are initialized.
- Parameters:
atom_name – atom name in unitcell
atom_manifold – atomic manifold (e.g. 3d, 3d-2p)
neighbour_index – neighbouring atom name in unitcell
neighbour_manifold – neighbour manifold (e.g. 3d, 3d-2p)
value – value of the Hubbard parameter, in eV
hubbard_type – hubbard type (U, V, J, …), defaults to ‘V’ (see
Hubbard
for full allowed values)use_kinds – whether to use kinds for initializing the parameters; when False, it initializes all the
Kinds
matching theatom_name
- initialize_onsites_hubbard(atom_name: str, atom_manifold: str, value: float = 1e-08, hubbard_type: str = 'Ueff', use_kinds: bool = True)[source]#
Initialize and append onsite Hubbard values of atoms with specific name.
- Parameters:
atom_name – atom name in unitcell
atom_manifold – atomic manifold (e.g. 3d, 3d-2p)
value – value of the Hubbard parameter, in eV
hubbard_type – hubbard type (U, J, …), defaults to ‘Ueff’ (see
Hubbard
for full allowed values)use_kinds – whether to use kinds for initializing the parameters; when False, it initializes all the
Kinds
matching theatom_name