tblite
Light-weight tight-binding framework
Loading...
Searching...
No Matches
tblite_wignerseitz Module Reference

Implementation of finding the relevant nearest neighbours in a Wigner-Seitz cell. More...

Data Types

type  wignerseitz_cell
 Information on Wigner-Seitz images. More...

Functions/Subroutines

subroutine, public new_wignerseitz_cell (self, mol)
subroutine, public get_wignerseitz_weights (self, jat, iat, rij, weight, dwdr, dwdl)
 Evaluate smooth weights for competing nearest Wigner-Seitz images.

Variables

real(wp), parameter thr = sqrt(epsilon(0.0_wp))
 Small cutoff threshold to create only closest cells.

Detailed Description

Implementation of finding the relevant nearest neighbours in a Wigner-Seitz cell.

Function/Subroutine Documentation

◆ get_wignerseitz_weights()

subroutine, public tblite_wignerseitz::get_wignerseitz_weights ( type(wignerseitz_cell), intent(in) self,
integer, intent(in) jat,
integer, intent(in) iat,
real(wp), dimension(3), intent(in) rij,
real(wp), dimension(:), intent(out) weight,
real(wp), dimension(:, :), intent(out), optional dwdr,
real(wp), dimension(:, :, :), intent(out), optional dwdl )

Evaluate smooth weights for competing nearest Wigner-Seitz images.

Parameters
[in]selfWigner-Seitz cell instance
[in]jatPair indices in the Wigner-Seitz image arrays
[in]iatPair indices in the Wigner-Seitz image arrays
[in]rijCartesian pair vector
[out]weightNormalized image weights
[out]dwdrWeight derivatives with respect to the pair vector
[out]dwdlWeight derivatives with respect to strain

◆ new_wignerseitz_cell()

subroutine, public tblite_wignerseitz::new_wignerseitz_cell ( type(wignerseitz_cell), intent(out) self,
type(structure_type), intent(in) mol )
Parameters
[out]selfWigner-Seitz cell instance
[in]molMolecular structure data