w90_sitesym Module

Routines to impose the site symmetry during minimisation of spread


Uses

  • module~~w90_sitesym~~UsesGraph module~w90_sitesym w90_sitesym module~w90_constants w90_constants module~w90_sitesym->module~w90_constants module~w90_io w90_io module~w90_sitesym->module~w90_io module~w90_io->module~w90_constants

Used by

  • module~~w90_sitesym~~UsedByGraph module~w90_sitesym w90_sitesym module~w90_disentangle w90_disentangle module~w90_disentangle->module~w90_sitesym proc~wann_main wann_main proc~wann_main->module~w90_sitesym proc~dis_extract dis_extract proc~dis_extract->module~w90_sitesym program~wannier wannier program~wannier->module~w90_sitesym program~wannier->module~w90_disentangle proc~wann_domega wann_domega proc~wann_domega->module~w90_sitesym proc~overlap_project overlap_project proc~overlap_project->module~w90_sitesym proc~wannier_run wannier_run proc~wannier_run->module~w90_disentangle

Contents


Variables

TypeVisibility AttributesNameInitial
integer, public, save:: nkptirr =9999
integer, public, save:: nsymmetry =9999
integer, public, allocatable, save:: kptsym(:,:)
integer, public, allocatable, save:: ir2ik(:)
integer, public, allocatable, save:: ik2ir(:)
complex(kind=dp), public, allocatable, save:: d_matrix_band(:,:,:,:)
complex(kind=dp), public, allocatable, save:: d_matrix_wann(:,:,:,:)

Subroutines

public subroutine sitesym_slim_d_matrix_band(lwindow_in)

Arguments

Type IntentOptional AttributesName
logical, intent(in), optional :: lwindow_in(num_bands,num_kpts)

public subroutine sitesym_replace_d_matrix_band()

Arguments

None

public subroutine sitesym_symmetrize_u_matrix(ndim, umat, lwindow_in)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ndim
complex(kind=dp), intent(inout) :: umat(ndim,num_wann,num_kpts)
logical, intent(in), optional :: lwindow_in(num_bands,num_kpts)

public subroutine sitesym_symmetrize_gradient(imode, grad)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: imode
complex(kind=dp), intent(inout) :: grad(num_wann,num_wann,num_kpts)

public subroutine sitesym_symmetrize_rotation(urot)

Arguments

Type IntentOptional AttributesName
complex(kind=dp), intent(inout) :: urot(num_wann,num_wann,num_kpts)

public subroutine sitesym_symmetrize_zmatrix(czmat, lwindow_in)

Arguments

Type IntentOptional AttributesName
complex(kind=dp), intent(inout) :: czmat(num_bands,num_bands,num_kpts)
logical, intent(in) :: lwindow_in(num_bands,num_kpts)

private subroutine symmetrize_ukirr(ir, ndim, umat, n)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ir
integer, intent(in) :: ndim
complex(kind=dp), intent(inout) :: umat(ndim,num_wann)
integer, intent(in), optional :: n

private subroutine orthogonalize_u(ndim, m, u, n)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ndim
integer, intent(in) :: m
complex(kind=dp), intent(inout) :: u(ndim,m)
integer, intent(in) :: n

public subroutine sitesym_dis_extract_symmetry(ik, n, zmat, lambda, umat)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: ik
integer, intent(in) :: n
complex(kind=dp), intent(in) :: zmat(num_bands,num_bands)
complex(kind=dp), intent(out) :: lambda(num_wann,num_wann)
complex(kind=dp), intent(inout) :: umat(num_bands,num_wann)

public subroutine sitesym_read()

Arguments

None

public subroutine sitesym_dealloc()

Arguments

None