tblite
Light-weight tight-binding framework
Loading...
Searching...
No Matches
tblite_xtb_spec::tb_h0spec Type Referenceabstract

Specification of the effective Hamiltonian. More...

Inheritance diagram for tblite_xtb_spec::tb_h0spec:
tblite_ceh_ceh::ceh_h0spec tblite_xtb_calculator::param_h0spec tblite_xtb_gfn1::gfn1_h0spec tblite_xtb_gfn2::gfn2_h0spec tblite_xtb_ipea1::ipea1_h0spec

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.
 

Detailed Description

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.

Member Function/Subroutine Documentation

◆ get_cnenshift()

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.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]kcn_enCoordination number dependent shift

◆ get_cnshift()

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.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]kcnCoordination number dependent shift

◆ get_diat_scale()

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.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]ksigDiatomic frame scaling of sigma bonding contribution
[out]kpiDiatomic frame scaling of pi bonding contribution
[out]kdelDiatomic frame scaling of delta bonding contribution

◆ get_hscale()

procedure(get_hscale), deferred tblite_xtb_spec::tb_h0spec::get_hscale ( class(tb_h0spec), intent(in) self,
type(structure_type), intent(in) mol,
type(basis_type), intent(in) bas,
real(wp), dimension(:, :, :, :), intent(out) hscale )
pure virtual

Generator for the enhancement factor to for scaling Hamiltonian elements.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]hscaleScaling parameters for the Hamiltonian elements

◆ get_q1shift()

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.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]kq1Linear partial charge dependent shift

◆ get_q2shift()

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.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]kq2Quadratic partial charge dependent shift

◆ get_rad()

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.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]radAtomic radii

◆ get_reference_occ()

procedure(get_reference_occ), deferred tblite_xtb_spec::tb_h0spec::get_reference_occ ( class(tb_h0spec), intent(in) self,
type(structure_type), intent(in) mol,
type(basis_type), intent(in) bas,
real(wp), dimension(:, :), intent(out) refocc )
pure virtual

Generator for the reference occupation numbers of the atoms.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]refoccReference occupation numbers

◆ get_selfenergy()

procedure(get_selfenergy), deferred tblite_xtb_spec::tb_h0spec::get_selfenergy ( class(tb_h0spec), intent(in) self,
type(structure_type), intent(in) mol,
type(basis_type), intent(in) bas,
real(wp), dimension(:, :), intent(out) selfenergy )
pure virtual

Generator for the self energy / atomic levels of the Hamiltonian.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]selfenergySelf energy / atomic levels

◆ get_shpoly()

procedure(get_shpoly), deferred tblite_xtb_spec::tb_h0spec::get_shpoly ( class(tb_h0spec), intent(in) self,
type(structure_type), intent(in) mol,
type(basis_type), intent(in) bas,
real(wp), dimension(:, :), intent(out) shpoly )
pure virtual

Generator for the polynomial parameters for the distant dependent scaling.

Parameters
[in]selfInstance of the Hamiltonian specification
[in]molMolecular structure data
[in]basBasis set information
[out]shpolyPolynomial parameters for distant dependent scaleing

The documentation for this type was generated from the following file: