tblite
Light-weight tight-binding framework
|
Specification of the effective Hamiltonian. More...
Public Member Functions | |
procedure(get_selfenergy), deferred | get_selfenergy (self, mol, bas, selfenergy) |
Generator for the self energy / atomic levels of the Hamiltonian. | |
procedure | get_cnshift (self, mol, bas, kcn) |
Generator for the coordination number dependent shift of the self energy. | |
procedure | get_cnenshift (self, mol, bas, kcn_en) |
Generator for the electronegativity scaled coordination number dependent shift of the self energy. | |
procedure | get_q1shift (self, mol, bas, kq1) |
Generator for the linear partial charge dependent shift of the self energy. | |
procedure | get_q2shift (self, mol, bas, kq2) |
Generator for the quadratic partial charge dependent shift of the self energy. | |
procedure(get_hscale), deferred | get_hscale (self, mol, bas, hscale) |
Generator for the enhancement factor to for scaling Hamiltonian elements. | |
procedure | get_rad (self, mol, bas, rad) |
Generator for the atomic radii used in the distant dependent scaling. | |
procedure(get_shpoly), deferred | get_shpoly (self, mol, bas, shpoly) |
Generator for the polynomial parameters for the distant dependent scaling. | |
procedure(get_reference_occ), deferred | get_reference_occ (self, mol, bas, refocc) |
Generator for the reference occupation numbers of the atoms. | |
procedure | get_diat_scale (self, mol, bas, ksig, kpi, kdel) |
Generator for the diatomic frame scaling factors. | |
Specification of the effective Hamiltonian.
An instance of the specification is consumed by the constructor of the Hamiltonian to generate the respective entries in the derived type.
procedure tblite_xtb_spec::tb_h0spec::get_cnenshift | ( | class(tb_h0spec), intent(in) | self, |
type(structure_type), intent(in) | mol, | ||
type(basis_type), intent(in) | bas, | ||
real(wp), dimension(:, :), intent(out) | kcn_en ) |
Generator for the electronegativity scaled coordination number dependent shift of the self energy.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | kcn_en | Coordination number dependent shift |
procedure tblite_xtb_spec::tb_h0spec::get_cnshift | ( | class(tb_h0spec), intent(in) | self, |
type(structure_type), intent(in) | mol, | ||
type(basis_type), intent(in) | bas, | ||
real(wp), dimension(:, :), intent(out) | kcn ) |
Generator for the coordination number dependent shift of the self energy.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | kcn | Coordination number dependent shift |
procedure tblite_xtb_spec::tb_h0spec::get_diat_scale | ( | class(tb_h0spec), intent(in) | self, |
type(structure_type), intent(in) | mol, | ||
type(basis_type), intent(in) | bas, | ||
real(wp), dimension(:, :), intent(out) | ksig, | ||
real(wp), dimension(:, :), intent(out) | kpi, | ||
real(wp), dimension(:, :), intent(out) | kdel ) |
Generator for the diatomic frame scaling factors.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | ksig | Diatomic frame scaling of sigma bonding contribution |
[out] | kpi | Diatomic frame scaling of pi bonding contribution |
[out] | kdel | Diatomic frame scaling of delta bonding contribution |
|
pure virtual |
Generator for the enhancement factor to for scaling Hamiltonian elements.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | hscale | Scaling parameters for the Hamiltonian elements |
procedure tblite_xtb_spec::tb_h0spec::get_q1shift | ( | class(tb_h0spec), intent(in) | self, |
type(structure_type), intent(in) | mol, | ||
type(basis_type), intent(in) | bas, | ||
real(wp), dimension(:, :), intent(out) | kq1 ) |
Generator for the linear partial charge dependent shift of the self energy.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | kq1 | Linear partial charge dependent shift |
procedure tblite_xtb_spec::tb_h0spec::get_q2shift | ( | class(tb_h0spec), intent(in) | self, |
type(structure_type), intent(in) | mol, | ||
type(basis_type), intent(in) | bas, | ||
real(wp), dimension(:, :), intent(out) | kq2 ) |
Generator for the quadratic partial charge dependent shift of the self energy.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | kq2 | Quadratic partial charge dependent shift |
procedure tblite_xtb_spec::tb_h0spec::get_rad | ( | class(tb_h0spec), intent(in) | self, |
type(structure_type), intent(in) | mol, | ||
type(basis_type), intent(in) | bas, | ||
real(wp), dimension(:), intent(out) | rad ) |
Generator for the atomic radii used in the distant dependent scaling.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | rad | Atomic radii |
|
pure virtual |
Generator for the reference occupation numbers of the atoms.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | refocc | Reference occupation numbers |
|
pure virtual |
Generator for the self energy / atomic levels of the Hamiltonian.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | selfenergy | Self energy / atomic levels |
|
pure virtual |
Generator for the polynomial parameters for the distant dependent scaling.
[in] | self | Instance of the Hamiltonian specification |
[in] | mol | Molecular structure data |
[in] | bas | Basis set information |
[out] | shpoly | Polynomial parameters for distant dependent scaleing |