pengwann.descriptors.DescriptorCalculator.get_coefficient_matrix#

descriptors.DescriptorCalculator.get_coefficient_matrix(i, bl_vector)#

Calculate the coefficient matrix for a given Wannier function.

Parameters:
iint

The index identifying the target Wannier function.

bl_vectorndarray of np.int_

The Bravais lattice vector specifying the translation of Wannier function i relative to its home cell.

Returns:
cndarray of complex

The coefficient matrix.

Notes

The coefficient matrix \(C^{\alpha}\) for a given Wannier function \(\ket{w_{iR}} = \ket{w_{\alpha}}\) has dimensions of num_kpoints x num_bands. Each element is constructed as [1]

\[C^{\alpha}_{nk} = \exp[ik \cdot R]\left(U^{k}_{ni}\right)^{*},\]

where \(\alpha\) combines the values of the i and bl_vector arguments (it is a combined index that identifies a particular Wannier function), \(n\) is a band index, \(k\) is a k-point and \(U\) refers to the unitary matrices that mix Bloch vectors to produce Wannier functions. Note that within the exponential term, \(i = \sqrt{-1}\), whereas it acts as a Wannier function index with respect to \(U\).

References