HuckelHamiltonianParametrization¶
- class HuckelHamiltonianParametrization(basis_set=None, weighting_scheme=None)¶
A class representing the hamiltonian parametrization for a Huckel type model
- Parameters:
basis_set (list of
HuckelBasisParameters
) – An object describing the basis set used for the Extended-Huckel calculation. Default:HoffmannHuckelParameters.All
weighting_scheme (HoffmannWeighting | WolfsbergWeighting) – The weighting scheme used for calculating off-site matrix elements of the Huckel Hamiltonian. Default: WolfsbergWeighting
- basisSet()¶
- Returns:
The basis set.
- Return type:
list of
HuckelBasisParameters
- pairPotentials()¶
Return the pair potentials. If no pair potentials are available, it returns
None
.- Returns:
The pair potentials.
- Return type:
- usingOrthogonalBasis()¶
Routine for determining if the Hamiltonian parametrization is using an orthogonal basis set. Always False for Huckel.
- weightingScheme()¶
- Returns:
The weighting scheme used for calculating off-site matrix elements of the Huckel Hamiltonian.
- Return type:
Usage Examples¶
The following example demonstrates some of the different basis sets and weighting schemes available for a Huckel-type Hamiltonian parametrization.
# Create a Huckel Hamiltonian parametrization with the default
# basis set and the Hoffmann weighting scheme.
hamiltonian_parametrization = HuckelHamiltonianParametrization(
weighting_scheme=HoffmannWeighting)
# Default weighting and a custom basis set: in this case
# the Hoffmann Carbon basis and Cerda Carbon graphite basis.
basis_set = [
HoffmannHuckelParameters.Carbon_Basis,
CerdaHuckelParameters.Carbon_graphite_Basis
]
hamiltonian_parametrization = HuckelHamiltonianParametrization(
basis_set=basis_set)
# Custom basis set: Hoffmann Hydrogen with a custom vacuum level
# of 1.0 eV and Muller Silicon with a custom vacuum level of 0.0 eV.
basis_set = [
HoffmannHuckelParameters.Hydrogen_Basis(vacuum_level=1.0 * eV),
MullerHuckelParameters.Silicon_Basis(vacuum_level=0.0 * eV)
]
hamiltonian_parametrization = HuckelHamiltonianParametrization(
basis_set=basis_set)
Notes¶
For the details of the weighting schemes used for the extended-Hückel model, see the chapter on Weighting schemes. Tables with the available basis sets can be found here: Extended Hückel basis sets.
See also Parameters for the extended Hückel method for a more general description of the parameters in the extended-Hückel model.